
Two Kinds of Flow
When you click New flow, Soneka asks which kind you want to build:
Flows vs. Broadcasts
Core Concepts

- Draft → Live → Paused. A new flow starts as a draft. Publishing makes it live. Turning a live flow off makes it paused — it stops enrolling new contacts but keeps its design intact. The flows list shows each flow’s status.
- Trigger step. Exactly one per flow, always the first step. Every save records the trigger so Soneka can quickly find which flows a tag or group should start.
- Variables & merge tags. Question steps save the customer’s answer into a named variable. Reuse it later in any message with a
{{var}}tag (e.g.Thanks {{name}}!). Soneka fills in the saved value when the message is sent. - Branches. Some steps split the path. A Condition has
yes/no; Book Appointment hasbooked/no slots; commerce steps havepurchased/abandoned; multi-option steps (Buttons, List, Poll) give one branch per option. - Subscribers. Every contact running through a flow is a subscriber, shown as
active,paused,completed, orfailed. You can view and pause/resume them per flow. - Scoped to workspace and connection. Flows belong to a workspace, and the list shows the flows for your workspace’s current WhatsApp connection. Any teammate with the admin role can build and manage them.
Triggers
The trigger’s type decides how contacts enter the flow. There are four types:Setting the trigger
Open the trigger step
Pick the type
Fill in the specifics
- Keyword — type a comma-separated list (e.g.
hi, hello, start). - Tag added / Group join — pick the real tag or group from the dropdown.
- Manual enroll — no config; you’ll add contacts from the Enroll action later.
Optionally bind a device
Save
Step Reference
The palette groups steps by purpose, matching what you see on the builder’s left panel. “Branches” shows where you can wire the path onward from that step.Start
Send
Listen
Logic
equals, does not equal, contains, does not contain, greater than, less than, and is empty. Text comparisons ignore capitalisation and surrounding spaces; greater than / less than treat both sides as numbers. With several rules you choose AND/OR between them; the flow takes the first match.
AI
Contact
Engage
Commerce
purchased runs when the customer buys; abandoned runs after the wait time if they don’t.
Integrations
CRM
Call Flow Step Reference
When you pick Call at the “What kind of flow?” prompt, the canvas loads a voice-specific palette in place of the messaging one. Everything else about the builder — trigger, variables, branches, subscribers, save/publish — works exactly the same way. Call flows run on Soneka’s voice engine and drive AI Call Assistant sessions.

Start
Logic
Voice
The voice steps are the heart of a call flow — they’re what actually happens on the phone.Call Routing
Call Control
Build & Connect a Flow
Create the flow
Set up the trigger
Drag steps onto the canvas
Connect the steps
yes and no; for Buttons/List wire one per option; for commerce wire purchased and abandoned.Configure each step
{{var}} tags in any message to reuse answers captured by earlier Ask steps.End every branch
Save and publish
answer); Buttons/List save into choice by default; the AI assistant saves into reply; a Webhook saves the response into response. Pick clear names and reuse them as {{name}}, {{choice}}, etc.Build with AI
The builder can generate a starter flow from a plain-language description. Describe the automation (for example, “Greet the customer, ask their name, then offer a list of services and book an appointment”) and Soneka drafts a full flow — steps and connections — onto the canvas for you to refine.
Open AI generate
Pick a provider and model
Describe your flow
Review and refine
{{var}} tags, and no emojis — and the result is capped at up to 20 steps before it appears on the canvas. You’ll get a clear error if the provider isn’t enabled or the AI returns something unusable.
Device Binding
A flow sends from one of the workspace’s connected numbers. You can pick a specific number on the trigger step, or leave it unset to use the workspace default.- The number picker matches your connection: on the Unofficial API it lists your paired, active phones; on the Cloud API or Twilio it lists your connected numbers.
- If you pick a number, the flow uses it — as long as it’s still active and in this workspace.
- If you don’t pick one (or the chosen one is gone), the flow uses the workspace’s first active number.
- If no number is available when the flow tries to launch, the subscriber is marked failed with “No connected device for this workspace” — connect a number and enroll the contact again.
Google, Commerce & Media Pickers
- Google pickers. The Google Sheets / Docs / Form steps let you pick a real spreadsheet, template document, or form from your connected Google account, and match its placeholders or columns to flow variables. These steps need the workspace’s Google account connected — the same connection used for Calendar and appointments.
- Commerce pickers. The WhatsApp Shop / WooCommerce / Shopify steps let you pick a store and then choose products from it. Product details (name, image, price) are saved with the step so the cards display instantly. Older flows keep working — their products are upgraded automatically.
- Media upload. The Media and Sequence steps accept image, video, audio, and document files. Uploads are capped at 50 MB.
Enrolling & Subscribers
- Keyword / tag / group flows enroll contacts automatically when the matching event happens — but only while the flow is published and active.
- Manual-enroll flows are added by you: open the flow, choose contacts or a group, and enroll. The flow must be active. Enrolling the same contact twice does nothing if they’re already running; a contact who previously failed gets retried.
- Subscriber states:
active,paused,completed,failed. The flow’s detail panel lists subscribers with their state, when they were enrolled, and any failure reason; the flows list shows active/completed/failed counts per flow. - Pause / resume a subscriber. Pausing keeps that contact from being re-enrolled by tag/group triggers while you keep them muted — it doesn’t stop a conversation already in progress. Resuming clears the pause and any failure, but deliberately doesn’t restart the flow (that would double up on contacts mid-conversation).
How a Flow Runs
When a contact is enrolled, Soneka starts a live conversation for that customer and works through the steps:- Step by step. The flow begins at the first step and follows the connections. After each step it takes the branch the customer’s reply chose and runs the next step. When a branch has nothing connected, that path ends.
- Reading replies. For Buttons, List, Poll, and Ask-with-options, the customer’s reply chooses a branch. WhatsApp can send a reply in several different forms, and Soneka understands all of them, so a tap is routed correctly on any device or carrier. Typing a plain number (
1,2…) also works as a fallback. - 1-hour wait window. A step that waits for the customer (List, Buttons, Ask, Poll, commerce) keeps the conversation open for up to 1 hour. Idle conversations are cleaned up after that — long enough for a person to read and tap, short enough not to pile up.
- Delays. A Delay step simply waits the time you set before moving on.
- Commerce waits. A commerce step pauses for the wait time you set. If the customer buys, the flow takes
purchased; if the time runs out first, it takesabandoned. The conversation isn’t cancelled while waiting — a late reply can still produce a checkout link. - Appointments. Book Appointment fetches open slots, sends them as a list, books the chosen one on your calendar, sends a confirmation, and takes
booked(orno slotsif nothing is free or the reply can’t be matched).
Engine Notes
Each step is sent through your workspace’s current WhatsApp connection. Behaviour differs as follows:- Tappable steps fall back on Twilio. Twilio handles interactive content differently, so Soneka shows a numbered text menu and reads the number the customer types. Flows stay fully usable on Twilio.
- WhatsApp Form is Cloud API only. The step does nothing on the Unofficial API or Twilio; it needs a published WhatsApp Form.
- Google steps need the Google connection. Connect Google (the same one used for Calendar and appointments) before using Sheets, Docs, Form, or Meet.
- Branding footer. If your plan adds a branding footer, it’s automatically appended to outgoing text and interactive messages (templates excepted).
Manage Flows
- Duplicate. Copies a flow as a fresh draft (titled with
(Copy)) so you can iterate without touching the live version. - Pause / Resume. A paused flow stops enrolling new contacts but keeps its design.
- Publish / Unpublish. Publishing makes the flow live; unpublishing returns it to draft.
- Delete. Removes the flow. Flows belong to your workspace; teammates in the same workspace can manage them.
- Filter. The list filters by status (live / paused / draft), category, and name, and highlights your most-used flows.
- Plan limits. Your plan sets how many flows you can create. Editing existing flows doesn’t count against the limit.
Troubleshooting
Testing a Flow Before Going Live
Open Test Mode
Simulate the Trigger
Step Through the Flow
Inspect Variables
Publish
Example Use Cases
Cart Abandonment Recovery
OTP Delivery
Appointment Reminders
1), reschedule (2), or cancel (3). Branch each response to the appropriate action and update your backend.Frequently Asked Questions
Is there a limit to how many nodes a flow can have?
Is there a limit to how many nodes a flow can have?
Can a contact be in multiple flows at the same time?
Can a contact be in multiple flows at the same time?
How does the AI Reply node handle sensitive topics?
How does the AI Reply node handle sensitive topics?
What happens if a Webhook node call fails?
What happens if a Webhook node call fails?
Can I use Flow Builder without coding knowledge?
Can I use Flow Builder without coding knowledge?
Which plans include Flow Builder?
Which plans include Flow Builder?