Route Leads from HQ to Outlets
For businesses with multiple outlets, this workflow captures leads on a central WhatsApp number (HQ) and routes them to the appropriate outlet based on their response.
How it works
- A lead messages HQ.
- HQ sends an automated message asking the lead to choose an outlet.
- The lead replies with their choice.
- HQ sends a confirmation and triggers the outlet's workflow via webhook.
- The outlet sends a follow-up message to the lead.
Setup
This requires two workflows: one on HQ and one on each outlet.
HQ workflow
Trigger: Contact Created
Actions:
-
Send WhatsApp — ask the lead to choose an outlet:
Hi! Let us know which is your preferred outlet:
Reply "1" for Orchard
Reply "2" for Somerset
Reply "3" for Novena -
Wait For Reply — pause until the lead responds (timeout: 24 hours).
-
IF/ELSE — check the reply:
- Branch 1: reply is
1(Orchard) - Branch 2: reply is
2(Somerset) - Branch 3: reply is
3(Novena)
- Branch 1: reply is
-
Under each branch, add:
- Send WhatsApp — confirmation message (e.g., "You have chosen Orchard. Our outlet manager will reach out shortly.")
- Webhook — POST request to the outlet's inbound webhook URL with the lead's details:
{
"first_name": "{{contact.firstName}}",
"phone": "{{contact.phone}}"
}
Outlet workflow
Set up on each outlet's WhatsApp number.
Trigger: Inbound Webhook (with first_name and phone in the payload schema)
Actions:
-
Create / Update Contact — maps the webhook payload to contact fields (automatically added with the inbound webhook trigger).
-
Send WhatsApp — follow-up message:
Hi {{first_name}}, we're excited to be part of your child's art journey.
Please let us know:
- Your name
- Your child's age
- Your preferred programme
Extensions
Handle invalid responses
Add an Else branch to the IF/ELSE action with:
- Send WhatsApp — ask the lead to reply with a valid option
- Go To — redirect back to the Wait For Reply step (set an iteration limit to prevent infinite loops)
Handle varied responses with AI
Add an AI Model action after Wait For Reply to interpret natural language responses (e.g., "I want Orchard", "Option 3", typos). Configure it to output keywords like $CHOSEN_ORCHARD, then update the IF/ELSE conditions to check the AI output.