Workflow
View, set up and manage Workflows.
Last updated
View, set up and manage Workflows.
Last updated
This module is only accessible by Owners & Managers.
This module is accessed from the side navigation menu under the menu item Workflows.
The Workflows Module is a visual workflow builder used to automate processes. Workflows are flexible enough to incorporate elements like Contact data to build automation such as automated messaging, auto-assignment, and more. A Workflow consists of a Trigger and one or more Steps.
Use the 🔍 at the top of the Workflows Module to quickly find a Workflow
The main page of the Workflows Module is a listing page. It provides an overview of the Workflow in your Space.
Below are the actions that can be performed in Workflows:
To create a Workflow:
Navigate to the Workflows main page.
Click + Add Workflow.
Name the Workflow.
Click Create. The Workflow Builder will be displayed.
Start building the Workflow by selecting a Trigger. You can then add steps along with the necessary configurations or conditions.
Once completed, click Save. The Workflow created will be in Draft status.
Maximum 100 Workflows per Workspace and 100 steps per workflow
To create a Workflow from a list of templates:
Navigate to the Workflows main page.
Click the + Add Workflow button.
Click Use Template on the preferred template.
Click the Use Template button. The pre-built Workflow will be created. Update the steps highlighted in red.
Once completed, click Save. The Workflow created will be in Draft status.
List of Workflow Templates
Workflow Template Name | Description |
Collect Contact Email with AI | Automate the collection of Email addresses using AI Agent and update their information on the platform seamlessly. Transition Contacts to agents when technical issues occur. |
Collect Contact Phone Number with AI | Automate the collection of Phone numbers using AI Agent and update their information on the platform seamlessly. Transition Contacts to agents when technical issues occur. |
Assignment: AI Agent | Assign contact to an AI agent every time a contact starts a conversation and hand it over to human agents should the need arise. |
Assignment: Least Open Contacts | Assign a Contact to the team member with the least open Contacts every time a Contact starts a conversation. |
Assignment: Round Robin | Assign a Contact to a team member round robin every time a Contact starts a conversation. |
Assignment: Round Robin + Online Only | Assign a Contact to an online team member round robin every time a Contact starts a conversation. |
Assignment: Unassign After Conversation Closes | Unassign Contact from a team member every time a conversation is closed. |
Away Message | Send an away message every time a Contact starts a conversation. Turn it on and off by toggling the workflow on and off. |
Away Message with Business Hours | Send an away message every time a Contact starts a conversation outside your business hours. |
Click to Chat Ads: Appointment Scheduling | Provides contact a link to your business calendar to enable them to schedule an appointment. |
Mark Contact as Spam | Create a shortcut button for agents to mark a Contact as spam and automatically close the conversation. |
Routing: New & Returning Contacts | Identify new and returning Contacts to route them differently every time a Contact starts a conversation. |
Welcome Message | Send a welcome message every time a Contact starts a conversation with you. |
Welcome Message & Ask For Email | Send a welcome message every time a Contact starts a conversation with you and ask for the email if you don't have it. |
Welcome Message & Ask For Phone Number | Send a welcome message every time a Contact starts a conversation with you and ask for the phone number if you don't have it. |
Assignment: Sales and Support AI Agents | Assign a contact to a Sales or Support AI agent based on contact choice every time a contact starts a conversation and handover to human agents should the need arise. |
Click to Chat Ads: Assignment | Assign a Contact to a team member with expertise in handling as inquiries every time a Contact starts a conversation from a Click to Chat ad. |
Click to Chat Ads: Share Product Information + Route to Sales | Send product information and direct interested contacts to Sales agents for contacts coming from CTC ads. |
Issue Escalation | Create a shortcut button to ensure agents follow the process & provide a summary when escalating issues to 2nd level support teams like Finance and Technical Support. |
Multi-Level Chat Menu (Main Menu) | Create an extensive chat menu with a wide range of interactive options for contacts to explore before assigning to an agent. Combine this with the Multi-Level Chat Menu (Sub) template to reveal more relevant options that interest contact or to return back to the Main Menu. |
Multi-Level Chat Menu (Sub Menu) | Show contacts a Sub Menu triggered from the Main Menu to answer FAQs and provide an option for contacts to return to the Main Menu. |
Multi-Team Routing: Multiple Choice by Contact | Assign a Contact to a team member based on the team the Contact wants to talk to every time a Contact starts a conversation. |
Multi-Team Routing: Shifts | Assign a Contact to a team member based on the current shift (business hours) every time a Contact starts a conversation. |
Request Consent: Privacy | Get a Contact's privacy consent before continuing the conversation. |
Shift Transfer | Enable your agents to transfer Contacts to the next shift using round robin logic & ensure agents provide a conversation summary. |
Simple Chat Menu | When contacts first message your business, you can automatically respond with a chat menu, offering self-service options for common inquiries and an option to speak to an agent. Show a chat menu to the Contact to answer frequently asked questions (FAQs) about products, services & your company and understand their interests before assigning to a live agent when required. |
Welcome Message: Channel Specific | Send a different welcome message to Contacts for each channel. |
CSAT to Data Warehouse | Send a CSAT to measure customer satisfaction of your agent's support after closing a conversation and send the data to a data warehouse for analysis. |
CSAT to Google Sheets | Send a CSAT to measure customer satisfaction of your agent's support after closing a conversation and send the data to a google sheet for analysis. |
Routing: VIP Contacts | Get contact data from a data warehouse to identify VIP contacts and route them for specialized service every time a contact starts a conversation. |
A Workflow can be saved by clicking the SAVE button in the Top Bar of the Workflow Builder.
You cannot save a Workflow that contains a trigger but has no Step.
You can save a Workflow only when all Step configuration errors have been resolved.
If a Step in the Workflow is configured incorrectly, the ⚠ sign will appear in the Top Bar. Hover over the icon to see which Steps have configuration errors. Click on the Step in the dropdown list to identify it in the Workflow builder and open its settings in the Configuration Drawer.
If your workflow includes the AI Agent Step, click the Show AI Instructions button to understand how your AI Agent will work when the workflow is published.
The Test Workflow feature does not support two specific Channels: Custom Channel and WeChat.
You can test your workflow before publishing it by clicking the Test button in the Top Bar of the Workflow Builder. This button is enabled once you have resolved any errors in your workflow.
On the Test Workflow dialog, select a channel from the Channel dropdown list to test your workflow.
If your workflow trigger (e.g. Conversation Opened) has trigger variables, the Trigger Variable (optional) dropdown displays on the dialog. You can test the workflow by expanding the menu and providing sample/dummy values for the trigger variables. However, if you leave the fields empty, they will be considered null and the workflow will be tested using null values.
Learn more about Workflow Trigger Variables here.
Click Next.
On the Test Workflow dialog, the QR code and chat link for the selected channel are displayed. Scan the QR code using a mobile device or click the link to open the chat in your browser.
Send the code (e.g. TEST1234) on the opened channel to trigger the workflow for testing.
You can send the code as many times as you need to trigger the workflow so you can test it. The code cannot be used once the End Testing button is clicked.
Click End Testing to close the Test Workflow dialog when you are done testing.
To start a Workflow, you need to publish it. A Workflow can be published from two places:
From the Actions Menu in the Workflows listing page
With the Publish Button inside the Workflow Builder.
Once the Workflow is published, it will run. Any Contacts who meet the trigger criteria will enter the Workflow. To edit a Published Workflow, you need to stop the Workflow.
When a Workflow is stopped, all enrolled Contacts will be ejected immediately. They will not be re-enrolled into the Workflow when it is re-published.
A Workflow can be stopped from two places:
From the Actions Menu in the Workflows listing page
With the STOP Button inside the Workflow Builder.
Once a Workflow is stopped, it may be edited.
You can stop a Workflow for a Contact in the:
Messages Module
Before you can stop a Workflow in the messages module, you need to enable it in the Workflow Settings in the Workflows module.
Navigate to the workflows icon, in the Ongoing Workflows tab, click Stop on the desired Workflow.
Agents with restricted access cannot view the Workflows icon. To enable this feature for them, navigate to Workspace Settings to edit the user’s restrictions.
Agents with restricted access cannot view the Workflows icon. To enable this feature for them, navigate to Workspace Settings to edit the user’s restrictions
Ongoing workflows that are enabled via Workflow Settings will appear in the list of published workflows, and these are the only workflows that can be stopped for a Contact. Workflows that are published but not ongoing will also appear in this list; however, they cannot be stopped.
Access the Workflow Settings from the Action Menu in the Workflow overview page or within the Workflow builder by clicking the settings icon and toggle on "Allow users to stop this Workflow for a Contact".
A workflow can only be edited when stopped.
Editing takes place in the Workflow Builder. In the Actions Menu in the Workflows listing page, click Open in Builder. Once inside the Workflow Builder, you can edit the Workflow.
You can create a Workflow by cloning an existing one. Click the Actions menu on the Workflows listing page and click Clone.
When a Workflow is cloned, the trigger and Steps are copied over to the new Workflow. The name of the new Workflow will also follow the name of the original Workflow and appended with clone
at the end. You can still make necessary changes before publishing it.
You can delete a Workflow by clicking the Actions menu on the Workflows listing page and clicking Delete. Click Delete again on the pop up message to confirm the deletion.
- You cannot delete Workflows in the Published status. To do so, you have to first stop the Workflow. Keep in mind that the deletion cannot be undone. - When a Workflow is deleted, all existing Contacts in the Workflow journey will be ejected.
To export a Workflow, open the Actions Menu and click the Export Workflow button
The Workflow will be downloaded as a JSON file.
It can then be imported to another Workspace or Organization
To import a Workflow, go to the Workflow main page. Click on the dropdown arrow beside the ADD WORKFLOW button and select Import Workflow.
Click Browse file to select your Workflow and click the IMPORT button.
To import your Workflow successfully, please make sure:
The file is in a JSON format
All the values in the JSON file are correctly listed and formatted
The file cannot exceed 400 KB
The file cannot contain more than 100 Workflow steps
Imported Workflows inherit the name and description from the import file. If the name already exists, the name of the imported Workflow will be appended with a number starting at (2) and increase by 1 for duplicates.
E.g. Welcome Message (2), Welcome Message (3), Welcome Message (4)
.
A validation is done upon importing, whereby the values in a Workflow Step will be removed if they do not match the available data in your Workspace. E.g. if a Workflow Step contains data such as Channels, User IDs or Teams that are not in the Workspace, these values will be removed.
You cannot import a Workflow that contains a trigger but no Step.
Each Workflow will have the following associated information in its columns.
The Workflow Status is used to determine if the Workflow is currently running. There are three possible statuses:
Draft: a Workflow that has never been published
Published: a Workflow that is currently implemented
Stopped: a previously published Workflow that has been stopped
Each Workflow has additional columns detailed below.
Name | Displays the name and description |
Last Published By | Displays the last user who published it |
Last Published | Displays the last published date |
Created By | Displays the user who created it |
Date Created | Displays the date it was created |
The last column in the Workflows row contains the Actions Menu. The following actions can be performed here:
Publish Workflow | Only shown when Workflow is in Draft or Stopped |
Stop Workflow | Only shown when Workflow is Published |
Edit Name/Description | Allows editing of Workflow name or description |
Open in Builder | Opens the Workflow in the Builder |
Export | Exports the Workflow in a JSON file |
Workflow Settings | Opens a dialog to configure settings to stop a workflow for a Contact |
Clone | Creates a duplicate Workflow in Draft Status |
Delete | Deletes the Workflow |
To open the Workflow Builder, you need to create a Workflow or edit a Workflow. The Workflow Builder is a visual editor where Steps can be added, removed, and configured. It consists of four main sections:
Top Bar
Assistive Tool
Canvas
Configuration Drawer
The top bar is used to manage key Workflow items like its name, description, errors in step configuration and status. The elements of the top bar are as below.
Name | Displays Name and allows editing of Name or Description |
Error Indicator | Indicates a step configuration error |
Workflow Settings | Allow users to stop Workflow for a Contact and set exit conditions to stop a Workflow for a Contact |
Save Button | Allows Workflow to be saved |
Status Button | Allows Workflow to be published or stopped |
Allow users to stop Workflow for Contact
Toggle on to allow users to stop Workflow for Contact immediately at any point from the messages module. You can enable this setting without stopping the workflow.
Set exit conditions to stop this Workflow for a Contact
Toggle on to stop Workflow for Contact:
When outgoing message is sent
When incoming message is received
When a user is manually assigned to a Contact
Exit Conditions | Function | Exceptions |
Outgoing Message | When this exit condition is checked for the selected Workflow, any outgoing messages sent by the user will stop the Workflow for any Contact in the selected Workflow. | - When the message is sent within the Workflow: This condition won't trigger if a "Send Message" step is part of the Workflow. - Broadcast messages: This condition won't work for Broadcasts. - Any integrations, such as Developer API, Zapier, Make.com, Google Sheets, Dialogflow, etc., are not considered when this condition is triggered. |
Incoming Message | When this exit condition is checked for the selected Workflow, any incoming messages received by the user will stop the Workflow for any Contact in the selected Workflow. | - When a contact responds to a question within the chosen Workflow (e.g., an 'Ask a Question' step), this condition won't be triggered. |
Manual Assignment | When this exit condition is checked for the selected Workflow, manually assigning a user on the Messages module will stop the Workflow for any Contact in the selected Workflow. | - When the assignment occurs via Workflows or APIs. |
You can choose multiple exit conditions, and the first one that occurs will trigger for the Contact.
The five Assistive Tools are designed to help you navigate the Canvas:
Zoom In
Zoom Out
Center
Undo
Redo
Canvas is the drag-and-drop interface that provides an overview of the Workflow. It allows the user to observe the logic and sequence of a Contact's journey during an event. Actions such as building new steps, dragging or dropping steps and connecting steps take place here.
To configure a Trigger or Step, click on the Trigger or Step block to open its configuration drawer. The actions possible in the configuration drawer include:
Edit the Step name
Define the action of the trigger event or Step
What will happen to my Contacts if I stop a Published Workflow?
If a Workflow is stopped, all enrolled Contacts will be immediately ejected from the Workflow. They will not be re-enrolled into the Workflow if it is re-published.
Why did my Workflow end before it was completed?
A workflow may end prematurely for the following reasons:
The Workflow was stopped
If a Workflow is stopped, all enrolled Contacts will be immediately ejected from the Workflow.
The Contact fell under the Failure Branch and there was no continuing journey Contacts may fall under a Failure Branch if they provide invalid responses or do not meet specified conditions. If there are no steps configured under the Failure Branch, the Workflow will end. It is advisable to configure steps under the Failure Branch so Contacts may continue their journey if they land here.
Ask a Question - Timeout The Ask a Question Step has a default timeout period of 7 days. If Contacts do not respond within the defined or default timeout period, the Workflow will end. It is advisable to create a Timeout Branch and add Steps for Contacts to continue their journey in the event of a timeout. Read more about the Ask a Question step here.
Assign to - Timeout The Assign To Step has a default timeout period of 7 days. If an assignee who fulfills the assignment logic cannot be found within the defined or default timeout period, the Workflow will end. It is advisable to create a Timeout Branch and add Steps for Contacts to continue their journey in the event of a timeout. Read more about the Assign To step here.
Branch Condition - Else Contacts who do not meet the required conditions of a branch will fall under the Else branch. If no steps are configured under this branch, the Workflow will end. It is advisable to configure Steps under the Else branch so Contacts may continue their journey if they land here. Read more about branch steps here.
Send a Message - Fail If a message is not sent for any reason (e.g. messaging window closed, network connection issues), the Contact will exit the Workflow.
If I manually close an ongoing Conversation with an enrolled Contact on the platform, will the Workflow end?
No, the Workflow will continue even if the Conversation is manually closed on the platform. The Workflow will only end if the Conversation closes in the Workflows Module.
Can a Contact re-enter the same Workflow they are currently enrolled in it?
A Contact cannot re-enter a Workflow they are currently enrolled in. The Contact has to exit the Workflow and meet the criteria for the trigger event again to repeat or re-enter a Workflow.
What if a Contact triggers more than one Workflow at the same time?
Both Workflows will be executed concurrently.
Why is the contact field not saving responses in the Ask a Question step?
Invalid responses, such as responses in the wrong format, cannot be saved. Clearly specify a response format when asking a question to avoid this scenario. Refer here for the correct format of each type of response.
I have updated a Contact Field value but the old value is still being applied. Why is Workflows not applying the updated value?
All Contact information will be cached or stored for three (3) minutes once the Workflow is triggered to allow for faster data access. If a Contact Field is being updated manually or programmatically while the Contact is still in a Workflow journey, the information will take up to three (3) minutes to be reflected in the Workflow. Until then, the previous value will be shown.
If I add an Ask a Question step after a Conversation has closed (e.g. Close Conversation step or Conversation Closed trigger), will the Conversation reopen if the Contact responds?
No, a Contact will not reopen the Conversation by responding to the 'Ask a Question' step.
What happens if there is no one in an Assign To team?
The Contact will not be assigned and will move on to the next step. If there is no next step, the Workflow will end.
Why is the reply from the Contact not being saved in the Contact Field that I have selected?
It could be because the Contact Field chosen under the Save Response setting does not match the Question Type. Please make sure you select the correct Contact Field for the Question Type when saving a response. For instance, if the Question Type is a date, then the response cannot be saved as a different Contact Field, such as email address or phone number.
To turn off Dialogflow Bot, you need to:
Select Contact Field from the Category drop-down list
Select Bot Status from Field drop-down list
Choose your required Operator
Set the Value as On/Off as required
Choose this method to turn off your Dialogflow Bot in any of the following cases:
To automate turning off the bot
To ensure any replies from customers do not trigger Dialogflow for certain scenarios, while Workflow is running
Check out the alternate ways to turn off the Dialogflow Bot manually from the Messages module and by using the Bot Status Parameter.
Why am I encountering the "Workflow loop detected" error when trying to publish my Workflow?
The "Workflow loop detected" error occurs when a workflow includes a step that can trigger itself or another workflow that in turn triggers the original workflow, resulting in an infinite loop. Prevent this error from occurring and ensure that your workflow functions as intended by checking your workflow with these steps:
Duplicate triggers in a workflow: Check if any steps in your workflow are identical to the workflow trigger. If the workflow trigger and any step in the workflow are the same, it can cause a loop to occur. Ensure that the workflow trigger is unique and does not match any other steps in the workflow.
Steps that can trigger other workflows: Check if your workflow has any steps that can trigger another workflow. For example, if workflow A has a step that can trigger workflow B, and workflow B also has a step that can trigger workflow A, a loop can occur. Ensure that workflows do not contain any steps that can trigger each other.
To stop a Workflow from the Messages module:
Navigate to the Workflows module and to your desired workflow
Access the Workflow Settings from the Action Menu in the Workflow overview page or within the Workflow builder by clicking the settings icon
Toggle on "Allow users to stop this Workflow for a Contact"
For the Business plan, the limitation is a maximum of 100 Workflows per Workspace. To understand more about the features available for each plan, including the Business plan, please visit our detailed comparison page at IS-Messenger Pricing and Features.
Why did I encounter the error "Invalid JSON schema, please submit a valid JSON file" when importing a Workflow?
You will encounter this error in any of the following scenarios:
if your Workflow contains a trigger but no Step.
if your Workflow contains multiple triggers, with or without a Step.