Conversational WhatsApp workflows turn your automation canvas into a chatbot: a customer messages you on WhatsApp, the workflow reads what they said, branches on it, and replies — sending a template, a Flow form, or an internal alert to your team. Four purpose-built nodes make this possible: the WhatsApp Reply Received trigger, the WhatsApp Reply Condition, Send WhatsApp Form, and Send WhatsApp Internal. This article explains each node's configuration and how to chain them into a flow. For the canvas basics, see How to Create a Workflow.
Before you start#
- Target module — set the workflow's module to Contacts. The WhatsApp Reply trigger always runs against the Contact (matched by phone, or upserted from a form submission), and choosing Contacts up front keeps downstream Update field and Assign owner actions resolving correctly.
- Approved assets — have at least one approved WhatsApp template ready, and for form steps an approved WhatsApp Flow form. See WhatsApp Forms.
- Merge tags — because the trigger resolves the Contact, you can use {{contact.x}} merge tags in every downstream step.
The trigger: WhatsApp Reply Received#
Add WhatsApp Reply Received as the workflow's starting node. It fires on an inbound WhatsApp message or a WhatsApp-form submission. A Source selector switches between the two shapes:
- Inbound message (default) — fires on a text reply. Set Reply matches to one of: Any reply (fires on anything), Contains, Starts with, Equals, Ends with, or Matches regex. For every operator except Any reply, enter a Match value (for example interested, or a pattern like ^(yes|interested) for regex).
- Form submission — fires when a customer submits a WhatsApp form. Pick a Form: Any form matches every approved form, or select a specific one to narrow it. When a specific form is chosen you can add optional Field conditions — per-field rules (field + operator + match value) using the same operators minus Any reply. With no rules, the trigger fires on any submission of that form.
💡Only approved forms appear in the Form picker. If the list is empty, create and submit a form for Meta approval first, then come back — details in
WhatsApp Forms.
The branch: WhatsApp Reply Condition#
Drop a WhatsApp Reply Condition after a step where the customer has replied. It reads the customer's inbound WhatsApp reply text and splits the flow into two outputs: Match (first branch) and No Match (second). Configure:
- Operator — Contains (default), Starts with, Equals, Ends with, or Matches regex.
- Match value — the text to test the reply against (labelled Regular expression when the operator is Matches regex, for example ^(yes|interested)$).
⚠️This condition only works inside a workflow triggered by
WhatsApp Reply Received — it has nothing to read otherwise. The editor warns you when no such trigger is on the canvas. For non-message logic, use a standard
If / Else branch instead.
The Flow form send lives inside the unified Send WhatsApp action node. Add a Send WhatsApp step, set the Send type to Flow form, then configure:
- Recipient — Record Phone Field (the contact's WhatsApp number, the default), Record Owner, or Custom Phone Number.
- WhatsApp Form — the approved Flow form to send. If none exist, a prompt links you to create one.
- Message text — the message that introduces the form.
- Button text — the tappable button label (defaults to Fill Form, maximum 20 characters).
Switching Send type to Template message instead sends an approved WhatsApp template — the two variants share the same recipient setting, so you can toggle between them without losing your configuration.
Alert your team: Send WhatsApp Internal#
Send WhatsApp Internal notifies internal team members rather than the customer — useful for hand-offs the moment a hot reply lands. Configure:
- Team members — select the users who receive the notification.
- WhatsApp Template — an approved template built for the workflow's module. Its placeholders resolve from the workflow's contact, so your team sees who replied.
Only approved templates rooted at the trigger module appear; a mismatched template is flagged so you can swap it for the right one.
Chaining them into a chatbot flow#
- Start with WhatsApp Reply Received — inbound message (for example, a keyword) or a form submission.
- Ask — use Send WhatsApp to send a Template message posing a question, or Send WhatsApp Form to collect structured answers.
- Branch — add a WhatsApp Reply Condition to route the customer's next reply down the Match or No Match path.
- Act — on each branch, send a different WhatsApp message, update a field, assign an owner, or fire Send WhatsApp Internal to hand a qualified lead to your team.
✅Because the trigger resolves the Contact by phone, every step in the flow can personalise with {{contact.x}} merge tags and every branch stays on the same customer record.