{"id":6434,"date":"2026-05-12T11:26:47","date_gmt":"2026-05-12T09:26:47","guid":{"rendered":"https:\/\/help.ino.cx\/?post_type=ht_kb&#038;p=6434"},"modified":"2026-05-12T11:26:47","modified_gmt":"2026-05-12T09:26:47","slug":"email-smart-routing-actions","status":"publish","type":"ht_kb","link":"https:\/\/help.ino.cx\/index.php\/help-center\/email-smart-routing-actions\/","title":{"rendered":"Email smart routing actions"},"content":{"rendered":"\n<figure class=\"wp-block-image alignright is-resized\"><img decoding=\"async\" src=\"https:\/\/help.ino.cx\/wp-content\/uploads\/2024\/09\/Smart-licence-needed-2.png\" alt=\"Smart licence needed\" style=\"width:250px\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><em>[Reading time: 17 minutes]<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Overview<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">An\u00a0<strong>email smart routing<\/strong>\u00a0is built as a tree of\u00a0<strong>actions<\/strong>. Each action performs a specific task \u2014 sending a message, transferring the email, branching on a value, distributing the interaction, calling a web service, etc. \u2014 and connects to one or more\u00a0<strong>output branches<\/strong>\u00a0that determine which action runs next.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"823\" height=\"1024\" src=\"https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-823x1024.png\" alt=\"\" class=\"wp-image-6394\" style=\"width:250px\" srcset=\"https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-823x1024.png 823w, https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-241x300.png 241w, https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-768x956.png 768w, https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-40x50.png 40w, https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-1235x1536.png 1235w, https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-48x60.png 48w, https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0-80x100.png 80w, https:\/\/help.ino.cx\/wp-content\/uploads\/2026\/04\/undraw_too-many-options_lpt0.png 1286w\" sizes=\"auto, (max-width: 823px) 100vw, 823px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">This article describes\u00a0<strong>all actions available in an email smart routing<\/strong>, grouped by category. For how to create and manage smart routings, see the\u00a0<em>Email smart routings<\/em>\u00a0article.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Prerequisites<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A\u00a0<strong>Smart<\/strong>\u00a0license.<\/li>\n\n\n\n<li>Access to the\u00a0<strong>Maker<\/strong>.<\/li>\n\n\n\n<li>An email smart routing in\u00a0<strong>development<\/strong>\u00a0(a production version cannot be edited).<\/li>\n\n\n\n<li>Depending on the actions used:\u00a0<strong>value tables<\/strong>,\u00a0<strong>variables<\/strong>,\u00a0<strong>distribution queues<\/strong>,\u00a0<strong>calendars<\/strong>,\u00a0<strong>databases<\/strong>,\u00a0<strong>CRM cards<\/strong>,\u00a0<strong>web services<\/strong>,\u00a0<strong>email\/SMS templates<\/strong>,\u00a0<strong>mailboxes<\/strong>, etc. pre-configured.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Common concepts<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Output branches<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Each action has one or more&nbsp;<strong>output branches<\/strong>&nbsp;(links). After the action runs, the smart routing continues along the branch matching the action&#8217;s result. The most frequent labels shown in the Maker are:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Label<\/th><th class=\"has-text-align-left\" data-align=\"left\">Meaning<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-left\" data-align=\"left\"><strong>OK<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">The action succeeded.<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\"><strong>Error<\/strong>&nbsp;\/&nbsp;<strong>Not OK<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">The action failed or returned a negative result.<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\"><strong>Reference not found<\/strong>&nbsp;\/&nbsp;<strong>Not found<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">A referenced item (queue, card, template, entry\u2026) could not be found.<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\"><strong>Link 1 \u2026 Link 10<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">Numbered branches used for multi-choice or load-sharing actions.<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\"><strong>By default<\/strong><\/td><td class=\"has-text-align-left\" data-align=\"left\">Fallback branch when no other condition matches.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">I know \/ I want<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Many actions offer an&nbsp;<strong>I know<\/strong>&nbsp;selector (sometimes labelled&nbsp;<strong>I want<\/strong>) that lets you choose how the target entity is identified. The two options offered are always specific to the entity manipulated by the action. For example:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For a queue:\u00a0<em>the queue<\/em>\u00a0or\u00a0<em>the queue reference<\/em>.<\/li>\n\n\n\n<li>For a calendar:\u00a0<em>the schedule<\/em>\u00a0or\u00a0<em>the schedule reference<\/em>.<\/li>\n\n\n\n<li>For an email template:\u00a0<em>the email template<\/em>\u00a0or\u00a0<em>the email template reference<\/em>.<\/li>\n\n\n\n<li>For a smart routing:\u00a0<em>the smart routing<\/em>\u00a0or\u00a0<em>the smart routing reference<\/em>. Etc.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The first option lets you pick the entity directly from a dropdown. The second option lets you provide a&nbsp;<strong>reference code<\/strong>&nbsp;(static or dynamic via a variable), useful when the target depends on a flow variable. A few actions add extra options on top of these two.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em><strong>Warning:<\/strong>&nbsp;If a referenced entity is deleted or its reference is changed, the action will no longer work.<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Variables in text fields<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Text inputs marked as &#8220;magic&#8221; accept dynamic references to flow&nbsp;<strong>variables<\/strong>&nbsp;(e.g. a value captured from the email subject\/body, a field returned from a database query, a CRM property). The variable is resolved at runtime.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Actions and action tree<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1.1. Start<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Entry point of the smart routing. Automatically created when a version is created and cannot be deleted. Every email entering the smart routing begins here.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong>&nbsp;none.<br><strong>Output branches:<\/strong>&nbsp;OK.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.2. Load sharing<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Randomly splits incoming traffic across up to 10 branches, according to configurable percentage weights. Useful for A\/B testing or progressively rolling out a new flow.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>The loads (the sum must be equal to 100)<\/strong>: 10 numeric inputs labelled\u00a0<em>Link load no. 1<\/em>\u00a0to\u00a0<em>Link load no. 10<\/em>. The total of all loads must equal 100.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Link 1, Link 2, \u2026 Link 10, No link.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.3. Add a checkpoint<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Tags the email with a qualification tag. Useful to mark a specific step in the flow, to filter statistics later, or to trigger conditional logic downstream.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the checkpoint<\/em>\u00a0or\u00a0<em>the checkpoint reference<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Reference not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.4. Pause<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Holds the flow for a configured duration before continuing to the next action.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Pause time (sec)<\/strong>: duration in seconds.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.5. Node<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Logical join \/ grouping point. Lets multiple upstream branches converge into a single downstream flow, or acts as a visual anchor to keep large trees readable.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong>&nbsp;none.<br><strong>Output branches:<\/strong>&nbsp;OK.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Email handling<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">2.1. Detection of the language<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Detects the language of the incoming email (subject and body) and branches accordingly. Useful to route emails to language-specific queues or smart routings.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong>&nbsp;none.<br><strong>Output branches:<\/strong>&nbsp;Spanish, English, Russian, Arabic, Portuguese, Japanese, French, German, Italian, Turkish, Polish, Ukranian, Croatian, Dutch, By default.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.2. Test an email priority<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Checks the priority flag set on the incoming email and branches accordingly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong>&nbsp;none.<br><strong>Output branches:<\/strong>&nbsp;High, Normal, Low, By default.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.3. Detect keywords<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Searches for configured keywords in the email subject and\/or body, and branches based on which group of keywords is matched. Each branch has its own list of keywords.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Search keywords in<\/strong>:\u00a0<em>The email body<\/em>,\u00a0<em>The email subject<\/em>, or\u00a0<em>The email subject and body<\/em>.<\/li>\n\n\n\n<li><strong>Keywords for link No. 1 \u2026 Keywords for link No. 10<\/strong>: list of keywords associated with each output branch. Keywords must be unique across all links.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Link 1, Link 2, \u2026 Link 10, Not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.4. Transfer the email<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Forwards the incoming email to one or more recipients. The transfer can be blind (the recipient does not see that it is a forward) or include forwarding context.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Mailbox<\/strong>: sender mailbox (with optional\u00a0<em>None<\/em>\u00a0value \u2014 if\u00a0<em>None<\/em>\u00a0is selected, the transfer is sent from\u00a0<code>no-reply@&lt;app domain><\/code>).<\/li>\n\n\n\n<li><strong>Transfer the email without modifying it<\/strong>: toggle.\u00a0<em>If enabled, no information about the transfer will be added (in the subject or the content).<\/em><\/li>\n\n\n\n<li><strong>TO<\/strong>,\u00a0<strong>CC<\/strong>,\u00a0<strong>BCC<\/strong>: recipients (emails or variables).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not OK.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.5. Email to a Salesforce Query<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Creates or updates a Salesforce Query from the email subject.&nbsp;<em>If the email subject does not contain an identifier of an already-existing Query, a new Salesforce Query is created. The Query identifier is then stored in the variable defined below.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>The CRM<\/em>\u00a0(Salesforce-integrated only) or\u00a0<em>The CRM reference<\/em>.<\/li>\n\n\n\n<li><strong>Variable<\/strong>\u00a0+\u00a0<strong>Field<\/strong>: target variable storing the Salesforce Query ID.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Sending<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">3.1. Send an email<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Sends a templated email from within the email flow. The send can be linked to the interaction (for tracking) or sent as a basic email.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the email template<\/em>\u00a0or\u00a0<em>the email template reference<\/em>.<\/li>\n\n\n\n<li><strong>Email template<\/strong>\u00a0(or template reference). When a template is selected, its\u00a0<strong>template variables<\/strong>\u00a0appear and must be filled in.<\/li>\n\n\n\n<li><strong>Type<\/strong>:\u00a0<em>Outgoing interaction<\/em>\u00a0(saves the send as an outgoing interaction) or\u00a0<em>Basic send<\/em>\u00a0(no outgoing interaction created).<\/li>\n\n\n\n<li>If\u00a0<em>Outgoing interaction<\/em>:\u00a0<strong>Distribution queue<\/strong>\u00a0(sender context).<\/li>\n\n\n\n<li>If\u00a0<em>Basic send<\/em>:\u00a0<strong>Mailbox<\/strong>\u00a0(sender context).<\/li>\n\n\n\n<li><strong>TO<\/strong>,\u00a0<strong>CC<\/strong>,\u00a0<strong>BCC<\/strong>: recipients.<\/li>\n\n\n\n<li><strong>Subject<\/strong>: overrides the template&#8217;s default subject if provided.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Partially sent, Reference not found, Error.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.2. Send a SMS<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Sends a templated SMS to the specified recipient.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the SMS template<\/em>\u00a0or\u00a0<em>the SMS template reference<\/em>.<\/li>\n\n\n\n<li><strong>SMS template<\/strong>\u00a0(or template reference). When a template is selected, its\u00a0<strong>template variables<\/strong>\u00a0appear and must be filled in.<\/li>\n\n\n\n<li><strong>Content<\/strong>: optional text that overrides the SMS template content.<\/li>\n\n\n\n<li><strong>Type<\/strong>:\u00a0<em>Outgoing interaction<\/em>\u00a0or\u00a0<em>Basic SMS send<\/em>.<\/li>\n\n\n\n<li><strong>SMS number<\/strong>: sender number.<\/li>\n\n\n\n<li><strong>Recipient<\/strong>: recipient phone number (variable supported).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error, Not mobile, Reference not found.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Distribution<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">4.1. Distribution to queue<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Routes the email to an ACD distribution queue (or queue group) so that an agent can take it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Distribution to<\/strong>:\u00a0<em>Queue<\/em>\u00a0or\u00a0<em>Queue group<\/em>.<\/li>\n\n\n\n<li><strong>I know<\/strong>:\n<ul class=\"wp-block-list\">\n<li>For a queue:\u00a0<em>the queue<\/em>\u00a0or\u00a0<em>the queue reference<\/em>.<\/li>\n\n\n\n<li>For a queue group:\u00a0<em>the distribution group<\/em>\u00a0or\u00a0<em>the distribution group reference<\/em>.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Prioritize<\/strong>: if enabled, the email is placed first in the queue.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Processed, Unprocessed, Reference not found, Overflow &#8211; No user, Overflow &#8211; Maximum estimated waiting time, Overflow &#8211; Maximum number of waiting interactions, Overflow, Dissuasion &#8211; Maximum wait time reached, Dissuasion &#8211; By the user, Dissuasion (all types).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4.2. Distribution to a smart routing<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Hands the email off to another email smart routing. The target smart routing picks up processing from its Start action.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the smart routing<\/em>\u00a0or\u00a0<em>the smart routing reference<\/em>. The target smart routing must use the same flow type and not be an end-of-interaction smart routing.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Not found, Maximum number of distributions to a smart routing reached.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4.3. Distribution to a user<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Assigns the email directly to a specific user \/ agent, bypassing the queue.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the user<\/em>,\u00a0<em>the user reference<\/em>, or\u00a0<em>I want to assign to the preferred agent<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error, No response, Reference not found.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Cases &amp; CRM<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">5.1. Associate the interaction with a case<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Retrieves an existing case using its reference and attaches it to the current email.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Reference of the case with which the interaction is associated<\/strong>: lookup value (variable supported).\u00a0<em>If the reference is not entered, the last case associated with this customer (out of the last 3) will be selected.<\/em><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.2. Dissociate the case from the interaction<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Detaches the case currently linked to the email. Useful when re-qualifying mid-flow.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong>&nbsp;none.<br><strong>Output branches:<\/strong>&nbsp;OK.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.3. Create a new case and associate it with the interaction<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Creates a new case of a given type and immediately attaches it to the email.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>New case title<\/strong>\u00a0(variable supported).<\/li>\n\n\n\n<li><strong>I know<\/strong>:\u00a0<em>the case type<\/em>\u00a0or\u00a0<em>the case type reference<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error, Not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.4. Modify a case<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Updates fields of an existing case identified by its reference.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Case reference<\/strong>: lookup value (variable supported).\u00a0<em>If no value is entered, the case linked to the workflow will be used.<\/em><\/li>\n\n\n\n<li><strong>Field 1 \u2026 Field N<\/strong>\u00a0(repeatable): each field combines a\u00a0<strong>Case fields<\/strong>\u00a0selector and a\u00a0<strong>New value<\/strong>\u00a0input.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error, Not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.5. Associate the interaction with a CRM card<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Searches for a customer-contact CRM card using field-based search assertions. The matching card is linked to the email.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CRM in which to search for the card<\/strong>: target customer-contact directory.<\/li>\n\n\n\n<li><strong>Create a new file if not found<\/strong>: optional toggle (disabled for integration-backed CRMs).<\/li>\n\n\n\n<li><strong>Confirm the test if<\/strong>:\u00a0<em>all the following assertions<\/em>\u00a0(AND) or\u00a0<em>at least one of the following assertions<\/em>\u00a0(OR).<\/li>\n\n\n\n<li><strong>Search assertions<\/strong>: list of\u00a0<em>CRM card field<\/em>\u00a0+\u00a0<em>value<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not OK, Not found, By default.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.6. Create a CRM card<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Creates a new customer-contact CRM card.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CRM in which to search for the card<\/strong>.<\/li>\n\n\n\n<li><strong>CRM card fields<\/strong>: list of\u00a0<em>CRM field<\/em>\u00a0+\u00a0<em>value<\/em>.<\/li>\n\n\n\n<li><strong>Associate the CRM card with the interaction<\/strong>: toggle to attach the newly created card to the current email.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.7. Associate the interaction with a CRM V2 card<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Retrieves a card via a configured CRM V2 scenario and attaches it to the email.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CRM in which to search for the card<\/strong>.<\/li>\n\n\n\n<li><strong>CRM scenario<\/strong>\u00a0(filtered by the chosen CRM). If a default scenario exists, it can be selected.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not OK, Not found, By default.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.8. Create a CRM V2 card<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Creates a new CRM V2 card for a given CRM and CRM object.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CRM<\/strong>\u00a0and\u00a0<strong>CRM object<\/strong>.<\/li>\n\n\n\n<li><strong>CRM card fields<\/strong>: list of\u00a0<em>CRM field<\/em>\u00a0+\u00a0<em>value<\/em>.<\/li>\n\n\n\n<li><strong>Associate the CRM card with the interaction<\/strong>: toggle.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5.9. Create a task<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Creates a task linked to the email, with configurable start and end dates. If the task type is Salesforce, the Salesforce ID is stored in a variable.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Task name<\/strong>\u00a0(variable supported).<\/li>\n\n\n\n<li><strong>Task category<\/strong>.<\/li>\n\n\n\n<li><strong>Task kind<\/strong>. If Salesforce:\u00a0<strong>Variable containing the Salesforce Query ID<\/strong>.<\/li>\n\n\n\n<li><strong>Date to start the task<\/strong>:\u00a0<em>Now<\/em>,\u00a0<em>At a later date<\/em>, or\u00a0<em>No start date<\/em>.<\/li>\n\n\n\n<li>If\u00a0<em>At a later date<\/em>:\u00a0<strong>Time interval<\/strong>\u00a0(numeric value) + interval kind (<em>Hours<\/em>,\u00a0<em>Days<\/em>,\u00a0<em>Weeks<\/em>,\u00a0<em>Months<\/em>).<\/li>\n\n\n\n<li><strong>Date on which the task must end<\/strong>:\u00a0<em>End postponed<\/em>\u00a0or\u00a0<em>No end date<\/em>.<\/li>\n\n\n\n<li>If\u00a0<em>End postponed<\/em>: same time interval \/ kind as above.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6. Data<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">6.1. Assign values to variables<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Writes one or more values into flow variables for later use.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Variable 1 \u2026 Variable N<\/strong>\u00a0(repeatable). Each block contains a\u00a0<strong>Variable<\/strong>\u00a0+\u00a0<strong>Field<\/strong>\u00a0selector and a\u00a0<strong>New value<\/strong>\u00a0input.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.2. Test a value(s)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Evaluates one or more conditions on variables and branches accordingly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Confirm the test if<\/strong>:\u00a0<em>all the following conditions are valid<\/em>\u00a0(AND) or\u00a0<em>at least one of the following conditions is valid<\/em>\u00a0(OR).<\/li>\n\n\n\n<li><strong>Condition 1 \u2026 Condition N<\/strong>\u00a0(repeatable). Each block contains:\n<ul class=\"wp-block-list\">\n<li><strong>Variable<\/strong>: a magic input referencing the value to test.<\/li>\n\n\n\n<li><strong>Operator<\/strong>: comparison operator (=, \u2260, \u2265, \u2264, contains, starts with, ends with,\u00a0<em>Exists<\/em>,\u00a0<em>Does not exist<\/em>,\u00a0<em>Is empty<\/em>,\u00a0<em>Is true<\/em>,\u00a0<em>Is false<\/em>,\u00a0<em>Is a date<\/em>,\u00a0<em>Is the morning<\/em>,\u00a0<em>Is the afternoon<\/em>,\u00a0<em>Is the weekend<\/em>,\u00a0<em>Is an odd week<\/em>,\u00a0<em>Is an even week<\/em>,\u00a0<em>Regular expression<\/em>).<\/li>\n\n\n\n<li><strong>Value<\/strong>: the comparison value (hidden for unary operators such as\u00a0<em>Exists<\/em>,\u00a0<em>Is empty<\/em>, etc.).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Yes, No, Error.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.3. Values table<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Looks up an input value in a values table and stores the returned value into a flow variable. Typically used for translation tables, mapping codes, or routing matrices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the values table<\/em>\u00a0or\u00a0<em>the values table reference<\/em>.<\/li>\n\n\n\n<li><strong>Correspondence reference<\/strong>: the lookup value (variable supported).<\/li>\n\n\n\n<li><strong>Variable in which to store the corresponding value<\/strong>: target\u00a0<strong>Variable<\/strong>\u00a0+\u00a0<strong>Field<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Reference not found, No value.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.4. Fill in the variables from a database<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Queries a custom database and stores retrieved field values into flow variables.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Database<\/strong>.<\/li>\n\n\n\n<li><strong>Select a conforming database entry<\/strong>:\u00a0<em>all the following assertions<\/em>\u00a0(AND) or\u00a0<em>at least one of the following assertions<\/em>\u00a0(OR).<\/li>\n\n\n\n<li><strong>Search assertions<\/strong>: list of\u00a0<em>Database column<\/em>\u00a0+\u00a0<em>value<\/em>.<\/li>\n\n\n\n<li><strong>Variable(s) in which to store the search result<\/strong>: list of\u00a0<em>Database column<\/em>\u00a0\u2192\u00a0<em>Variable<\/em>\u00a0+\u00a0<em>Field<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.5. Save values to a database<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Inserts a new row into a custom database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Database<\/strong>.<\/li>\n\n\n\n<li><strong>Fields<\/strong>: list of\u00a0<em>Database field<\/em>\u00a0+\u00a0<em>value<\/em>. Required fields are added automatically.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not OK.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.6. Modify the values of a database<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Finds rows in a custom database matching the search assertions and updates selected fields.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Database<\/strong>.<\/li>\n\n\n\n<li><strong>Modify&#8230;<\/strong>:\u00a0<em>Only the first value found<\/em>\u00a0or\u00a0<em>All values found<\/em>.<\/li>\n\n\n\n<li><strong>Search assertions<\/strong>: list of\u00a0<em>Database column<\/em>\u00a0+\u00a0<em>value<\/em>.<\/li>\n\n\n\n<li><strong>Fields to modify<\/strong>: list of\u00a0<em>Field to modify<\/em>\u00a0+\u00a0<em>new value<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Error, Column(s) not found, No value found, No modification.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.7. Date and time (retrieval and calculations)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Reads or computes a date and time value and stores it in a flow variable.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Reference the date and time<\/strong>:\u00a0<em>of the passage in the action<\/em>\u00a0(now) or\u00a0<em>from a variable<\/em>\u00a0(input date).<\/li>\n\n\n\n<li>If\u00a0<em>from a variable<\/em>:\u00a0<strong>Variable<\/strong>\u00a0input.<\/li>\n\n\n\n<li><strong>Operation on the date and time<\/strong>:\u00a0<em>none<\/em>,\u00a0<em>add<\/em>,\u00a0<em>subtract<\/em>, or\u00a0<em>set to<\/em>.<\/li>\n\n\n\n<li>For\u00a0<em>add<\/em>\u00a0\/\u00a0<em>subtract<\/em>:\u00a0<strong>Days<\/strong>,\u00a0<strong>Hours<\/strong>,\u00a0<strong>Minutes<\/strong>,\u00a0<strong>Seconds<\/strong>.<\/li>\n\n\n\n<li>For\u00a0<em>set to<\/em>: a toggle\u00a0<strong>Use the day of the week<\/strong>\u00a0switches between\u00a0<strong>Day of the month<\/strong>\u00a0and\u00a0<strong>Day of the week<\/strong>, then\u00a0<strong>Hours<\/strong>,\u00a0<strong>Minutes<\/strong>,\u00a0<strong>Seconds<\/strong>.<\/li>\n\n\n\n<li><strong>Result storage<\/strong>: target\u00a0<strong>Variable<\/strong>\u00a0+\u00a0<strong>Field<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not OK.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.8. Check the number of passages<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Increments a counter each time the email passes through the action, then branches depending on whether the counter is below or above the configured threshold. Useful for retry loops or capping the number of attempts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Maximum number of passages<\/strong>\u00a0<em>of interaction in this action<\/em>: numeric threshold.<\/li>\n\n\n\n<li><strong>Reset the counter to 0<\/strong>\u00a0<em>when the limit is reached<\/em>: optional toggle.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Less than or equal to, Greater.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6.9. Check Nth contact<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Branches based on how many previous contacts the customer has had over a configurable time window. Useful to recognize returning contacts or escalate repeat senders.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Time interval to be counted<\/strong>\u00a0(radio choices).<\/li>\n\n\n\n<li><strong>Value<\/strong>: number of days \/ period.<\/li>\n\n\n\n<li><strong>Link 1 \u2026 Link 10<\/strong>: 10 ordered numeric thresholds. The email takes the branch matching the closest threshold above the counted contacts.\u00a0<em>It is recommended to order them from smallest to largest (e.g. Link 1: 0, Link 2: 2, Link 3: 5).<\/em><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Link 1, Link 2, \u2026 Link 10, No link.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">7. Time and dates<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">7.1. Test a schedule<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Branches on whether the configured calendar is currently open or closed. Used to route out-of-hours emails to a different message or queue.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the schedule<\/em>\u00a0or\u00a0<em>the schedule reference<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Open, Closed, Not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">7.2. Test if it is an even or odd week<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Branches on whether the current ISO week number is even or odd. Typically used for bi-weekly routing schemes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong>&nbsp;none.<br><strong>Output branches:<\/strong>&nbsp;Even, Uneven.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">8. Interconnection<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">8.1. Web service<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Calls a configured external HTTP web service. In synchronous mode, response fields can be mapped into flow variables for downstream use.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Web service<\/strong>: target definition.<\/li>\n\n\n\n<li><strong>Request settings<\/strong>: input variables passed to the web service.<\/li>\n\n\n\n<li><strong>Synchronous<\/strong>: toggle. If enabled, the smart routing waits for the response before continuing.<\/li>\n\n\n\n<li>If synchronous:\u00a0<strong>Variables in which to store the web service return<\/strong>: list of\u00a0<em>response field<\/em>\u00a0\u2192\u00a0<em>Variable<\/em>\u00a0+\u00a0<em>Field<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not OK.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">9. Campaigns<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">These actions push a target into an outbound campaign \u2014 useful to schedule an outbound contact back after an email exchange. All three campaign actions share the same configuration model.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">9.1. Insert a target in a WhatsApp campaign<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Inserts a new target into a WhatsApp outbound campaign.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">9.2. Insert a target in a voice campaign<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Inserts a new target into a voice outbound campaign.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">9.3. Insert a target in the SMS campaign<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Inserts a new target into an SMS outbound campaign.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters (common):<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\n<ul class=\"wp-block-list\">\n<li>For a WhatsApp campaign:\u00a0<em>the WhatsApp campaign<\/em>\u00a0or\u00a0<em>the WhatsApp campaign reference<\/em>.<\/li>\n\n\n\n<li>For a voice campaign:\u00a0<em>the voice campaign<\/em>\u00a0or\u00a0<em>the voice campaign reference<\/em>.<\/li>\n\n\n\n<li>For an SMS campaign:\u00a0<em>the SMS campaign<\/em>\u00a0or\u00a0<em>the SMS campaign reference<\/em>.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Insert if duplicate<\/strong>: toggle to bypass duplicate detection.<\/li>\n\n\n\n<li><strong>Phone number<\/strong>: target phone number (variable supported).<\/li>\n\n\n\n<li><strong>Start date<\/strong>: optional.\u00a0<em>If not entered, the current date will be used.<\/em><\/li>\n\n\n\n<li><strong>Priority<\/strong>: variable or numeric value within the configured range.<\/li>\n\n\n\n<li><strong>Campaign target layout<\/strong>\u00a0(with optional\u00a0<em>None<\/em>\u00a0value).<\/li>\n\n\n\n<li><strong>Campaign target fields<\/strong>: dynamic list of fields driven by the chosen layout (typed accordingly).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Reference not found, Error, Duplication, Invalid number.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">10. Survey<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">10.1. Survey<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Attaches a survey to the email so that the customer is invited to answer it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>:\u00a0<em>the survey<\/em>\u00a0or\u00a0<em>the survey reference<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Reference not found, Error.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">11. Payment and billing<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">11.1. Search for invoice<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Looks up an invoice based on a customer-provided identifier (number, phone, customer ID, etc.) and stores the matching invoice in the&nbsp;<code>bill<\/code>&nbsp;flow variable for downstream actions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>\u00a0(custom set of options for invoice identification):\n<ul class=\"wp-block-list\">\n<li><em>the invoice number<\/em><\/li>\n\n\n\n<li><em>the invoice mobile phone number<\/em><\/li>\n\n\n\n<li><em>the invoice landline number<\/em><\/li>\n\n\n\n<li><em>the customer number of the invoice<\/em><\/li>\n\n\n\n<li><em>the invoice ID<\/em><\/li>\n\n\n\n<li><em>the email address of the invoice<\/em><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Value<\/strong>: the lookup value matching the chosen identifier (variable supported). The label adapts to the selected identifier.<\/li>\n\n\n\n<li><strong>If several invoices are found, select<\/strong>:\u00a0<em>the oldest<\/em>\u00a0or\u00a0<em>the most recent<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><em><strong>Note:<\/strong>&nbsp;The retrieved invoice is stored in the&nbsp;<code>bill<\/code>&nbsp;variable.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;OK, Not found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">11.2. Pay an invoice<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Triggers a payment flow for an existing invoice or for a custom amount, through a configured payment module. Depending on the channel chosen, the customer is invited to pay via SMS link, email link or directly within the smart routing (Ino Pay only).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Parameters:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Type<\/strong>:\u00a0<em>Invoice<\/em>\u00a0or\u00a0<em>Amount<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If&nbsp;<strong>Invoice<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>I know<\/strong>: same custom set of options as for\u00a0<em>Search for invoice<\/em>.<\/li>\n\n\n\n<li><strong>Value<\/strong>: lookup value (variable supported).<\/li>\n\n\n\n<li><strong>If several invoices are found, select<\/strong>:\u00a0<em>the oldest<\/em>\u00a0or\u00a0<em>the most recent<\/em>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If&nbsp;<strong>Amount<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Amount<\/strong>\u00a0(max 2 decimals).<\/li>\n\n\n\n<li><strong>Currency<\/strong>.<\/li>\n\n\n\n<li><strong>Invoice name<\/strong>.<\/li>\n\n\n\n<li><strong>Invoice reference<\/strong>.<\/li>\n\n\n\n<li><strong>Customer reference<\/strong>.<\/li>\n\n\n\n<li><strong>Comment<\/strong>.<\/li>\n\n\n\n<li><strong>Customized data<\/strong>.<\/li>\n\n\n\n<li><strong>Mobile phone number<\/strong>\u00a0(must include the country code).<\/li>\n\n\n\n<li><strong>Fixed phone number<\/strong>.<\/li>\n\n\n\n<li><strong>Email<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Common to both types:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Payment module<\/strong>\u00a0(filtered to internal, active or sandbox modules).<\/li>\n\n\n\n<li><strong>Mode<\/strong>:\u00a0<em>SMS<\/em>,\u00a0<em>Email<\/em>, or\u00a0<em>Smart routing<\/em>\u00a0(Smart routing mode only available for Ino Pay payment modules).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Output branches:<\/strong>&nbsp;Payment stopped, Bank transfer error, Invoice not found, Fraudulent payment, Failed payment, Payment error, Payment successful, Notification successfully sent.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[Reading time: 17 minutes] Overview An\u00a0email smart routing\u00a0is built as a tree of\u00a0actions. Each action performs a specific task \u2014 sending a message, transferring the email, branching on a value, distributing the interaction, calling a web service, etc. \u2014 and connects to one or more\u00a0output branches\u00a0that determine which action runs&#8230;<\/p>\n","protected":false},"author":5,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"ht-kb-category":[107],"ht-kb-tag":[131,123],"class_list":["post-6434","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-configuring","ht_kb_tag-maker","ht_kb_tag-smart-routing"],"_links":{"self":[{"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/ht-kb\/6434","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/comments?post=6434"}],"version-history":[{"count":3,"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/ht-kb\/6434\/revisions"}],"predecessor-version":[{"id":6441,"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/ht-kb\/6434\/revisions\/6441"}],"wp:attachment":[{"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/media?parent=6434"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/ht-kb-category?post=6434"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/help.ino.cx\/index.php\/wp-json\/wp\/v2\/ht-kb-tag?post=6434"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}