This article lists all the triggers, Channel and Action nodes available in the Interactions.
Triggers
Web Extend event
By using this trigger, you can respond to your customers' behavior observed on your website.
You can choose from the following default Web Extend events by double-clicking the Web Extend event trigger:
- Purchased event
- Viewed product page event
- Viewed category list event
- Updated cart event
Only logged-in contacts can trigger Interactions programs starting with the Web Extend event trigger.
Custom Web Extend tags
Beside the default Web Extend events, you can also use custom tags that provide you with a wide range of solutions for addressing frequent customer concerns.
Custom tags are invalid if their tag.name
field is empty or longer than 1024 bytes.
Notes:
- The Emarsys event schema storage service stores only the last 200 unique events, including their structure and attributes, per data source (i.e. 200 unique Web Extend events, 200 unique Mobile events, etc.). This service is responsible for listing the available events and attributes in the respective drop-down selectors.
- It may happen that you cannot choose certain custom tags when you would like to select an event. One of the reasons for having too many events could be that you send unique events as tags, in this case, we recommend sending them as attributes. For example, if you have a direct link to the active cart, then we recommend sending a “
cart_link
” tag containing a “link
” attribute instead of unique names. Please note that the mentioned example does not refer to the Interactions abandoned cart use case which is triggered by theUpdated cart
event. - If an event or tag you would like to select is unavailable, then you may have exceeded the event limit (i.e. 200 events). In this case, please review and optimize the way you use custom tags. If you need to reset your event schema database, please contact Emarsys Support.
You can use custom tags for triggering programs, selecting them in Decision, Decision splitter and Wait for event nodes and personalizing your content with custom events and their attributes. To personalize content, you need to use the following syntax:
{{ event.tag.attributes.yourCustomAttribute }}
Default Web Extend events are listed under Default events in the drop-down, custom tags are listed under Tags.

Use cases and examples for custom Web Extend tags
- Abandoned cart campaigns - Using custom tags help you better understand the reasons why your customers abandoned their carts. For example, by using the
visited_checkout_page
tag containing the attributeshipping_cost
, you can check whether customers abandoned their carts due to the relatively high shipping costs. As a result, you can create abandoned cart campaigns that drive purchases by offering free shipping. Another possible scenario is that after navigating to the payment site, customers do not complete their purchases because they are not sure if they can pay safely on your site. In this case, you can reassure your customers that the available payment methods on your site are absolutely safe. - Abandoned check - out page campaigns
- Abandoned search campaigns
- Launch Web Channel campaigns based on custom website behavior - For instance, when a customer finished watching a video or started to download a white paper.
Total cart value attribute
The Total cart value attribute is available within the Updated cart and Purchased Web Extend events. You can use this attribute for:
- Fine-tuning incentives In abandoned cart campaigns.
- Sending special post purchase campaigns for orders above a specific value.
How is this attribute calculated?
We add up the price of all items in the cart multiplied by their quantity.
The Decision node in the following example targets only customers with a Total cart value of at least €300.
Adding product detail-specific conditions
You can define conditions using any product detail from your product catalog to fine-tune real-time engagements with your customers. For example, product detail-specific conditions come in handy when you would like to distinguish a brand (e.g. because different marketing guidelines apply to it) from another one, then you can create conditions based on product details instead of keeping all the exact item IDs in mind.
You can use product details when defining conditions for the following Web Extend events:
- Viewed product page
- Purchased
- Updated cart
The item IDs within the Web Extend events are matched with product details in the product catalog when Emarsys evaluates the decision definition. In the case of historical decisions (e.g. when filtering your contacts’ past purchases), Emarsys checks the most up-to-date details of the product instead of the attributes that reflect the item’s certain attributes (e.g. price) when the event was triggered in the past. For instance, when defining conditions based on the product’s price, you can use either the price attribute contained within the event that reflects the item’s price when the event happened or the current price.
FAQ
How can I differentiate attributes within the event from details in the product catalog?
The categories listed in the drop down help you distinguish attributes within the event from product details in the product catalog:
- Attributes within the event are listed under Single-value attributes.
- Product details in the product catalog are listed under Product data fields.
Which price attribute does Emarsys use for calculating the Total cart value?
Emarsys uses the price
attribute within the event for calculating the Total cart value attribute. The Total cart value reflects the state of the product when the event happened. You can also use this value for personalization.
How does Emarsys handle fields such as category and brand?
Fields such as category
and brand
can have multiple values in the product catalog. Interactions merges these values into a single string and you can use contains-type searches without defining exact values (e.g. such fields might contain the pipeline character “|
”) with the following operators:
- contains
- contains any of
- contains all of
- contains none of
For example, if you would like to search for sessions where visitors browsed a pair of jeans on sale, you need to configure your Decision node as follows:
Use cases
Sending different campaigns to contacts interested in a specific brand:
Suppose that you have multiple brands and different incentive guidelines apply to a particular brand. Incentives are often used in abandoned use cases or post-purchase campaigns. In such cases, you can check whether or not customers have added at least one item that belongs to a specific brand. Contacts will continue their journey as follows:
- Those who meet this condition continue their journey on the Yes path and receive a special campaign.
- Those who do not meet this condition continue their journey on the No path and receive another campaign.
This is how the Decision splitter node used in this program looks like:
Sending real-time Web Channel or in-app messages to contacts who browsed highlighted categories (cross-sell):
Suppose that you would like to send a Web Channel campaign to promote your leather care product line to contacts who browsed an item that belongs to the leather category. In this case, the Decision node looks like as follows:
Mobile event
By using this trigger, you can respond to your customers' behavior observed in your mobile applications. As a prerequisite, you need to have an up-and-running Mobile Engage implementation.
You can select a resource by double-clicking the Mobile event trigger node.
- If you have multiple apps using the same event, then that event will be listed in this node only once and it will trigger the program regardless of which app it was coming from.
- Unidentified contacts can also trigger Interactions programs starting with the Mobile event trigger. Although Emarsys stores data related to these contacts; however, data associated with unidentified contacts will not be merged even if a contact becomes identified.
You can check the last 20 SDK events on the Mobile Engage > Apps tab by clicking the SDK Events icon.
External event
By using this trigger, you can respond to your custom API events.
You can select a resource by double-clicking the External event trigger node.
You can filter External events based on the time when they were received by Interactions with the ems_event_time
attribute.
Wishlist event
If you would like to use the Wishlist event, please contact your Client Success Manager.
You can respond to your contacts’ wishlist updates with the Wishlist event. For more information on Wishlist use cases, see Interactions - Wishlist event trigger.
To use this trigger, double-click it and select the Updated wishlist trigger event.

Personalizing your content with product attributes
To personalize your content with product attributes, follow the instructions in Personalize your content with product attributes with the following exceptions:
- On the Product Source Settings dialog, select the Wishlist confirmation Product set.
- It is important to set the Include products added to the wishlist variable to the same value as your program’s Wait node.

Channel nodes
CRM Ads
- To use the CRM Ads channel, CRM Ads needs to be activated on your account.
- There is a 1-hour delay before the audience is synchronized between Interactions and CRM Ads to make sure that Emarsys is aligned with certain limitations (e.g. according to a Facebook requirement, the audience should contain a minimum of 1000 contacts).
- You can add multiple CRM Ads - add and remove nodes to a program depending on the specific use case (e.g. you would like to remove contacts from the CRM Ads audience after a Wait for a purchase event to reduce the costs of the ad). It is also possible to have a single CRM Ads - add and multiple remove nodes in a program if the CRM Ads - remove nodes use the same asset within the journey.
CRM Ads - add
This node adds contacts who pass through it to the selected CRM Ads audience.
You can select only CRM Ads campaigns if their asset type is Automation Center Audience.
CRM Ads - remove
This node removes contacts who pass through it from the selected CRM Ads audience.
You can select only CRM Ads campaigns if their asset type is Automation Center Audience.
Send email
In the Send email node, you can select an email that will be sent to contacts as soon as they arrive at the node.
Please consider the following when using Send email nodes:
- Interactions uses Triggered Email mail streams to send messages to your contacts.
- Triggered Email ignores the opt-in status of the contacts it sends to. If you would like to send emails to only those contacts whose opt-in status is
TRUE
, place a Decision node using the type Included in segment before the Send email node and set it accordingly. - To avoid reducing the efficiency of email deliverability, we recommend adding the Email valid Equal yes contact criteria to your segment used by the Decision node before the Send email node.
- You can only activate your program if the selected Triggered Email mail stream is activated and if its Trigger source is Interactions event.
- You can use the same Triggered Email mail stream in multiple programs or multiple times in the same program.

Mobile Engage push message
You will see this node if you are using the Mobile Engage channel. If you double-click this node, then you can select a push message which will be sent to contacts as soon as they arrive at this node.
You can select only Mobile Engage campaigns using the Automation Center recipient source in this node.

Update contact list
You can add contacts to or remove them from a contact list by using this node.
A typical use case
The Update contact list node may come in handy when, for example, you would like to save the customers who have downgraded their subscription plans and those who upgraded their plans into different contact lists. Later, you can use these contact lists to send special deals or a survey to the specific target audience. In this case, you can use the Update contact list node as follows:

The following options are available in the Update contact list node:

- Select or create a contact list - You can create a new contact list or select an already existing one. Contacts will be added to or removed from the selected contact list.
-
What to do with contacts arriving at this node?
- Add contacts to the contact list - Contacts will be added to the selected contact list.
- Remove contacts from the contact list - Contacts will be removed from the selected contact list.
Send SMS
You will see this node if you are using the SMS channel. If you double-click this node, you can select an SMS campaign that will be sent to contacts as soon as they arrive at this node.
You can select only SMS campaigns with the Using an Automation Center program recipient source in this node.
Web Channel
- To use the Web Channel - add and remove nodes, Web Channel has to be activated on your account.
- To use a Web Channel campaign in Interactions, select the Interactions recipient source.
Limitations:
- Personalization does not work for Interactions Web Channel campaigns.
- The status of Interactions programs and Web Channel campaigns are handled independently of each other. Therefore, it could happen that you have an active Interactions program with an inactive Web Channel campaign.
- If a contact enters an audience consecutively before it is removed first (i.e. the contact is still at the Wait node), then it can happen that it will be removed prematurely once it reaches the Web Channel - remove node. For example:
- 17.00.01 -
Viewed product page
event - 17.05.00 -
Viewed product page
event - In this case, the second event will be added to the audience around 17.05.00 and the first event will be removed from the audience at 17.05.01. So, the second event will be removed from the audience at the same time as the first one.
- 17.00.01 -
- Disabling a Web Channel node is not supported currently. Disabling a Web Channel node does not pause the related Web Channel campaign. To stop Web Channel campaigns from an Interactions program, remove each node from the program itself. If the Web Channel campaigns do not stop within 30 minutes, unpair campaigns with programs similarly as in AC programs.
You can react to the behavior of your website visitors by using the Web Channel - add and remove nodes.
Web Channel - add
This node adds contacts passing through it to the selected Web Channel campaign.
Web Channel - remove
This node removes contacts passing through it from the selected Web Channel campaign.
Mobile in-app
To use the Mobile in-app channel, you need to have the Mobile Engage Android SDK or iOS SDK.
You can react to certain behavioral patterns within your mobile application or share important moments with your customers by using the Mobile in-app channel. To mention a few examples, you can encourage your contacts to sign up for the trial period, congratulate them for their achievements, motivate them to push their limits, provide them with information that is relevant to their progress or ask for their opinion.
- To use a mobile in-app campaign in Interactions, select the Audience recipient source.
- The When should the campaign be triggered? scheduling settings of your in-app campaign determine when the campaign will be shown to your contacts.
- When configuring the frequency settings of your In-app campaign, please consider that these settings can stop an In-app campaign being shown to your contacts even if the campaign is part of an Interactions program.
If your in-app campaign's audience is a segment and a contact within the Interactions program reaches the Mobile in-app - add node, then this contact will be added to the audience even if they were not included in the original segment.
Mobile in-app - add
This node adds contacts who pass through it to the selected in-app campaign.
You can select only in-app messages that are activated and use the Audience recipient source.

Mobile in-app - remove
This node removes contacts who pass through it from the selected in-app campaign.
You can select only in-app messages that are activated and use the Audience recipient source.

Action nodes
Decision
By using this node, you can define conditions determining whether contacts will proceed along or will be excluded from your program.
You can configure the following settings in this node:
- Name - The name of the action taken by this node.
We recommend giving descriptive names to your programs.
- Type - The decision will be made based on the selected template. The available fields and parameters depend on the chosen type. The following types are available:
Messages not sent template
By using this type, you can determine how contacts will proceed along your program based on messages that have not been sent to them.
The following fields are available:
-
Channel - The message was sent through the selected channel. You can choose from the following options:
- Push
- SMS
- Message(s) - The message that was not sent to the contact. You can select a single or multiple messages.
Event happened template
By using this type, you can determine how your contacts will proceed along your program based on their past behavior.

The following fields are available:
Event - Here you can:
- Select the source of the event,
- Select an event,
- You can select only one event.
- To check the last 20 Mobile Engage events received, click the SDK Events icon next to the specific app on the Mobile Engage menu > Apps tab. You can see the attribute names in the Request column.
Attribute criteria - Contacts will continue the journey if their attributes match all the defined criteria.
- You can add a maximum of 20 attribute filters.
- When you are adding multiple attributes, they are linked by the AND operator.
Here you can specify the following values after clicking Add Condition:
- Attribute name - For more information, see Attributes.
- Operator - For more information, see Operators.
- Values
Values are case sensitive. Make sure that the required values are entered case-sensitively, otherwise those will not be recognized by the system.
- Add item conditions - You can add item conditions to your Attribute criteria if the selected event contains product lists (arrays). For more information, see Adding item conditions.
Additional criteria - Contacts will continue the journey if their events match these criteria. Here you can choose from the following options:
- Number of events - The event has to occur as many times as specified.
The upper limit of the event counter is 20.
- Sum of event attribute values - The sum of values related to the specific event attribute collected during the given Timeframe.
If you have selected a Mobile event, please always add the prefix event_attributes.
to the attribute's name, otherwise the specified attribute will be invalid.
Timeframe - The selected event occurred during the selected time period. You can specify the Timeframe by using the following options:
- In the last - the event happened in the last x days, hours or minutes.
- Between - the event happened between the specified interval.
- Since the trigger - the event happened since contacts have entered this program.
The Timeframe is limited to the last 90 days.
In the following example, we would like to filter for contacts who ran between 10-20 km in rain. Therefore, we have added the following attributes:

Event did not happen template
By using this type, you can determine how your contacts will proceed along your program based on events that did not happen to them.
The following fields are available:
Event - Here you can:
- Select the source of the event,
- Select a single or multiple events,
To check the last 20 Mobile Engage events received, click the SDK Events icon next to the specific app on the Mobile Engage menu > Apps tab. You can see the attribute names in the Request column.
Attribute criteria - Contacts will continue the journey if their attributes match all the defined criteria.
Notes:
- The Add attribute filter button is available only if you have added a single event.
- You can add a maximum of 20 attribute filters.
- When you are adding multiple attributes, they are linked by the AND operator.
Here you can specify the following values after clicking Add Condition:
- Attribute name - For more information, see Attributes.
- Operator - For more information, see Operators.
- Value
Values are case sensitive. Make sure that the required values are entered case-sensitively, otherwise those will not be recognized by the system.
- Add item conditions - You can add item conditions to your Attribute criteria if the selected event contains product lists (arrays). For more information, see Adding item conditions.
Additional criteria - Contacts will continue the journey if their events match these criteria. Here you can specify the Timeframe.
-
Timeframe - The selected event did not occur during the selected time period. You can specify the Timeframe by using the following options:
- In the last - the event did not happen in the last X days, hours or minutes.
- Between - the event did not happen between the specified interval.
- Since the trigger - the event has not happened since contacts have entered this program.
The Timeframe is limited to the last 90 days.
Trigger attributes template
By using this type, you can determine how your contacts will proceed along your program based on the content and details of the trigger event.
Here you specify the following values after clicking Add Condition:
- Attribute(s) - Your contacts will be filtered based on the selected attributes. For more information, see Attributes.
Notes:
- You can add a maximum of 20 attribute filters.
- When you are adding multiple attributes, they are linked by the AND operator.
- The available attributes of the selected Trigger event are listed in the drop-down if you click the Attribute field. You can enter attributes that you would like to use in the future manually.
- Operator - For more information, see Operators.
- Value
Values are case sensitive. Make sure that the required values are entered case-sensitively, otherwise those will not be recognized by the system.
- Add item conditions - You can add item conditions to your Attribute criteria if the selected event contains product lists (arrays). For more information, see Adding item conditions.
In the following example, the Decision node will target those contacts who:
- ran a maximum of 10 kilometers in rain,
- between 1 and 4 days ago.
Those contacts who do not meet these criteria will be excluded from the program.

Included in segment template
You can filter contacts based on whether they are part of a segment or not.
Please consider the following when using the type Incuded in segment:
- You can select only segments that contain exclusively Contact criteria.
- Contact criteria segments used in Interactions programs ignore contact list-based source lists. If you select a contact list as the source list for a contact criteria segment, then the returned results will be based on All users regardless of the chosen source list.
- To check whether your segment can be used in Interactions programs, open your segment by clicking the Edit button on the Contacts menu > Segments page and check the message displayed on the bottom of this page. You can select a segment if you see this message: "This segment is ready for use in Interactions programs."
Last time the event happened template
With the Last time the event happened template you can define conditions by checking whether events contained specific attributes when they were triggered the last time.
Use cases and examples
You can target customers who met the specified requirements when they triggered the event the last time by using this template. For example, you can reach contacts who fulfilled the following criteria when they triggered the specific event the last time:
- placed orders above €100 (in this case, customers who purchased something for 99 the last time will be filtered out).
- finished their running workout and ran at least 10 km (in this case, contacts who ran 9,5 km the last time will be filtered out).
How does it work?
The following example shows you how the Last time the event happened template works.
Suppose that we would like to target only those customers who ate chocolate ice cream the last time at an ice cream parlor.
Each time a customer adds an entry to their food log, we send the Mobile event called food_log_lunch_today
containing the following attributes:
food_type
food_taste
food_location
What is the difference between the Last time the event happened and Event happened templates?
Suppose that a customer:
- went to an ice cream parlor and ate chocolate ice cream on 1st May.
- ordered chocolate ice cream online and ate it at home on 14th May.
We would like to reach only those contacts who ate chocolate ice cream the last time at an ice cream parlor. To target them, we will use the event food_log_lunch_today
and the following attributes:
-
event_attributes.food_type
containsice_cream
-
event_attributes.food_taste
containschocolate
-
event_attributes.food_location
containsice_cream_shop
If we use the Event happened template, then it will find that the event triggered on 1st May meets the specified requirements, so the customer can continue their journey. However, it will lead to a false positive result because that is not the very last event triggered by this contact.
If we use the Last time the event happened template, then it will find that the last event does not fulfill the criteria, so this contact will be filtered out or continue their journey on the No branch.
To avoid having false positive results, it is important to define the conditions gradually. In this case, we have to be careful and check the location attribute only after finding the last event when the contact ate chocolate ice cream.
To make sure the Decision node returns exactly those events that we need, we have to define the conditions in two steps:
1. Configure the Decision node as follows:
a. Set the source to Mobile and select the event food_log_lunch_today
.
b. Add the following Event criteria by clicking Add Condition:
- event_attributes.food_type
contains ice_cream
- event_attributes.food_taste
contains chocolate

2. Add the following attribute to the Latest event criteria: event_attributes.food_location
contains ice_cream_shop
Here you can fine-tune the condition and answer a complex true or false question about the most recent multi-attribute defined event by adding further attributes. In the following example we selected the location attribute called event_attributes.food_location
.

Available fields
Event - Here you can specify the following values:
- Source - The trigger source.
- Event - The trigger event.
Event criteria - Contacts will continue the journey if they had an event matching all event criteria. If you add multiple attributes, they are linked by the AND operator. Here you can configure the following fields:
- Attribute - Events will be filtered based on the selected attributes. For more information, see Attributes.
- Operator - For more information, see Operators.
- Value
Values are case sensitive. Make sure that the required values are entered case-sensitively, otherwise those will not be recognized by the system.
- Add item conditions - You can add item conditions to your Event criteria if the selected event contains product lists (arrays). For more information, see Adding item conditions.
Latest event criteria - Contacts will continue the journey if their latest event matches these criteria. If you add multiple attributes, they are linked by the AND operator.
Adding item conditions
If you are using events that contain product lists (or any other data in an array), then item conditions may come in handy. You can create decisions processing each item in a product list to check whether any of them matches the defined condition. For example, Purchased and Updated cart Web Extend events contain such product lists. (Customers might add multiple products to their carts and purchase more than one item during a session.)
You can add item conditions to attribute criteria in the following Decision node templates:
Notes:
- Item conditions are available for all events containing arrays.
- Emarsys fully supports arrays on the first level. In the case of nested arrays, you can only specify the number of items contained within the array but you cannot define item conditions.
- When using Web Extend events, if the number of items contained within the list is defined, the
quantity
field of the items is not taken into account. In this case, different items in the list will be counted (e.g. product lists used in the Updated cart or Purchased event are usually counted with differentitem_id
attributes). - For more information on events containing item lists, see Purchase.
Use cases
This feature comes in handy, for example, when:
- You have an ongoing promotion for 4 exclusive items and you would like to see whether customers have purchased any of these products (based on their
item_id
attributes), so that you can send them an exclusive post-purchase campaign with tips and tricks. - You would like to know whether customers have added at least one item to their carts the price of which is over €100.
Defining item-specific conditions
Here you can see how item conditions work. In the following example, we would like to target customers who purchased more than two exclusive items in the last 30 days with the following conditions:
- the price of each product was over €60,
- the total cart value was over €300.
- Select the Event happened template in the Decision node.
- Choose the Web Extend source and the Purchase event, then click Add condition.
- Select Purchased items under Item lists (arrays).
- Select the contains more than or exactly operator and set it to
2
item(s).
Please take the following into consideration:
- Customers may purchase more items at the same time. These attribute criteria ensure that we will target only those events that were generated when customers purchased at least 2 items.
- Defining the number of items to be checked in the product list determines the number of items that should meet the specified conditions.
- To add further attributes of the purchased product to the attribute criteria, select the Add item conditions checkbox.
Items within the product list may also have attributes. A Purchased event may contain the following attributes:
item_id
quantity
price
- Define the products’
item_id
andprice
attributes.
- Add another condition:
- Select Total cart value under Single-value attributes,
- Choose the operator is more than or equals and set it to
300
.
- Specify the additional criteria as follows:
- Set the Number of events to more than or exactly
1
time(s) and - Set the Timeframe to In the last
30
days.
- Set the Number of events to more than or exactly
Please consider the following:
Suppose that a customer purchased five products last month in one session (i.e. one event) with a cart value of over €400. This customer bought one of the exclusive items we would like to promote and its price was €70. This customer does not fulfill the specified condition (i.e. Purchased item contains more than or exactly 2 items), so the contact cannot continue the journey.
Array-specific operators
Here you can see how array-specific operators work with the Updated cart Web Extend event.
In the examples below we will refer to the following case:
Suppose that a customer has added five items to the cart. Two products were more expensive than the others: each of them cost at least €60.
- contains exactly - The cart contains exactly 2 items and those have to meet the defined conditions. The customer mentioned in the example above has added 5 items to the cart, so they cannot continue the journey.
-
contains more than or exactly - The cart contains more than or exactly 2 items and those have to meet the defined conditions. The customer mentioned in the example above can continue the journey because they have added 5 items to the cart and the
price
attribute of 2 products matches the defined criteria.
- contains less than or exactly - The cart contains less than or exactly 2 items and two of them meet the defined conditions. The customer mentioned in the example above cannot continue the journey because they have added 5 products to the cart.
- does not contain any items - In this case, you cannot add item conditions (i.e. the cart should be empty). The customer mentioned in the example above cannot continue the journey because they have added 5 items to the cart.
- contains items that all match item conditions - In this case, each item (regardless of the number of products in the list) has to meet the defined criteria. The customer mentioned in the example above cannot continue the journey because they have added 5 items to the cart but only two of them match the item conditions (i.e. the price of each product is at least €60).
All you need to know about attributes and operators
Attributes
Please consider the following when using attributes:
- If you have selected a Mobile event, please always add the prefix
event_attributes.
to the attribute's name, otherwise the specified attribute will be invalid. For example,event_attributes.yourCustomAttribute
. - If you have selected a Mobile event and would like to filter contacts based on the time when an event happened, then use the
event_timestamp
attribute. - If you would like to personalize the content with details of your event, then enclose them as follows:
-
{{ event.yourCustomAttribute }}
, for example,{{ event.destination_city }}
- For campaigns using Mobile events, use the format
{{ event.event_attributes.yourCustomAttribute }}
, for example,{{ event.event_attributes.distance }}
-
- If you would like to send timestamp attributes to your custom Mobile or External events, then please consider that we use the ISO 8601 date format.
- All the available attributes of the selected event are listed in the drop-down if you click the attribute_name field. You can enter attributes that you would like to use in the future manually.
Operators
The recommended operators are automatically detected based on the attribute type. All the recommended operators that belong to the detected attribute types are listed if you click the Operator field. If you have entered an attribute manually, then all operators are listed in the drop-down.
Examples
The following examples show you how some of the operators work:
- between 1 and 5 - includes the values 1 and 5 as well,
- at most 10 - includes values that are smaller than or equal to 10,
- at least 5 - includes values that are greater than or equal to 5.
-
is one of the following (text)/is not one of the following (text) - the defined values should exactly match the values contained by the incoming events, as the underlying text operator is "equal" (i.e. the received value should be identical with the defined value) and not "contains". The listed values are linked by the OR operator. For example, if you expect to receive events with the attribute
weather
that could contain the attribute valuesheavy rains
andmostly sunny
, then the values specified in the Decision node have to be identical with those values. If you specify the valuesrain
orsunny
in the Decision node, then the incoming attribute valuesheavy rains
ormostly sunny
will not fulfil the conditions set by this node and as a result, this decision will not be taken as expected.
New text operators
You can search in text fields without knowing the exact value you are looking for with these text operators:
- contains any of
- contains all of
- contains none of
When using the operators is any of and is none of, you need to enter the exact values and the attributes have to match the specified conditions. On the other hand, when using the new text operators, you can search for attributes by specifying only a part of the value you are looking for.
You can use these operators, for example, if you have stores in many regions but you do not remember the exact name of the locations.
In the following, example the Decision node targets customers who are browsing your website using an Android or iOS mobile device:
Decision splitter
By using this node, you can split your program into separate paths that provide contacts with different types of treatment. Contacts will progress along the Yes or No path of your program based on whether or not they fulfill the criteria set in the Decision splitter node.
Please consider the following:
- If contacts’ attributes contain invalid or empty values, or data that does not meet the criteria set in the Decision split node, then these contacts will proceed along the No path of your program instead of being excluded from it. For example, if the criteria set in the Decision split node contain the attribute
event_attributes.distance
at least6
, then those contacts whose attribute values are invalid, empty or less than or equal to 5 will proceed along the No path of the program. To exclude contacts with empty attribute values from your program, use the - On the Program Summary page, those contacts who proceeded along the No path of the program because their attribute values were invalid or empty or contained data that did not meet the criteria set in the Decision split node will be counted as Continued.
To exclude contacts with empty attribute values from your program, use the operator is not empty when adding attributes.
You can configure the following settings in this node:
- Name - The name of the action taken by this node.
We recommend giving descriptive names to your Decision and Decision splitter nodes.
- Type - The decision will be made based on the selected type. The available fields and parameters depend on the chosen type. The following types are available:
A/B test
You can split a program into separate paths and experiment with differently scheduled Wait nodes, various contents or targeting by using this node.
How does it work?
Contacts are randomly assigned to each path according to the percentage value you set. Distribution takes place on a per node basis and is based on the unique identifier of contacts, which means that all events belonging to a single contact will follow the same path when they arrive at the A/B test node.
You can change the percentage value after you have activated the program but you cannot add or remove branches.
To prevent further contacts from entering a path, reduce the percentage value to 0.
Wait for event
You can schedule this node to wait for an event to occur within the specified timeframe and split your program into separate paths based on that. Those contacts who fulfilled the conditions will proceed along one path and those who do not meet the criteria will continue their journey on another one.
The following fields are available:
-
Event to wait for - Here you can:
- Select the source of the event and
- Select an event.
The selected event does not affect the original trigger event of your program. You can only use the original trigger event to define conditions applied by Decision or Decision splitter nodes using the type Trigger attributes and personalize content with the original trigger event's details.
- Timeout - The node will wait for the specific event to occur within the specified timeframe.
A contact will progress along the Yes path immediately when the selected event occurs, otherwise they will continue their journey on the timeout path after the specified time limit.
For example, the Wait for event node comes in handy when you sent a special offer to your customers that is valid only for 48 hours and after 36 hours you would like to send a reminder for those contacts who have not purchased anything yet. In this case, we have set the Wait for event node to wait for the Purchased
Web Extend event for 36 hours. As a result, customers who triggered the Purchased
event will continue their journey immediately on the Yes path, and contacts who did not trigger this event will progress along the timeout path after 36 hours. We can send them a reminder that the offer will expire by adding a Mobile Engage push message node to the timeout path.
Wait
When using the Wait node, you can specify the delay in seconds, minutes or hours before the next step is taken in the program.
Participation check
This node checks whether or not contacts are eligible to continue their journey in your program. Those contacts who fulfill the defined criteria will proceed along the Yes path, those who do not meet the conditions will be directed to the No path.
We recommend inserting the Participation check node right before your channel nodes (i.e. a Send email, Mobile Engage push message, Send SMS, Mobile in-app - add, custom node etc.)
Typical use cases
Refer-a-friend campaign
For example, you can use the Participation check node if you have a refer-a-friend campaign in which you would like to offer a more valuable incentive after the first friend of a contact joins the campaign and a less valuable incentive after another friend of the same contact joins the campaign.
Such a program would look like as follows:
In the example above, the Frequency of the Participation check node is set to Only once ever. As a result, the contact can only proceed along the Yes path when the event happens for the first time and this contact receives the 40% discount only once. Each time the contact triggers the same event again, the contact will be directed to the No branch and will receive the 20% discount.
Sending post-purchase vouchers
The Participation check node may come in handy if, for example, you have a delivery update program and you would like to send a voucher based on the value of the order with varying frequency after the purchased product is shipped.
Such a program would look like as follows:

In the example above, the Decision splitter node checks if the value of the order made by the customers is above or below 80€ and the Participation check node ensures that:
- Those contacts whose order exceeds that value will receive a 20€ voucher only once in every 2 months.
- Those contacts whose order value is below 80 will receive a 10€ voucher only once in every 3 months.
Using the same Participation check node settings in a single program
If you have a promotion that you would like to show your contacts who finished their workout under different circumstances, then you can use the same Participation check node settings within the same program. For example, let’s imagine that you would like to:
- Use the same trigger event in both cases but a different campaign will be displayed depending on the attributes.
- Advertise different products depending on the temperature for contacts:
- Who ran when the temperature was above 25 °C.
- Who ran when the temperature was below 10 °C.
- Display the campaign every 30 days regardless of the temperature.
Such a program would look like as follows:

This is how the Participation check node would look like:

Using the same Participation check node settings in multiple programs
You can use the same Participation check node settings in multiple programs in the following cases:
- Abandoned use cases: You can use the same Participation check settings in multiple programs to make sure that a contact receives only one abandoned campaign a week to avoid marketing fatigue or unsubscription. In this case, you can insert the same Participation check node (called Abandoned use cases in the example below) before the channel nodes in your abandoned browse, abandoned cart and abandoned checkout page campaigns. This is how such a Participation check node looks like:
- Sending a valuable voucher once in a month: You can use the same Participation check settings referring to the same limited audience in multiple programs to make sure that a contact can only receive one valuable voucher once in every 30 days.
- Back in stock and price drop campaigns: You can use the same Participation check settings in multiple programs to make sure that your contacts only receive either the back in stock or price drop campaign a week.
Configuring the Participation check node
Here you can see the following options:

- Frequency: You can define how often customers can proceed along your program. You can choose from the following options:
You can use multiple Participation check nodes with different Frequency settings in the same program.
◦ Only once ever - Contacts will be able to proceed along the Yes path of your program only once.
◦ If the following time has passed since this contact last proceeded along the Yes path - Contacts can proceed along the Yes path of your program again after the specified time period.
- If contacts reach the Participation check node again before the specified time period, the node will direct them to the No branch.
- The timeframe is limited to a maximum of 13 months.
- Make this check available in other programs - You can save your Participation check settings and the audience referred to by this node to make them available in other programs or you can use an already existing configuration. You can choose from the following options:
◦ To create a new Participation check, proceed as follows:
1. Switch the Make this check available in other programs toggle and select Create new from the drop-down.
2. Give it a name, then click OK.

◦ To use an already existing Participation check configuration, proceed as follows:
1. Switch the Make this check available in other programs toggle and select an existing Participation check you would like to use from the drop-down.
- If the Participation check settings are used in multiple programs, then these will be listed in the bottom of the pop-up window.
- To edit the configuration of an existing Participation check node, click the Edit button next to it. If you modify the settings of a Participation check node that is used in multiple active programs, then the same changes will be applied to those programs when you click Save & Apply.
2. Once you are ready, click OK.
If you would like to copy a program to change its structure but you would like to keep your restricted audience, then we recommend following the instructions below:
- Save the Participation check settings used in your outdated program.
- Create a new version of your program and use the saved Participation check settings.
- Activate the new program.
- Deactivate the outdated program.
Editing the Participation check node in active programs
You can only edit the Participation check node in active programs if you have previously activated the Make this check available in other programs switch. Otherwise, you can only edit the Participation check node after freezing your program.
You can modify the following settings in the Participation check node:
- You can change the Frequency from If the following time has passed since this contact last proceeded along the Yes path to Only once ever. In this case, the Interactions program stores the timestamp when the contact passed through the Yes branch the last time, so those contacts who have already proceeded along the Yes path cannot pass it through again if you set the Frequency to Only once ever.
- You can change the Frequency from Only once ever to If the following time has passed since this contact last proceeded along the Yes path. In this case, the Interactions program compares the current timestamp to the one that was saved when the contact passed through the Yes branch the last time (while the Frequency was set to Only once ever).
If, for example, a contact proceeded along the Yes path on July 4 when the Frequency was set to Only once ever, and you set it to If the following time has passed since this contact last proceeded along the Yes path after 7 days, then:
◦ A contact who proceeded along the Yes branch on July 4 can pass it through again on July 11.
◦ A contact who passed through the Yes branch on July 19, can only proceed along that path again on July 26.
Finish node

The Finish node is added to the last nodes automatically, so you don't have to add it to your program manually.