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.
When To Use A Flow
| Use case | What the customer does in WhatsApp |
|---|---|
| Customer feedback | Chooses a rating and adds optional comments |
| Appointment booking | Shares a preferred date, time, branch, or service |
| Lead capture | Enters name, phone number, email, and interest |
| Support request | Selects an issue category and describes the problem |
| Contact us | Sends structured enquiry details to your team |
Create A Flow Template In SMSLeopard
- Open the SMSLeopard dashboard and go to WhatsApp Templates.
- Choose WhatsApp Flow Template.
- Select the WhatsApp number that owns the Flow.
- Use the guided builder to add questions, answer types, required fields, and submit button text.
- Click Create draft and validate to create the Flow in Meta and upload the generated Flow JSON.
- Use Preview to test the customer experience.
- Click Publish and select when the Flow is ready.
- 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 type | Good for |
|---|---|
| Short text | Name, account number, branch, short answer |
| Long answer | Comments, complaint details, special instructions |
| Customer email address | |
| Phone number | Callback number or alternate contact |
| Date | Appointment date, delivery date, visit date |
| Single choice | Ratings, yes/no, service choice |
| Dropdown | Lists 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.