WhatsApp API
WhatsApp Flows

WhatsApp Flows

WhatsApp Flows let customers complete a form inside WhatsApp instead of opening an external page. Use them for surveys, appointment requests, lead capture, contact forms, support triage, onboarding, and other guided customer journeys.

Try this with AI Copilot
How do I create and send a WhatsApp Flow template with SMSLeopard?
Ask AI →

When To Use A Flow

Use caseWhat the customer does in WhatsApp
Customer feedbackChooses a rating and adds optional comments
Appointment bookingShares a preferred date, time, branch, or service
Lead captureEnters name, phone number, email, and interest
Support requestSelects an issue category and describes the problem
Contact usSends structured enquiry details to your team

Create A Flow Template In SMSLeopard

  1. Open the SMSLeopard dashboard and go to WhatsApp Templates.
  2. Choose WhatsApp Flow Template.
  3. Select the WhatsApp number that owns the Flow.
  4. Use the guided builder to add questions, answer types, required fields, and submit button text.
  5. Click Create draft and validate to create the Flow in Meta and upload the generated Flow JSON.
  6. Use Preview to test the customer experience.
  7. Click Publish and select when the Flow is ready.
  8. Submit the template for Meta approval.
⚠️

Published WhatsApp Flows cannot be edited. To change a published Flow, create a new version and submit a new template that points to the new Flow.

Supported Guided Fields

The guided builder creates a static Flow that can be completed inside WhatsApp without a custom data endpoint.

Field typeGood for
Short textName, account number, branch, short answer
Long answerComments, complaint details, special instructions
EmailCustomer email address
Phone numberCallback number or alternate contact
DateAppointment date, delivery date, visit date
Single choiceRatings, yes/no, service choice
DropdownLists such as branches, departments, time windows, products, or topics

Sending A Flow Template

Once the Flow template is approved, send it using the same endpoint as other WhatsApp templates:

POST /v1/whatsapp/send
{
  "destination": "254720000000",
  "template_id": "FLOW_TEMPLATE_ID",
  "phone_number_id": "46646XXXXXXX268",
  "component_list": {
    "components": [
      {
        "component_type": "BODY",
        "fields": [{ "name": "1", "value": "Peter" }]
      }
    ]
  }
}

For a standard Flow button, you do not need to send a separate button variable. SMSLeopard creates the Flow action token needed by WhatsApp and tracks the send with that token.

If the template also has body or header variables, include those values in component_list the same way you do for any other WhatsApp template.

Advanced Data Exchange Flows

Some Flow experiences fetch live data or submit encrypted payloads to your own endpoint while the customer is inside WhatsApp. Those are called data exchange Flows and require a configured backend endpoint, request signature validation, and encrypted response handling.

Start with the guided builder for static forms and surveys. Use a data exchange Flow when the Flow must load account-specific options, calculate values live, or call your own backend before the customer submits.

Related Guides