Most WhatsApp automations are tested by the person who built them, typing the exact words they had in mind. Real customers do none of that.
This list is what to check before that happens.
Section one
Templates and approval
- Every template used by the flow is approved, not pending
- Variable count in the template matches the count the flow sends
- Buttons on the template have values supplied for every index
- A template with a URL button has the URL variable filled
- Long-code and short-code phone formats both parse
Section two
Conversation design
- The greeting states what the bot can do, in one line
- Every menu has an escape to a human
- An unrecognised message gets a useful reply, not a repeat of the menu
- Backward navigation ("main menu", "back") works from every branch
- The flow survives a customer sending three messages in a row
- Emoji-only and single-character messages do not crash a branch
Section three
Handoff
- Handoff sends the customer a message, not just an internal notification
- Conversation history travels with the handoff
- Out-of-hours handoff sets an expectation with a real time
- An agent replying stops the automation from also replying
Section four
Consent and opt-out
- Opt-out is honoured on the very next send, not the next batch
- Opt-out language appears where the local rules require it
- A blocked contact cannot be reached by any campaign
- Opt-in source is recorded against the contact
Section five
Measurement
- Every run writes an execution record, including failures
- Median and P90 first response time are visible
- Handoff rate is tracked per intent
- Delivery failures surface somewhere a human looks
One more, and it is the one people skip
Send the flow to your own number and go through every branch on a phone, in daylight, with one hand. Half of all layout and copy problems only show up there.
Related
Build it once, run it everywhere
The same flow logic drives WhatsApp, Instagram, email and SMS.


