Email Notifications - how to manage them

Modified on Sun, 18 Jul 2021 at 04:25 PM

This article is designed to help you know the full range of notifications that are sent out by your eRATEX storefront. For each notification, we will show you how to change the way it looks and, where appropriate, how to turn the notification on and off.


Let's start with a list of available notifications:



Notification
How is it managed?
Name of file?
Relevant settings
These notifications are typically useful during the shopping process
Lost passwordXML/HTML revisionsnotification.lostpassword.xml.config
New customer welcomeXML/HTML revisionsnotification.newmemberwelcome.xml SendWelcomeEmail
Email product to friendXML/HTML revisionsnotification.emailproduct.xmlShowEMailProductToFriend
Product rating changedTopicSee notes below
Gift card sent by emailXML/HTML revisionsnotification.emailgiftcard.xml
These notifications are typically useful between the placing and completing of an order
New order – notify AdminXML/HTML revisionsnotification.adminneworder.xml
SMS - New orderXML/HTML revisionsnotification.smsneworder.xml
Order decline - AdminXML/HTML revisionsnotification.adminorderdecline.xml
Order canceledXML/HTML revisionsnotification.ordercanceled.xml
Order refundedXML/HTML revisionsnotification.orderrefund.xml
Order updatedXML/HTML revisionsnotification.orderupdate.xml
Pre-order course updateXML/HTML revisionsnotification.preordercourseupdate.xml
Pre-order updateXML/HTML revisionsnotification.preorderupdate.xml
These notifications are typically sent after an order is completed
Pre-order receiptXML/HTML revisionsnotification.preorderreceipt.xml
Receipt
 (order confirmation)
XML/HTML revisionsnotification.receipt.xml
Receipt (using topic)Topic

Order shippedXML/HTML revisionsnotification.shipped.xml


*************************************************************************************** 


Lost password – respond to shopper's request

By default, this notification (email) will look similar to the image below. If yours looks otherwise, then it was probably already customized to some extent.


To modify this notification, you will need some level of experience with looking at code. You can use "FTP" to access your web server, where you will find a folder called XMLPackages. All of your notifications will be waiting there for your attention. 


The lost password notification file is called notification.lostpassword.xml.config. The HTML portion of the file looks like this. You will see some recognizable elements, such as the label names:


<html>

                    <head>

                        <title>

                            <xsl:value-of select="aspdnsf:AppConfig($StoreID, 'StoreName')" disable-output-escaping="yes" /> - Password Reset

                        </title>

                    </head>

                    <body>

                        <div class="password-reset-header">

                            <b>

                                <xsl:value-of select="aspdnsf:AppConfig($StoreID, 'StoreName')" disable-output-escaping="yes" /> - Password Reset

                            </b>

                        </div>

                        <div class="password-reset-main">

                            <xsl:if test="aspdnsf:StrTrim(/root/Customer/info/Fullname)!=''">

                                <xsl:value-of select="/root/Customer/info/Fullname" disable-output-escaping="yes" />, your

                            </xsl:if><xsl:if test="aspdnsf:StrTrim(/root/Customer/info/Fullname)=''">Your</xsl:if> password has been reset.  The new password is:

                        </div>

                        <div class="password-reset-password">

                            <xsl:value-of select="/root/Runtime/newpwd" disable-output-escaping="yes" />

                        </div>

                        <div class="password-reset-footer">

                            The next time you login you will be required to change this password.  Login <a href="{aspdnsf:BuildRoute('signin', 'account', '', 'true')}" target="_blank">here</a>

                        </div>

                    </body>

                </html>



***************************************************************************************


New customer – welcome customer

By default, this notification (email) will look similar to the image below. If yours looks otherwise, then it was probably already customized to some extent.



The new order notification file is called notification.adminneworder.xml. The HTML portion of the file looks like this. You will see some recognizable elements, such as the label names:


<html>

                    <head>

                        <link rel="rel" type="text/css" href="{$StyleURL}"></link>

                        <title>

                            <xsl:value-of select="aspdnsf:AppConfig($StoreID, 'StoreName')" disable-output-escaping="yes" />

                        </title>

                    </head>

                    <body>

                        Thank you for registering with &#0160;<xsl:value-of select="aspdnsf:AppConfig($StoreID, 'StoreName')" disable-output-escaping="yes" />.

                        To access your account and view order history click <a href="{aspdnsf:BuildRoute('index', 'account', '', 'true')}">here</a>

                    </body>

                </html>



***************************************************************************************


Email product details to a friend


By default, this notification (email) will look similar to the image below. If yours looks otherwise, then it was probably already customized to some extent.



Note: With eRATEX, you might, and might not, be showing "Email details of this product to a friend". You can enable/disable the feature using the setting called "ShowEmailProducttoFriend". Also, you can modify the message on the product page using PROMPTS.


Talking of Prompts, before you go to much trouble modifying the code for this notification, please note that there are almost FIFTY prompts related to this feature. We recommend that before you dig too deep, you navigate in your admin console to CONTENT>Manage Prompts and search for Name = "EmailProduct". You may find that all the changes you wish to make can be managed more easily that way.


To modify this notification, you will need some level of experience with looking at code. You can use "FTP" to access your web server, where you will find a folder called XMLPackages. All of your notifications will be waiting there for your attention. 


The 'email product' notification file is called notification.emailproduct.xml. The HTML portion of the file looks like this. You will see some recognizable elements, such as the label names:


<html>

                    <head>

                        <title>

                            <xsl:value-of select="aspdnsf:AppConfig($StoreID, 'StoreName')" disable-output-escaping="yes" /> - <xsl:value-of select="$FullProductName" disable-output-escaping="yes"/>

                        </title>

                    </head>

                    <body>

                        <xsl:value-of select="aspdnsf:StrFormatStringresource('emailproduct.from.address', $fromaddress, ',')" disable-output-escaping="yes" />

                        <p>

                            <b>

                                <xsl:value-of select="aspdnsf:StringResource('emailproduct.from.header')" disable-output-escaping="yes" />

                            </b>

                        </p>

                        <p>

                            <xsl:value-of select="$message" disable-output-escaping="yes"/>

                        </p>

                        <p>

                            <b>

                                <xsl:value-of select="aspdnsf:StrFormatStringresource('emailproduct.xmlpackage.invitation', $FullProductName, ',')" disable-output-escaping="yes" />

                            </b>

                        </p>

                        <p>

                            <xsl:value-of select="aspdnsf:StringResource('emailproduct.xmlpackage.clicktheurl')" disable-output-escaping="yes" />

                        </p>

                        <p>

                            <a href="{$URL}">

                                <xsl:value-of select="$URL" />

                            </a>

                        </p>

                        <a href="{$URL}">

                            <img border="0" id="ProductPic{/root/Products/Product/ProductID}" src="{aspdnsf:ProductImageUrl(/root/Products/Product/ProductID, /root/Products/Product/ImageFilenameOverride, /root/Products/Product/SKU, 'medium', 1)}" />

                        </a>

                        <p>

                            <xsl:value-of select="aspdnsf:AppConfig($StoreID, 'StoreName')" disable-output-escaping="yes" />

                            <a href="{/root/System/StoreUrl}">

                                <xsl:value-of select="/root/System/StoreUrl" />

                            </a>

                        </p>

                    </body>

                </html>



*************************************************************************************** 

Product Rating Changed - notify Admin


In the admin console, there is a topic called 'Email.Templates.ProductRatingAdminNotificationTemplate'. This can be found by navigating to CONTENT > Manage Topics.


By default, this notification will look similar to the image below. If yours looks otherwise, then it was probably already customized to some extent. 


There are two settings that will need changing (you can navigate to Configuration > Settings)


    Edition.Email.ProductRatingAdminNotification.SendTo

    Email.ProductRatingAdminNotificationTemplate


The default code in the topic looks like this. It is full of tokens, as you can see:


{{StoreName}} - New Rating for product {{ProductName}}
Customer {{CustomerFirstName}} {{CustomerLastName}} ({{CustomerEmail}}) rated product {{ProductName}}.They gave it {{StarRating}} stars and left the following comment:"{{RatingComment}}"
{{LinkToRating}}{{LinkToProduct}}



************************************************************************************** 


New order – notify Admin


By default, this notification (email) will look similar to the image below. If yours looks otherwise, then it was probably already customized to some extent.


To modify this notification, you will need some level of experience with looking at code. You can use "FTP" to access your web server, where you will find a folder called XMLPackages. All of your notifications will be waiting there for your attention. 


The new order notification file is called notification.adminneworder.xml. The HTML portion of the file looks like this. You will see some recognizable elements, such as the label names:


<html>

                    <head>

                        <title>New Order Notification</title>

                    </head>

                    <body>

                        <xsl:choose>

                            <xsl:when test="count(/root/OrderData/Data) > 0">

                                <b>Order Number:</b>

                                <xsl:value-of select="/root/OrderData/Data/OrderNumber" />

                                <br />

                                <b>Order Total:</b>

                                <xsl:value-of select="/root/OrderData/Data/OrderTotal" />

                                <br />

                                <b>Order Date:</b>

                                <xsl:value-of select="/root/OrderData/Data/OrderDate" />

                                <br />

                                <xsl:if test="number(OrderTotal)!=0">

                                    <b>Payment Method:</b>

                                    <xsl:value-of select="/root/OrderData/Data/PaymentMethod" />

                                    <br />

                                </xsl:if>

                                <b>Shipping Method:</b>

                                <xsl:value-of select="/root/OrderData/Data/ShippingMethod" />

                                <br />

                                <b>Customer ID:</b>

                                <xsl:value-of select="/root/OrderData/Data/CustomerID" />

                                <br />


                                <!--Build up a node with the info we'll need for the route -->

                                <xsl:variable name="OrderInfo">

                                    <param name="OrderNumber" value="{/root/OrderData/Data/OrderNumber}" />

                                    <param name="CustomerID" value="{/root/OrderData/Data/CustomerID}" />

                                </xsl:variable>

                                <a href="{aspdnsf:BuildRoute('index', 'receipt', msxsl:node-set($OrderInfo), 'true')}">View online receipt</a>

                                <br />

                            </xsl:when>

                            <xsl:otherwise>

                                <b>Order Number:&#160;</b>

                                999999

                                <br />

                                <b>Order Total:&#160;</b>

                                $0.00

                                <br />

                                <b>Order Date:&#160;</b>

                                <xsl:value-of select="/root/System/Date"/>&#160;<xsl:value-of select="/root/System/Time"/>

                                <br />

                                <b>Payment Method:&#160;</b>

                                CREDIT CARD

                                <br />

                                <b>Shipping Method:&#160;</b>

                                GROUND

                                <br />

                                <b>Customer ID:&#160;</b>

                                <xsl:value-of select="/root/System/CustomerID" />

                                <br />

                                <br />

                                <xsl:value-of select="aspdnsf:StringResource('mailingtest.aspx.2')"/>

                            </xsl:otherwise>

                        </xsl:choose>

                    </body>

                </html>


Always take a backup of these files before working on them. If you are comfortable with HTML, then you will see that you can change names, positioning, spacing etc. 


When you upload your modified XML file, it is sound practice to leave the unmodified version in the XMLPackages folder in the root of your web server. You will find that there is also a folder in Skins/{YourSkin}/XMLPackages and we recommend that you put your modified XML file into this secondary folder. The application knows to look in there first and will only use the default version if no other file is found.



***************************************************************************************


Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article