Testing automations and run logs
Automations send real WhatsApp messages to real customers. Test mode lets you rehearse against real events without that risk.
Who can do this
- Owner
- Admin
- Agent
The three run states
Set on the automation, and shown as a coloured edge on each row in the list.
| State | Fires on real events? | Sends? |
|---|---|---|
| Off | No | No |
| Test | Yes | Only to your test contacts |
| Live | Yes | Yes, to everyone |
Test is the useful middle: the automation reacts to a genuine order or button tap, walks the whole step tree, and writes a log, but suppresses sends unless the contact is one you nominated.
Set up test contacts
The Test contacts picker sits at the top of the Automations page, next to New automation.
-
Create a tag for your own numbers, for example
test, and put it on the contacts you want real sends to reach. See tags. -
On Automations, choose that tag in Test contacts.
This is one setting for the whole workspace, not per automation. It sits here rather than in Settings because this is where you are when you decide to test something.
With no tag chosen, a Test automation runs its steps and sends nothing at all, which is still a useful check of the logic.
Test a Shopify automation
-
Set the automation to Test and save.
-
Place a real order in your Shopify store using a phone number that carries your test tag. A cheap product and a discount code make this painless.
-
Open Logs on the automation row.
For an abandoned checkout, start a checkout with a test number and do not complete it.
Test a button-reply automation
-
Set the automation to Test and save.
-
From the inbox, send yourself the template with the buttons, using a contact carrying your test tag.
-
Tap a button on your phone.
-
Check Logs.
Reading the run logs
Logs on an automation row opens Run logs. One card per run.
Each card shows:
- A status badge:
success,partialorfailed. - A Test run badge when the run happened in test mode. Without it, "success" on a run that sent nothing would be badly misleading.
- The date and time.
- Every step that executed, with ✓ or ✗, the step name and a short detail. On a test run the detail says whether the send was suppressed or was real because the contact was tagged.
- An error message when the run failed.
| Status | Meaning |
|---|---|
success | Every step completed |
partial | Some steps completed, some failed |
failed | The run could not complete |
No runs yet. means the trigger has not fired. That is a trigger problem, not a step problem. Check the next section.
When nothing runs at all
-
Check the run state. Off never fires.
-
Check the trigger scope. A Shipment updated automation scoped to "delivered" will not fire for "out for delivery". A Button / list reply scoped to one template ignores taps on every other template.
-
Check Shopify is delivering events. SettingsIntegrations → Shopify shows Connection health with the last event received. See Shopify troubleshooting.
-
Check the store captures a phone number at checkout. Without one there is nobody to message and the event goes nowhere. The setup steps are on the Shopify integration screen and in connect Shopify.
When runs happen but nothing arrives
Open the log and read the failed step.
| Detail says | Cause |
|---|---|
| Template not approved | The template's status changed. Sync from Meta on Templates. |
| Send rejected, no open window | A Send message step ran where the 24-hour window was closed. Use Send template there instead. |
| Sends suppressed | The automation is in Test mode and the contact is not tagged as a test contact. |
| Subscription or billing error | Outbound sending is blocked. See subscription states. |
Going live
Once a test run reads clean end to end, set the automation to Live and save. Check the first few real runs in Logs before you stop watching.
Related
- Automations
- Triggers, building and activation checks.
- Automation steps
- What each step does and the rules that govern it.