Editing Email Notification Templates

Basic email template customization can be made from your Stire management for all templates at once:adding a logo, changing the sender’s name, or updating store info. Advanced notification editing will require editing templates to make individual changes, e.g., remove or add text, change text formatting or color, add image, etc.

List of Notifications You Can Edit

There are three types of automated email notifications in your store: customer order notifications, marketing emails, and admin notifications. All emails can be customized either through Store settings or code.

Here’s the list of email templates that you can adjust:

Customer order notifications

  • Order confirmation
  • Order status changed
  • Order shipped
  • Order is ready for pickup
  • Download e-goods
  • Gift card purchased
  • Order refunded (Lightspeed Payments only)
  • Customer subscription notifications (for recurring subscriptions only)

Customer marketing emails

  • Favorite products reminder
  • Abandoned cart recovery
  • Feedback request
  • Loyalty appreciation
  • Inactive customer reminder
  • Purchase anniversary

Admin notifications

  • New order placed
  • Low stock notification

Understanding Email Templates

Any further edits in your email notifications will require editing the template of a particular notification. This way, you can add custom messages or customize notifications in any other way, e.g., remove or add blocks, change text formatting and color, etc.

Each admin or customer email notification has its own template. When an email is sent, the email template is filled in with the info from your store settings (store name, contact info, store link, etc.) and from the order details (customer’s name, shipping address, list of products bought, etc.) Thus, each email sent from your store is individual and contains information about a particular order and customer.

If you go to Settings → Notifications and click Order Confirmation (or any other notification), you will see a default order confirmation email template:

You can click the Preview template link in the top left corner to see a sample email. Every part of the code in the template is responsible for a specific part of this email.

Changing the design and the layout of the template will require some knowledge of HTML and Freemarker, but you can make small changes in the text even without that. Let’s dive deep into understanding the different parts of an email template and how to edit them: message keys (also known as rosetta keys), variables, and markups.

Message keys

If you open any email in Settings → Notifications for editing, you will see that there are actually no texts in the template. Instead, you can see such text labels as <@rosetta.message key="OrderConfirmation.title" /><@rosetta.message key="OrderConfirmation.payment_status" />, etc. When an actual email is sent, these rosetta message keys are replaced with texts. You can see an email with default texts if you click Preview template.

To add a custom text instead of the default one, you need to find the necessary rosetta label (its name is usually self-explanatory) and replace the whole rosetta label with your text, then preview the result and save the changes.

For example, to replace the default “Thanks for shopping with us!” text at the bottom of your order confirmation email, you need to find <@rosetta.message key="OrderConfirmation.thanks" /> and replace it with your text (e.g., “Thank you for your purchase!”):

This is how the new signature might look:

Here is a list of rosetta keys for the order confirmation emails (with corresponding texts):

Rosetta key Text in the notification
@rosetta.message key="OrderConfirmation.title" Order Confirmation
@rosetta.message key="OrderConfirmation.customer_greeting" params={ "customerName": customer.name } Hello, customer name
@rosetta.message key="OrderConfirmation.Confirmation.paid_order" params={ "storeName": store.name, "dateCreated": order.dateCreated } We have received your order! Thank you for your purchase.(for paid orders)
@rosetta.message key="OrderConfirmation.Confirmation.unpaid_order" params={ "storeName": store.name, "dateCreated": order.dateCreated} We have received your order! Thank you for your purchase.(for unpaid orders)
@rosetta.message key="OrderConfirmation.order_number" params={ "number": order.number } Order #
@rosetta.message key="OrderConfirmation.payment_status" Payment status
@rosetta.message key="OrderConfirmation.fulfillment_status" Fulfillment status
@rosetta.message key="OrderConfirmation.Shipping.address_prefix" We will deliver your order to
@rosetta.message key="OrderConfirmation.Shipping.phone" params={ "phone": order.shippingAddress.phone } phone number
@rosetta.message key="OrderConfirmation.Shipping.method" Shipping method
@rosetta.message key="OrderConfirmation.your_order" Your order
@rosetta.message key="OrderConfirmation.sku" params={ "sku": orderItem.sku } SKUs
@rosetta.message key="OrderConfirmation.Summary.items" Items
@rosetta.message key="OrderConfirmation.Summary.shipping" Shipping
@rosetta.message key="OrderConfirmation.Summary.total" Total
@rosetta.message key="OrderConfirmation.order_comments" Order Comments
@rosetta.message key="OrderConfirmation.thanks" Thanks for shopping with us!
@rosetta.message key="OrderConfirmation.OrdersHistory.link_text" Order History Page
@rosetta.message key="OrderConfirmation.OrdersHistory.content" params={ "history_link": historyLink } You can check the status of your orders at any time on our Orders History Page
@rosetta.message key="OrderConfirmation.Help.content" params={ "contact_info_text": contactInfoText } We welcome you to our store anytime. If you need assistance or have any questions, please email us at (email address). We are happy to help!
@rosetta.message key="OrderConfirmation.signature" Sincerely,

If you don’t see the rosetta key you need for your notification in the table, try replacing this key with a test text, then click Preview template to see where the changes took place. This way, you will know what text the key is responsible for. The names of the keys also usually suggest it. You can always turn the template back to the default state afterward by clicking Revert to default.

You can delete some of the rosetta keys if you don’t want to display this information in the email notification.

Variables

Variables are placeholders that are replaced in the email with the actual information from either the order details (customer’s name, list of products, etc.) or from the store info (store name, contact info, etc.).

For example, you can see variables like ${store.name} or ${customer.name} in your email templates. As you can guess by their names, they will be replaced in the notifications with the store name taken from your store profile settings and with the customer’s name taken from the order details.

See the list of variables used in the email templates. You can delete some of the variables if you don’t want to display this information in the email notification or replace them with custom text. You can also edit or add variables that are supported in emails.

For example, if you want to show another company address in emails (not the one that you specified in your store profile), you can replace the ${store.officeAddress} variable with the address that you want to show in emails by adding the latter as plain text. Or, if you're replacing a rosetta message key with some text of your own, you can include a variable as part of this text.

Markup

The text in blue, green, and red in your templates is called markup. These are rules that tell the email client how to display the text in the email: font color, size, padding, etc. You can change the markup rules if you want to change the layout and the design of your email.

Note: Texts in grey, like <!-- Signature : start --> and <!-- Signature : end --> will help you navigate the template. This way, you can find the rosetta keys and variables you need faster.

Editing notification template

To edit a particular email notification, you need to make changes to its template. Online Store uses Freemarker in templates to replace variables with actual values and for their conditional rendering, while HTML tags define the structure of the email templates and how they look in the inboxes.

To edit an email template:

  1. From Store management, go to Settings → Notifications.
  2. Click Edit next to the template you want to change.
  3. In the HTML template, make changes.
  4. Before saving, click the Preview template link on top to see what the email will look like.If you see a blank page in a preview, it most likely means that the template code was broken (some tags were accidentally deleted). If you see this, click the Revert to default link to go back to the default template and try making your changes again.
  5. If you don’t like the result, click the Revert to default link at the bottom of the template to restore the default email template.If you are making changes to a template that you previously customized and saved, the “Revert to default” option won’t work as it will revert to the original template. To back up your template, copy the code and save it as a text file on your computer. If something goes wrong, you can paste the code from the file back to the template.
  6. Once you are satisfied with the result, click Save.

Once you save changes, your email template will be updated.