Message flows run on WhatsApp in this release. Other channels are on the roadmap; a flow bound to any other channel is refused at publish.
Say steps send something and carry straight on: a message, a file, a pin, a card, a reaction or the catalogue. None of them waits for the customer.
This is the reference for the Say group of the flow builder's palette. Every step below is listed with what it does, the settings it takes, the branches it can leave by and the one thing to keep in mind. Settings marked "templated" accept {{vars.x}}, {{contact.name}} and {{last.text}}.
Send text
A plain message. Variables are interpolated.
| Setting | What it does |
|---|---|
body |
The message text (templated, up to 1024 characters). |
purpose |
What this message is for — order_update, appointment_reminder — so that OUTSIDE WhatsApp's 24-hour window the approved utility template the workspace mapped to that purpose is sent instead of the step going quiet. Blank uses the default mapping; with no mapping that can be filled honestly the flow's defaults.onWindowClosed applies, else the session ends window_closed (this step has no window_closed branch of its own — the template IS its fallback). Which way it went is in {{vars.__send_route.path}} (text, template or blocked). |
Branches: next
Keep in mind: Outside the 24-hour window only an approved template can go out: give the step a purpose that is mapped to a template, or the session ends window_closed.
Send media
Image, video, audio or document by URL, with a caption.
| Setting | What it does |
|---|---|
url |
Public URL of the file to send. |
kind |
image, video, audio, document or sticker. |
caption |
Optional caption under the media. |
Branches: next window_closed
Keep in mind: The file must sit at a public URL — WhatsApp fetches it. Outside the 24-hour window the step takes window_closed.
Typing
A typing indicator and a short pause, so a fast branch reads as human.
| Setting | What it does |
|---|---|
duration_ms |
How long to show the typing indicator, in milliseconds (200–8000). The flow does not pause: the indicator shows until the next message goes out. |
Branches: next
Keep in mind: It is an indicator, not a pause — the flow carries straight on to the next step.
Send location
Drop a pin — the shop, the pickup point, the clinic.
| Setting | What it does |
|---|---|
latitude |
Latitude of the pin, e.g. -6.7924. |
longitude |
Longitude of the pin, e.g. 39.2083. |
name |
Place name shown on the pin. |
address |
Street address shown under the name. |
Branches: next window_closed
Keep in mind: Needs an open 24-hour window; there is no template fallback for a pin.
Send contact
Share a vCard: a colleague, a courier, your own number.
| Setting | What it does |
|---|---|
contacts |
List of {name, phone} cards to share. |
Branches: next window_closed
Keep in mind: Needs an open 24-hour window; there is no template fallback for a card.
React
An emoji on the last inbound message. Allowed even outside the window.
| Setting | What it does |
|---|---|
emoji |
The emoji to put on the customer's last message. |
Branches: next
Keep in mind: Needs a customer message to react to. It works outside the window.
Send catalogue
A product, a product list, or the whole catalogue.
| Setting | What it does |
|---|---|
mode |
catalog (the whole catalogue), product (one item) or product_list (chosen items). |
catalogue_id |
Meta catalogue id for product and product_list. Leave blank to use the catalogue this workspace has connected. |
retailer_id |
The product's retailer id; needed for product. |
body |
Message text above the catalogue. |
header |
Optional header line (product_list only). |
sections |
For product_list: [{title, retailer_ids: [...]}] — up to 10 sections, 30 products in all. (The wire shape product_items[{product_retailer_id}] is also accepted and stored as retailer_ids.) |
Branches: next failed window_closed
Keep in mind: Needs the catalogue connected to the WhatsApp account — publish is blocked without it.
Where next
- Open the builder at Message flows and drag any of these onto the canvas — the panel on the right shows the same settings.
- New to flows? Start with Build your first WhatsApp flow.
- The other groups: Ask · Think · Decide · Wait · Do · Route.
- The rules every flow lives under: the 24-hour window, payments, what we keep and why a flow stops.