How Emarsys handles Shopify product availability data
Based on product availability data coming from Shopify, Emarsys considers a product variant available in any of the following cases:
Notes:
- A product is shown as available in Emarsys if a product variant is available.
- You can access the Inventory dialog when you manage your products.
- If the Track quantity checkbox is not selected (i.e. the
inventory_management
attribute is not set toshopify
).

- If both the Track quantity and Continue selling when out of stock checkboxes are selected (i.e. the
inventory_management
attribute is not set toshopify
and theinventory_policy
attribute is set tocontinue
).

- If only the Track quantity checkbox is selected (and the Continue selling when out of stock is not checked) and the value under Available is set to
> 0
(i.e. theinventory_management
attribute is not set toshopify
, theinventory_policy
attribute is set todeny
and the tracked quantity is greater than0
).

Personalizing your message content
As a Shopify user, besides having all the data stored in Emarsys available for personalizing your messages, you can also use the content coming directly from Shopify. Specifically, each Shopify event that triggers an Emarsys external event has a set of information attached to it, which you can add to your emails or other messages.
For a complete list of variables individual Shopify events pass to Emarsys, see the Shopify documentation.
To add such Shopify content to your emails, use Emarsys Scripting Language (ESL) placeholders in the body of your message with the following syntax:
{{ event.variable_name }}
Where variable_name is the name of the variable passed in the Shopify event JSON. When the message is sent, the placeholder will be replaced with the respective value from the JSON.
For example, to add the total discount and subtotal price values to your email triggered by the Shopify Order event you have to add the following placeholders to the HTML of your email:
{{ event.line_items[0].total_discount }}
{{ event.subtotal_price }}
Webhooks
You can also personalize your messages with the data included in the following webhook events:
To check the data included in a webhook response, visit the Webhook page and click View response under the specific event.
- Customer Registration
- Order
- Order by New Customer
- Order by Recurring Customer
- Fulfillments Created
- Fulfillments Updated
- Order Paid
- Order Cancelled
- Order Fulfilled
- Order Partially Fulfilled
- Order Updated
- Refund
Creating an Interactions program using the Shopify trigger
To create an Interactions program that is triggered by a Shopify event, proceed as follows:
1. Navigate to Automation > Automation Programs, click Create Program and select Behavior-focused journeys (Interactions).
2. Select the trigger Shopify event.

3. Double-click the Shopify event node and select the event that will trigger your program.

4. Add the required nodes to your program, test it and activate it when you are ready.
You can only make limited changes to Active programs. For more information, see Program status.
Emarsys nodes in Shopify Flow
You can use the following Emarsys nodes in your Shopify Flow programs to automate processes related to your store such as tagging your customers, sending reminders or most importantly increase customer engagement.
Main objectives:
You can use the Emarsys nodes in Shopify Flow programs, for example, to:
- Identify your promoters and detractors on post-purchase product reviews to evaluate customer satisfaction and to drive repeat purchases.
- Notify your customers that the price of the item they put on their wishlist has dropped.
- Notify your customers that previously unavailable items they put on their wishlist are back in stock.
- Remind your customers that items they put on their wishlist are waiting for them.
To add an Emarsys node to a Shopify workflow, proceed as follows:
1. In Shopify, click Apps in the menu on the left, then select Shopify Flow.

2. Choose an Emarsys node that you would like to add to your Shopify workflow.
Choose a node from the list below and follow the instructions in the corresponding section.
If you have any questions or need further assistance, please contact Emarsys Support.
Using the Emarsys Post-purchase good feedback in a Shopify Flow program
The Emarsys Post-purchase good feedback node triggers an event in Emarsys when a contact writes a review for a product in your store to improve customer satisfaction and drive repeat purchase.
To use it in a Shopify workflow, proceed as follows:
1. In Emarsys, navigate to Automation > Tactics and proceed as follows:
- Choose the Post-purchase feedback good product review Shopify Flow Tactic, then click Review Tactic and select Create Tactic.
- Choose the Post-purchase feedback bad product review Shopify Flow Tactic, then click Review Tactic and select Create Tactic.
If you don’t want to use the Post-purchase feedback bad product review (Shopify Flow) Tactic, then do not create that Tactic. In this case, don’t forget to remove the Post-purchase bad feedback node from your Shopify workflow.
2. In Shopify, click the Templates tab and search for the keyword Identify promoters and detractors after they post product reviews and select it from the drop-down.
3. Click Create workflow from template in the bottom right corner.

4. Click Edit workflow.

5. Copy the IDs of the Emarsys Post-purchase good feedback and Post-purchase bad feedback External events, then select the corresponding nodes in the Shopify workflow and paste their IDs into the respective External Event ID fields.
In Emarsys, you can check the ID of the External event on the Management > External Events page.

To create contacts who do not exist in Emarsys, check the Create contact if not exists in Emarsys checkbox. Consider the following:
- Emarsys cannot ensure that contacts will be created in Shopify first because the third-party app you are using affects this process. So, if you want to handle contacts (including customers and leads) in Emarsys regardless of whether they are processed in your Shopify store or not, check this checkbox.
- Emarsys cannot process External events for not existing users.
- Contacts will be created with only email addresses without opt-in data.

6. When you are ready click Save and activate your program by turning the toggle switch to On.

7. Swap the campaigns in your Tactic with your marketing materials, set the nodes as required and activate the program.
Using the Emarsys Post-purchase bad feedback node in a Shopify Flow program
The Emarsys Post-purchase bad feedback node triggers an event in Emarsys when a contact writes a review for a product in your store to turn a negative experience into a positive one and to drive a repeat purchase.
To use it in a Shopify workflow, proceed as follows:
1. In Emarsys, navigate to Automation > Tactics, select the Post-purchase bad product review Shopify Flow Tactic, then click Review Tactic and select Create Tactic.
2. Follow Steps 2-7 described in Using the Emarsys Post-purchase good feedback node in a Shopify Flow program.
Using the Emarsys Wishlist Price Drop node in a Shopify Flow program
The Emarsys Wishlist Price Drop node triggers an event in Emarsys to notify your customers that the price of some products they put on their wishlist has dropped.
To use it in a Shopify workflow, proceed as follows:
1. In Emarsys, navigate to Automation > Tactics, select the Wishlist price drop Shopify Flow Tactic, then click Review Tactic and select Create Tactic.
2. In Shopify, click the Templates tab and search for the keyword Notify customers that wishlist items are on sale and select it from the drop-down.
3. Click Create workflow from template in the bottom right corner.

4. Click Edit workflow.

5. Copy the ID of the Emarsys Wishlist Price Drop External event, then select the corresponding node in the Shopify workflow and paste the ID into the External Event ID field.
In Emarsys, you can check the ID of the External event on the Management > External Events page.

To create contacts who do not exist in Emarsys, check the Create contact if not exists in Emarsys checkbox. Consider the following:
- Emarsys cannot ensure that contacts will be created in Shopify first because the third-party app you are using affects this process. So, if you want to handle contacts (including customers and leads) in Emarsys regardless of whether they are processed in your Shopify store or not, check this checkbox.
- Emarsys cannot process External events for not existing users.
- Contacts will be created with only email addresses without opt-in data.

6. When you are ready click Save and activate your program by turning the toggle switch to On.

7. Swap the campaigns in your Tactic with your marketing materials, set the nodes as required and activate the program.
Using the Emarsys Wishlist Back in Stock node in a Shopify Flow program
The Emarsys Wishlist Back in Stock node triggers an event in Emarsys to notify your customers that some of the products they put on their wishlist are back in stock.
To use it in a Shopify workflow, proceed as follows:
1. In Emarsys, navigate to Automation > Tactics, select the Wishlist back in stock Shopify Flow Tactic, then click Review Tactic and select Create Tactic.
2. In Shopify, click the Templates tab and search for the keyword Notify customers that loved items are back in stock and select it from the drop-down.
3. Click Create workflow from template in the bottom right corner.

4. Click Edit workflow.

5. Copy the ID of the Emarsys Wishlist Back in Stock External event, then select the corresponding node in the Shopify workflow and paste the ID into the External Event ID field.
In Emarsys, you can check the ID of the External event on the Management > External Events page.

To create contacts who do not exist in Emarsys, check the Create contact if not exists in Emarsys checkbox. Consider the following:
- Emarsys cannot ensure that contacts will be created in Shopify first because the third-party app you are using affects this process. So, if you want to handle contacts (including customers and leads) in Emarsys regardless of whether they are processed in your Shopify store or not, check this checkbox.
- Emarsys cannot process External events for not existing users.
- Contacts will be created with only email addresses without opt-in data.

6. When you are ready click Save and activate your program by turning the toggle switch to On.

7. Swap the campaigns in your Tactic with your marketing materials, set the nodes as required and activate the program.
Using the Emarsys Wishlist Reminder in a Shopify Flow program
Please note that this Shopify Flow integration is only available for shops with the Wishlist Plus Premium plan or higher.
The Emarsys Wishlist Reminder node triggers an event in Emarsys to remind your customers that they put products on their wishlist.
To use it in a Shopify workflow, proceed as follows:
1. In Emarsys, navigate to Automation > Tactics, select the Wishlist reminder Shopify Flow Tactic, then click Review Tactic and select Create Tactic.
2. In Shopify, click the Templates tab and search for the keyword Remind customers that their wishlist items are waiting and select it from the drop-down.
3. Click Create workflow from template in the bottom right corner.

4. Click Edit workflow.

5. Copy the ID of the Emarsys Wishlist Reminder External event, then select the corresponding node in the Shopify workflow and paste the ID into the External Event ID field.
In Emarsys, you can check the ID of the External event on the Management > External Events page.

To create contacts who do not exist in Emarsys, check the Create contact if not exists in Emarsys checkbox. Consider the following:
- Emarsys cannot ensure that contacts will be created in Shopify first because the third-party app you are using affects this process. So, if you want to handle contacts (including customers and leads) in Emarsys regardless of whether they are processed in your Shopify store or not, check this checkbox.
- Emarsys cannot process External events for not existing users.
- Contacts will be created with only email addresses without opt-in data.

6. When you are ready click Save and activate your program by turning the toggle switch to On.

7. Swap the campaigns in your Tactic with your marketing materials, set the nodes as required and activate the program.
Using the Emarsys Set contact data node in a Shopify Flow program
By using the Emarsys Set contact data node, you can set the selected contact data field to a specific value.
Typical use cases
- Tagging premium customers:
- You can transfer your tags to Emarsys in real time. By using these tags, you can trigger Automation Center programs starting with the Data change node that provide these customers with special treatment. For example, you can send “Thanks for choosing us” emails or vouchers for the next purchase to these customers. You can also create Interactions programs that are triggered by Shopify events.
- You can also make special offers to your premium customers (e.g. by tagging the field
Customer Category: Premium
). For instance, you can use block targeting to provide them with extra offers or discounts that are visible only for that segment.
- Identifying fraud: You can tag a suspicious contact immediately as a fraudster (e.g. by tagging the field
Customer Risk: Fraud
) and by using exclude segments, these contacts will be excluded from all your campaigns. - You can also synchronize all customer-level tags with a single Emarsys field by using Field mapping. For more information, see Field matching and data synchronization.
To create a completely new program that uses the Emarsys Set contact data node, proceed as follows:
1. On the Shopify Flow page, click the Create workflow button in the top right corner.
3. Select an action that will be performed when the chosen trigger is called.
4. Configure the values of the corresponding action as required:
-
Customer Email - The email address of the contact. It is accessible through a template variable such as
{{ customer.email }}
. - Emarsys Contact Field ID - The ID of the contact field in Emarsys.
To find the ID of the contact field in Emarsys, proceed as follows:
- In Emarsys, navigate to the Management > Field Editor page.
- Search for the required field.
For more information on contact data fields, see Contact data fields - Overview.
- Value - The contact field will be set to the specified value.
For example:

5. When you are ready, click Save in the top right corner and activate your workflow by switching the toggle to On.

Using flexible Shopify events in Emarsys
The Emarsys Shopify plug-in supports flexible events triggered by Shopify Flow. The Emarsys Trigger External Event node triggers the selected External event in Emarsys.
To use flexible events in Emarsys, proceed as follows:
1. Create an event first in Emarsys, copy its ID and paste it into the External Event ID field of the Trigger External Event in Shopify Flow.

2. Set the email field (ideally from the template) as an identifier in the Email (optional) field.
3. To create contacts in the Emarsys contact database who were not part of your Shopify customer database, check the Create contact if not exists in Emarsys checkbox.
If you need further assistance, please contact Emarsys Support.
Shopify nodes in Emarsys
Shopify Create Contact node
You can create contacts in Shopify with the Shopify Create Contact node. This node is available in the Automation Center.
A typical use case
You can create contacts registering through Emarsys forms in your Web Channel campaigns in Shopify by using the Shopify Create Contact node.
Prerequisites
To use the Shopify Create Contact node, you need to:
- create a single or multiple Emarsys forms,
- embed it into your Web Channel campaign or Shopify Theme and
- activate your campaign.
Using the Shopify Create Contact node
To use the Shopify Create Contact node, proceed as follows:
1. Create an Automation Center program starting with the Form entry node or use the Lead Acquisition (Shopify) Tactic.
2. Double-click the Form node and select the required form.
3. Add the Shopify Create Contact node to your program.
This node is designed for ad hoc transactional contact creation only. If you use it with entry nodes processing large amount of contacts (e.g. On auto-import or Recurring filter node), then it might cause errors or even block synchronization or your Plug-in.
Notes:
- The node will create contacts only if they have not existed in Shopify.
- Emarsys synchronizes the contact’s email address, first name, last name and opt-in data (these pieces of data are synced between Emarsys and Shopify and backwards in near real time.
- If you need further contact data, then you have to create the contact in Shopify first (e.g. profile update or specifying the date of birth, etc.).
You can test your program by registering new contacts manually.
This is how a simple program including the Shopify Create Contact node looks like:
