Skip to content
View as Markdown
How-to guideChatbot and AI

WhatsApp Flows

Build native WhatsApp interactive experiences

Owners and adminsUpdated

WhatsApp Flows

WhatsApp Flows enable businesses to create rich, interactive experiences directly within WhatsApp. Unlike regular messages, Flows provide native UI components like forms, dropdown menus, and multi-screen journeys.

WhatsApp Flow Builder

Soosh provides a visual Flow Builder to design and manage your WhatsApp Flows:

  • Visual Editor - Design flows with a drag-and-drop interface
  • Screen Builder - Create multi-screen experiences
  • Component Library - Use native WhatsApp UI components
  • Preview - Test your flow before publishing
  • Sync with Meta - Push and pull flows from Meta

WhatsApp Flows support various UI components:

Text Input

Single-line and multi-line text fields

Dropdown

Selection menus with multiple options

Date Picker

Native date selection component

Radio Buttons

Single-select option groups

Checkboxes

Multi-select options

Buttons

Action buttons for navigation

  1. Create

    Design your flow using the visual builder or JSON editor.

  2. Save to Meta

    Push your flow to Meta’s WhatsApp Business API.

  3. Test

    Test the flow in draft mode before publishing.

  4. Publish

    Make the flow available for use in messages.

Status Description
Draft Flow is being designed, not yet available
Published Flow is live and can be sent to users
Deprecated Flow has been retired

Publishing requires a Draft flow, so a flow that is already Published or Deprecated can’t be edited in place. To change one, use Duplicate: it clones the flow into a fresh Draft copy (named “… (Copy)”) with a new, empty Meta flow ID. Edit the copy, save it to Meta, and publish it — leaving the original untouched. This is the intended path for revising a live flow.

Integrate WhatsApp Flows into your chatbot conversation flows:

  1. Create a flow step with type “WhatsApp Flow”
  2. Select the published flow
  3. Configure the trigger message
  4. Handle flow completion responses

Send flows programmatically using the REST API:

Terminal window
POST /api/messages
{
"contact_id": "...",
"type": "flow",
"flow_id": "...",
"flow_token": "...",
"header": "Complete Your Order",
"body": "Please fill in the details below",
"button_text": "Start"
}