Edit Email Notifications Template

StoreFront mail notifications are designed to provide important information to customers and store owners. These notifications are built with the help of HTML tags and use special variables to display actual order information in emails.

The following provides a list of available variables and provides examples of their use.

Customizable email notifications are available in Venture and higher tier plans.

Variables for Customer Information

Name

Description

${customer.name}

Displays customer's name.

${customer.email}

Displays customer's email.

${customer.membership_name}

Displays customer group name.

${customer.membership+id}

Displays customer group ID.

Variables for Order Information

Name

Description

<#list order.items as orderItem> </#list>

Displays the list of ordered products.

${orderItem.name}

Displays the name of product.

${orderItem.sku}

Displays the SKU of product.

<#noescape>${orderItem.description} </#noescape>

Displays the product description.

${orderItem.customerUrl}

Calls URL of the product page.

${orderItem.imageUrl}

Displays the product image.

${orderItem.quantity}

Displays the quantity of ordered items.

${orderItem.price}

Displays the product price.

${orderItem.isShippingRequired}

Displays whether or not shipping is required.

${orderItem.weight}

Displays the weight of ordered item.

${orderItem.subtotal}

Displays the order item subtotal (item price x quantity of ordered items).

<#list orderItem.options as option> </#list>

Displays the list of options selected for the product.

${option.name}

Displays the option name.

${option.value}

Displays the amount of price modifier.

<#list orderItem.attributes as attribute> </#list>

Displays the list of hidden attributes set for the product.

${attribute.name}

Displays the hidden attribute title.

${attribute.value}

Displays the hidden attribute name.

<#list orderItem.visibleAttributes as visibleAttribute> </#list>

Displays the list of attributes set for the product.

${visibleAttribute.name}

Displays the attribute title.

${visibleAttribute.value}

Displays the attribute name.

<#list orderItem.files as file> </#list>

Displays the list of files attached to the product.

${file.description}

Displays the description of the file.

${file.fileName}

${file.name}

Displays the name of the file.

${file.type}

Displays the type of the file.

${file.size}

Displays the size of the file.

${file.url}

Adds a download link for the file.

${order.number}

Displays the number of the order.

${order.customerUrl}

Adds URL to the customer’s profile. Empty if order was made anonymously.

<@orderLink/>

Adds order number. If order was placed by registered customer, contains a URL to customer’s order history. If customer is not registered, order number will be displayed as plain text.

${order.adminUrl}

Adds a link to the order in Store Menu.

${order.dateCreated}

Displays the date of the order placement.

${order.paymentStatus}

Displays the current payment status of the order.

<@paymentStatusColor/>

Changes the color of ${order.paymentStatus} element depending on the status of the payment.

${order.subtotal}

Displays the order subtotal.

${order.total}

Displays the order total.

${order.shippingCost}

Displays the shipping rate for the order.

${order.weight}

Displays the total weight of ordered items.

<#list order.taxes as tax> </#list>

Displays a list of taxes applied to the order.

${tax.name}

Displays the name of the tax.

${tax.value}

Displays the value of the tax.

<#list order.discounts as discount> </#list>

Displays a list of the discount applied to the order.

${discount.name}

Displays the name of the discount.

${discount.value}

Displays the value of the discount.

${order.couponPercent}

Displays the percent of discount coupon applied to the order.

${order.couponName}

Displays the discount coupon name.

${order.couponCode}

Displays the discount coupon code.

${order.totalDiscount}

Displays the total value amount of discount applied to the order.

${order.isShippingRequired}

${order.shippingAddress}

Displays the whole shipping address for the order. It’s also possible to display each element of the shipping address separately.

${order.shippingAddress.name}

Displays the name of the customer.

${order.shippingAddress.companyName}

Displays the Company name specified in the shipping address

${order.shippingAddress.street}

Displays the street specified in the shipping address.

${order.shippingAddress.city}

Displays the city specified in the shipping address.

${order.shippingAddress.country}

Displays the country specified in the shipping address.

${order.shippingAddress.countryCode}

Displays the code of the country which is specified in customer's shipping address

${order.shippingAddress.postalCode}

Displays the postal (ZIP) code specified in the shipping address.

${order.shippingAddress.state}

Displays the state specified in the shipping address.

${order.shippingAddress.stateCode}

Displays the code of the state which is specified in customer's shipping address

${order.shippingAddress.phone}

Displays customer’s phone number.

${order.shippingAddress.province}

Displays the province specified in the shipping address.

${order.shippingAddress.provinceCode}

Displays the code of the province which is specified in customer's shipping address

${order.billingAddress}

Displays the whole billing address for the order. It’s also possible to display each element of the billing address separately.

${order.billingAddress.name}

Displays the name of the customer.

${order.billingAddress.companyName}

Displays the Company name specified in the billing address.

${order.billingAddress.street}

Displays the street specified in the billing address.

${order.billingAddress.city}

Displays the city specified in the billing address.

${order.billingAddress.country}

Displays the country specified in the billing address.

${order.billingAddress.countryCode}

Displays the code of the country which is specified in customer's billing address

${order.billingAddress.postalCode}

Displays the postal (ZIP) code specified in the billing address.

${order.billingAddress.state}

Displays the state specified in the billing address.

${order.billingAddress.stateCode}

Displays the code of the state which is specified in customer's shipping address

${order.billingAddress.phone}

Displays the phone number specified in the billing address.

${order.billingAddress.province}

Displays the province specified in the billing address.

${order.billingAddress.provinceCode}

Displays the code of the province which is specified in customer's shipping address

${order.pickupTime}

Displays the time of the pickup selected by a customer

${order.isPaid}

${order.paymentMethod}

Displays the Title “Payment method:” and the name of the payment method.

${order.PaymentMethod.isOnline}

${order.PaymentMethod.instructionsTitle}

Displays the title of the payment instructions.

${order.PaymentMethod.instructions}

Displays the content of payment instructions.

${order.PaymentMethod.name}

Displays the name of the payment method.

${order.orderComments}

Displays the order comments.

${order.privateAdminNotes}

Displays the staff order notes added by the store owner.

${order.isPaymentStatusUpdated}

${order.isFulfillmentStatusUpdated}

${order.fulfillmentStatus}

Displays the current fulfillment status of the order.

${order.trackingNumber}

Displays the order tracking number if enabled.

${order.trackingUrl}

Adds the URL of order tracking page for carrier-calculated shipping options.

${order.affiliateID}

Displays the affiliate ID of the order.

${order.extraFields}

<#list order.extraFields as extraField> </#list>

Displays the list of order extra fields.

${extraField.key}

Displays the extra field' key.

${extraField.value}

Displays the extra field's value.

${extraField.title}

Optional. Displays the extra field title.

${extraField.orderDisplaySection}

Optional. Displays the extra field's title.

${extraField.type}

Displays the extra field's type.

Variables for Products Information

Name

Description

${product.name}

Displays the product name.

${product.sku}

Displays the product SKU.

${product.quantity}

Displays the quantity of the product.

${product.adminUrl}

Displays the URL of the product page in Store Menu.

${product.customerUrl}

Adds the URL of the product page.

${product.imageUrl}

Displays the product image.

${product.warningLimit}

Displays the quantity of items in stock that triggers the "Low Stock Notification."

${product.options}

<#list product.options as option> </#list>

Displays the list of product options.

${option.name}

Displays the option name.

${option.value}

Displays the selected option’s value.

${product.attributes}

<#list product.attributes as attribute> </#list>

Displays the list of hidden attributes set for the product.

${attribute.name}

Displays the hidden attribute title.

${attribute.value}

Displays the hidden attribute name.

<#list product.visibleAttributes as visibleAttribute> </#list>

Displays the list of attributes set for the product.

${visibleAttribute.name}

Displays the attribute title.

${visibleAttribute.value}

Displays the attribute name.

Variables for Store Information

Name

Description

${store.id}

Displays the Store ID.

${store.name}

Displays the store name.

${store.logoUrl}

Calls the URL of the store logo.

<@storeLogo/>

Displays the store logo. If logo is not specified, displays the store name.

${store.storeUrl}

Calls the store front URL.

${store.companyEmail}

Displays the company email, which is specified in the store settings.

${store.customerOrdersPageUrl}

Calls the URL to the customer’s order history page.

<#list store.legalPages as page> </#list>

Displays the list of legal pages.

${page.name}

Display the name of certain legal page.

${page.url}

Calls the URL of the certain legal page.

<@legalPages/>

Displays the list of legal pages in single string.

${store.controlPanelUrl}

Adds the https://my.e-shop.com/cp/ URL to the message.

${store.egoodsLinkLifetime}

Displays the lifetime of E-goods link.

${store.egoodsMaxDownloadAttempts}

Displays the maximum quantity of download attempts for E-goods products.

${store.officeAddress}

Displays the physical address of the store which is specified in the store settings.

${store.resetPasswordUrl}

Adds a customer's password reset URL to the message.

${store.businessRegistrationID}

Displays store business registration (VAT) ID.

Variables for Brand Information

Name

Description

${brand.name}

Displays "Ecwid" brand name.

${brand.logoUrl}

Calls the URL of the logo.

Note

If an element contains a sub-element, the request will look like this: ${order.shippingAddress.city}

The list of elements can be specified using the following construction:

<#list order.items as orderItem>

${orderItem.name}

</#list>

Change the Order Confirmation Email

StoreFront provides default messages for paid and unpaid order confirmations to help keep your customers up to date.

Paid orders generate the following message:

Thank you for your ${store.name} store order!We will send you a notification email as soon as your package is shipped.

Unpaid orders (for example, offline payment methods) generate the following message:

Thank you for your ${store.name} store order!Your order on ${order.dateCreated} has been submitted and will be processed as soon as payment is received.

You can customize these messages to match the voice of your store using HTML.

The ${store.name} variable displays your store name in the message. You can place it in any part of the message.

Remove Company Phone Number from Order Confirmation Email

If provided, we add your company phone number to order confirmation emails by default. If you want to remove this line from your emails, delete the following line of code from your order confirmation templates:

<#if (store.officeAddress.phone)?has_content>

or call <b>${store.officeAddress.phone}</b></#if>

The ${store.officeAddress.phone} variable is responsible for displaying of the phone number in the email. If you remove this line from the template code, the phone number will not be displayed.

Use Order Extra Fields

Order extra fields allow you to save additional information to order. It can be visible or hidden from the customer.

Additional tools for working with order extra fields include two functions and an array of objects: getOrderExtraFieldValue("key"), getOrderExtraField("key"), order.extraFields.

Examples

Show all order extra fields set to be visible in order details (title and orderDisplaySection is specified):

<#list order.extraFields as extraField>

<#if extraField.title?has_content && extraField.orderDisplaySection?has_content>

${extraField.title}: ${extraField.value}

</#if>

</#lists>

Print value of a specific order extra field:

<#assign myExtraFieldValue = getOrderExtraFieldValue("askHowYouFoundUsApp")>

<#if myExtraFieldValue?has_content>

${myExtraFieldValue}

</#if>

Where askHowYouFoundUsApp is the key of your order extra field.

Print specific fields of a specific order extra field (remove fields you do not need to show):

<#assign myExtraField = getOrderExtraField("askHowYouFoundUsApp")>

${myExtraField.key}

${myExtraField.value}

${myExtraField.type}

${myExtraField.orderDisplaySection}

${myExtraField.title}

Where askHowYouFoundUsApp is the key of your order extra field.