Child pages
  • Follow Up Email - Magento 2
Skip to end of metadata
Go to start of metadata


Firefox user notice:

Please use different web browser to view this document.

Sorry for the inconvenience.

Follow Up Email for Magento 2

Magento 2 Follow Up Email organizes targeted email campaigns with customizable content and the A/B email testing tool. Store owners can define when emails should be sent by choosing among eight trigger events available. For more precise timing of each email, the module provides the email scheduling feature. By viewing email stats, merchants can evaluate the efficiency of individual campaigns and timely implement the necessary corrections to them.

Compatibility: Magento Open Source 2.1.X - 2.3.X, Magento Commerce 2.1.X - 2.3.X

Product Page

Thank you for choosing Aheadworks!

Installing Follow Up Email

Command Line Installation

1. Backup your web directory and store database

2. Download the Follow Up Email installation package

 3. Upload the contents of the Follow Up Email installation package to your store root directory

 4. In the SSH console of your server, navigate to your store root folder:

cd path_to_the_store_root_folder

run the following command:

php -f bin/magento module:enable Aheadworks_Followupemail


php -f bin/magento setup:upgrade


php -f bin/magento setup:static-content:deploy

5. Flush the store cache; log out from the backend and log in again


Make sure the installation is done from under the FTP administrator account. Otherwise make sure to set 775 permissions to the store root directory after the extension is deployed.

Composer Installation

1. Log in to your customer account at and navigate to Account -> Composer access;

2. Configure your store to work with the Aheadworks composer repository:

Add the composer repository to composer.json by running:

composer config repositories.aheadworks composer in the Magento installation root.

Use the provided key pair as a login and pass. You can optionally save them in the global composer auth file.

 3. You can start using AW composer now.

 For extension names, navigate to Account -> Composer access.

 4. Open the root Magento directory on your server and send Composer the following command:

composer require <component-name>:<version>

Note: Use the previously copied component name and version.

 5. Make sure that Composer finished the installation without errors. Flush the store cache, log out and log into the backend again.

Set up cron


If you have already configured cron jobs for your Magento installation, then you can skip this step. Read the following instructions on setting cron job for your Magento store: Magento user guide.

Generally it would be enough to run in the SSH console of your server: 



And insert the following line:  


Don't forget to confirm saving request when exit.


Reference Table

  • Email event – the general condition under which a follow-up is sent;
  • Event trigger – the action a customer takes to trigger an email event;
  • Email template – the body of the corresponding follow-up email;
  • Follow-up / Email – the message that is sent to the customer after the email event was triggered.

Introducing Follow Up Email

Magento 2 Follow Up Email is a smart email marketing solution that sends emails based on customer activity at the store:

  • Abandoned checkout;
  • Order status changed;
  • Customer registration;
  • Last customer activity;
  • Newsletter subscription;
  • Customer review submission;
  • Wishlist changes;
  • Customer birthday.

Extension Logic

The module offers eight event triggers for sending relevant emails ad hoc. Every event covers a particular aspect of the customer’s store activity: registration, placing orders, etc.

When the event is triggered, an email message is sent to the customer’s email address. You can create multiple email templates for a single event adjusting the email subject, body, and signature.

Each event email can be scheduled to fire at a specific time. For example, you might want to schedule the 'Abandoned Checkout' email to fire 30 minutes after a customer left a cart at your store or ask them for a product review two weeks after the order was shipped.

Backend Configuration

We advise you to start with the extension's configuration under Stores > Configuration > AHEADWORKS EXTENSIONS > Follow Up Email 2.

Extension Settings

The configuration screen is split into three sections: 'General', 'Mail Log', and 'Header and Footer'.

The 'General' section is represented with the following options:

  • Sender – the email sender of follow-ups;
  • Test Email Recipient – works in conjunction with the 'Enable Test Mode' option. If the latter is enabled, all test emails go to the defined recipient;
  • BCC Email Address(es) the email address(es) where BCC emails should be sent to;
  • Enable Test Mode – here you are suggested to enable the test mode of the extension.


Whenever a customer triggers a particular event (abandons a cart, places an order, etc.), the follow-up is sent to the test email recipient instead of the end customer. Thus, you can test out follow-ups without disturbing customers.

The 'Mail Log' section has a single option:

  • Keep Emails For, days – how long the extension will keep the mail history.

With the last section - 'Header and Footer' - you can separately define the header and footer templates for your follow-up emails. To indefinitely record email history, set the ‘0’ value in the field.


The 'Campaigns' page is the management center of the extension. Here you can monitor the performance stats of each particular campaign as well as manage campaigns one by one.

Campaigns Page

To edit the main campaign parameters, click on the 'Edit Campaign' active link above the corresponding campaign's stats.

'Edit Campaign' Option

You will be redirected to the campaign settings page.

Campaign Parameters

In the provided 'Edit Campaign' menu, you can:

  • Enable/disable the campaign;
  • Specify the campaign's name;
  • Provide the campaign's description;
  • Indicate the campaign's duration (start and end dates).

To save the applied changes, click at the top right of the page.

Besides editing the campaign, you can make its copy with all the previously configured parameters. For this purpose, click on the 'Duplicate' active link above the corresponding campaign's stats.

'Duplicate' Option

To delete a campaign, click on the 'Delete' active link above the corresponding campaign's stats.

'Delete' Option

To erase all the current campaign's performance data, click on the 'Reset Statistics' active link below the corresponding campaign's stats.

'Reset Statistics' Option

To create a new campaign, click at the top right of the 'Campaigns' page.

Now, let's proceed to the event management stage by clicking above the corresponding campaign's stats.


The 'Manage Events' page illustrates all the campaign-related events split by emails. Here you can view the stats separately for each email.

Manage Events Page

To view and manage the event parameters, click on the 'Edit Event' active link next to the corresponding event's title.

'Edit Event' Option

Event Main Parameters

From the 'Edit Event' menu, you can:

  • Enable/disable the event;
  • View the event's type (not editable);
  • Define the event's name;
  • Indicate the address(es) for BCC emails;
  • Decide whether to send newsletters to subscribers only.

Additionally, you can manipulate with email chain delivery settings by defining the logic for failed emails in chains.

Event Conditions

Event conditions precisely target campaign emails up to particular store views, customer groups (with particular lifetime sales), cart conditions, and product types.


How do conditions work?

For example, you set up the following conditions for the 'Abandoned Checkout' event:

  • Store view = Store #1;
  • Customer groups = General;
  • Subtotal equals or greater than $100;
  • The color of the item in the cart = red.

Under such conditions, the abandoned checkout follow-up will only be sent to the customer from the General group who added a red item with the price of at least $100 to the cart at the Store #1.

To duplicate the event with all the previously configured settings, click on the 'Duplicate' active link next to the corresponding event's title.

To move the event with all its options and related emails to another campaign, click on the 'Move to' active link next to the corresponding event's title.

Then you will be suggested to select the campaign where the event should be moved.

Event Moving

To delete the event, click on the 'Delete' active link next to the corresponding event's title.

'Delete' Option

To add a new email to the event, click next to the corresponding event's title.

'Add Email' Option

The emails in lists are presented in exactly the same order in which they will be sent. Use the drag & drop functionality to change the sending order of emails within the corresponding campaign (if required).

To edit a particular email, click on the appropriate email's name in the list of event emails.

Editing a Email

In the 'Edit Email' menu, you can enable/disable the email, provide its name, and pinpoint its timing.

Edit Email Menu

Besides the general settings, you can enable the A/B testing mode for your emails to experiment with different email versions. The provided stats indicate which version performs better.

If the A/B testing mode is disabled, you need to indicate the Primary Email to be sent.

Email Details Section

Thanks to the tools provided within the module, you can precisely determine the content of each email, including:

  • Sender name;
  • Sender email;
  • Email subject;
  • Email content;

  • Header/footer templates.

Besides, you can add variables to your email content, preview ready emails, and send them to test recipients.

Email Variables

For quick email composing, you can use the native Magento variables along with the ones introduced by the module.

To insert a variable, click above the main email content area. You will access the list of all supported variables.

Email Variables

To learn more about accessing objects in the emails follow the Magento documentation on how to customize email templates.

In addition to the standard "fixed" links, you can insert dynamic links into the emails (e.g., a link to the product a customer has purchased).

Using the standard Magento methods, you can include dynamic links to virtually any Magento frontend area. The approach is based on using the store directive (which returns if used) supplied with the URL postfix and optional parameters.

For example, you can insert a direct link to a product page (the store directive gives the base part, and the var gives the product ID you need):


Do not modify the line of the code above and do not insert your store's URL

In the similar fashion, you can insert the link to the product reviews page:

You can also create a link to the re-order page for the registered customers:

This link will work for any order-related rule and can be used e.g. for order failure notifications ("Order Obtained 'Cancelled' Status"), etc.

Using this approach, you can reproduce almost all the links used by Magento in its front-end part.


The availability of the given URL parameter depends on the type of the rule you use the template for. For instance, item.product_id can only be used for product-related events.

'for' Directive

Order, Cart, or Wishlist IIem Display

With the 'for' directive, you can 'walk' through any object collection that can be iterated (typically, it's intended to walk through the item collection of the Order, Cart, or Wishlist objects (depending on the current rule and the event context) ).

The directive syntax looks as follows:

Object_name is an item collection object that will be iterated (typically, an item collection of the Order, Cart, or Wishlist (depending on the rule context) ). Item parameter is the name of the object presenting the item inside of the iteration.

For example, if you want to list order items, then your code might look like this:

Formatting Values

The extension changes the representation of certain variable values. See below for details on the available formatting options

Price Values

The new formatPrice variable modifier formats the value given with the current store currency setting according to its locale. The usage of the formatPrice is quite simple:

Decimal Values

The new formatDecimal variable modifier formats the given value. The usage of the formatDecimal looks as follows:

The modifier accepts either zero, one, or three parameters (not two):

If no parameters are given, the number will be formatted without decimals, but with a comma (",") between every group of thousands.

If one parameter is given, the number will be formatted with decimals with a dot (".") in front, and a comma (",") between every group of thousands.

If three parameters are given, the number will be formatted with decimals, dec_point instead of a dot (".") before the decimals, and thousands_sep instead of a comma (",") between every group of thousands. Note that only the first character of thousands_sep is used.

Email Actions

From the 'Manage Events' page, you can perform particular actions with individual emails. For this purpose, expand the 'Select' box under the 'Actions' column.

Email Actions

If required, you can disable, duplicate, or delete individual emails in chains.

Email Trigger Events

To create a new event, expand the 'Create Event' box at the top right of the 'Manage Events' page.

Each event is responsible for a particular customer action at the store followed up by a corresponding email.


The emails are NOT retroactive. They cannot be sent for any customer activity/orders that take place prior to the application installation.

Currently, the Follow Up Email module offers a set of eight events:

Event name

Event background

Abandoned Checkout

This event sends email reminders to the customers who added any amount of products to their shopping cart and for some reason left it without a purchase

The shopping cart is considered abandoned an hour since the last customer's activity at the store, such as clicking links, browsing, etc.;

When creating an email for the event, consider the one hour delay. This time period after which the abandoned checkout email will be sent equals:

one hour + time scheduled

Order Status Changed



This event sends emails to customers upon any change in the order status

Under the conditions section, it is possible to define the order status(es) for the emails to fire

Customer Registration

This event sends emails to the newly registered customers

This event has no particular technical peculiarities that one should primary consider

Any Customer Activity


This event sends emails to the customers depending on their last visit to your store

This event works for all customer activities at your store: browsing pages, clicking links, placing orders, etc.

Newsletter SubscriptionThis event sends emails to the customers who subscribed to the newsletter at your store
When configuring the event conditions, you need to indicate only the general (store views) and customer-related (customer groups) ones
Customer Submitted a ReviewThis event fires emails to all those who submitted reviews
This event has no particular technical peculiarities that one should primary consider
Wishlist Content Has Been ChangedThis event sends emails to those customers who edited their wishlists
This event has no particular technical peculiarities that one should primary consider

Customer Birthday

This event sends birthday greetings to the store customers

Please pay close attention to the ‘Specify when email should be sent’ setting. With this event, you can define how many days/hours/minutes BEFORE the customer's birthday the email should be sent

Scheduled Emails

With the 'Scheduled emails' grid, you can manage automated email chains in one place.

Scheduled emails Grid

The data in the grid is split into the following columns:

  • ID - an id of a email;
  • Campaign - a campaign the email relates to;
  • Event Name - the name of the corresponding trigger event;
  • Email Name - the name of the email;
  • A/B Testing Mode - the column indicates whether the A/B testing mode is enabled for the email;
  • Recipient Name - the name of the recipient;
  • Recipient Email - the email address of the recipient;
  • Store View - the store view the email is assigned to;
  • Scheduled To - the date the email is scheduled to;
  • Actions - from this column, you can:
  1. Access the campaign settings of the selected chain;
  2. Cancel individual emails from chains;
  3. Cancel the selected chain;
  4. Immediately send the selected scheduled email.

With the 'Actions' box above the grid, you can perform the same actions (except for the first one) massively to the selected email(s).

Mail Log

The 'Mail Log' page is the place where the entire email sending history is stored.

Mail Log Grid

  • ID - an id of a email;
  • Campaign - a campaign the email relates to;
  • Event - the name of the corresponding trigger event;
  • Email Name - the name of the email;
  • A/B Testing Mode - the column indicates whether the A/B testing mode is enabled for the email;
  • Recipient Name - the name of the recipient;
  • Recipient Email - the email address of the recipient;
  • Subject - the subject of the email;
  • Sent At - the date when the email was sent;
  • Status - the status of the email;;
  • Actions - from this column, you can:
  1. Preview follow-ups;
  2. Delete follow-ups;
  3. Resend the previously sent follow-ups.

You can delete/resend follow-ups both individually and in bulk (via the 'Actions' box above the grid).

Product Page

Need Customization?

Magento 2 Custom Development Services by Aheadworks

You can always find the latest version of the software, full documentation, demos, screenshots, and reviews on
License agreement:
Contact Us:
Copyright © 2019 Aheadworks Co.

  • No labels