Use Cases
This page presents complete chatbot flow designs for common business scenarios. Each includes a flow diagram, node list, and expected business impact.
1. Customer Support FAQ Bot
Goal: Automatically answer common questions 24/7 so customers get instant help.
Trigger: Keyword — help, support, faq, menu
Flow diagram
┌─────────────┐
│ TRIGGER │
│ Keywords: │
│ help, faq │
└──────┬──────┘
▼
┌─────────────┐
│ LIST MENU │
│ "How can we │
│ help?" │
│ │
│ ▸ Shipping │
│ ▸ Returns │
│ ▸ Payments │
│ ▸ Hours │
│ ▸ Agent │
└──┬──┬──┬──┬─┘
│ │ │ │
▼ ▼ ▼ ▼
(Each row leads to a Text Message with the answer)
│
▼
┌─────────────┐
│ BUTTONS │
│ "Was this │
│ helpful?" │
│ [Yes] [No] │
└──┬──────┬───┘
│ │
▼ ▼
Thank Connect
you! to agent
Nodes used
- 1 Trigger (Keyword)
- 1 List Menu (5 options)
- 5 Text Messages (answers)
- 1 Interactive Buttons (feedback)
- 1 Contact & Lead (assign agent for "No" path)
- 2 End nodes
Business impact
- Reduces agent workload by handling repetitive questions
- Customers get instant answers instead of waiting
- Available 24/7
2. Lead Qualification Bot
Goal: Collect lead information and qualify prospects before assigning to sales.
Trigger: Keyword — interested, pricing, demo
Flow diagram
┌─────────────┐
│ TRIGGER │
└──────┬──────┘
▼
┌─────────────┐
│ QUESTION │
│ "What's your │
│ company?" │
│ → company │
└──────┬──────┘
▼
┌─────────────┐
│ QUESTION │
│ "Your budget │
│ range?" │
│ → budget │
└──────┬──────┘
▼
┌─────────────┐
│ QUESTION │
│ "Your email?"│
│ → email │
│ (validated) │
└──────┬──────┘
▼
┌─────────────┐ ┌──────────────┐
│ CONDITION │─ TRUE ─▶│ HOT LEAD │
│ budget > │ │ Tag: Hot Lead │
│ 50000 │ │ Assign Agent │
└──────┬──────┘ └──────────────┘
│ FALSE
▼
┌─────────────┐
│ WARM LEAD │
│ Tag: Warm │
│ Add to Group │
└─────────────┘
Nodes used
- 1 Trigger (Keyword)
- 3 Questions (company, budget, email)
- 1 Condition (budget check)
- 2 Contact & Lead actions (tag + assign)
- 1 HTTP Call (optional: send to CRM)
- 2 End nodes
Business impact
- Automates lead collection and qualification
- Sales team only gets pre-qualified leads
- Data goes directly into your system
3. Appointment Booking Bot
Goal: Let customers book appointments through a guided conversation.
Trigger: Keyword — book, appointment, schedule
Flow diagram
┌─────────────┐
│ TRIGGER │
└──────┬──────┘
▼
┌─────────────┐
│ LIST MENU │
│ "Select a │
│ service" │
│ ▸ Consultation│
│ ▸ Check-up │
│ ▸ Follow-up │
└──────┬──────┘
▼
┌─────────────┐
│ QUESTION │
│ "Preferred │
│ date?" │
│ → date │
└──────┬──────┘
▼
┌─────────────┐
│ QUESTION │
│ "Preferred │
│ time?" │
│ → time │
└──────┬──────┘
▼
┌─────────────┐
│ QUESTION │
│ "Your name?" │
│ → name │
└──────┬──────┘
▼
┌─────────────┐
│ HTTP CALL │
│ POST booking │
│ to your API │
└──────┬──────┘
▼
┌─────────────┐
│ MESSAGE │
│ "Booked! │
│ {{service}} │
│ on {{date}} │
│ at {{time}}"│
└──────┬──────┘
▼
┌─────────────┐
│ END │
└─────────────┘
Nodes used
- 1 Trigger (Keyword)
- 1 List Menu (service selection)
- 3 Questions (date, time, name)
- 1 HTTP Call (create booking)
- 1 Text Message (confirmation)
- 1 End node
Business impact
- Customers can book 24/7 without calling
- Reduces no-shows with instant confirmation
- Booking data flows directly to your system
4. Order Status Tracker
Goal: Let customers check their order status by entering an order number.
Trigger: Keyword — order, track, status
Flow diagram
┌─────────────┐
│ TRIGGER │
└──────┬──────┘
▼
┌─────────────┐
│ QUESTION │
│ "Enter your │
│ order │
│ number" │
│ → order_id │
└──────┬──────┘
▼
┌─────────────┐
│ HTTP CALL │
│ GET /orders/ │
│ {{order_id}} │
│ → status, │
│ tracking │
└──────┬──────┘
▼
┌─────────────┐ ┌──────────────┐
│ CONDITION │─ TRUE ─▶│ MESSAGE │
│ status is │ │ "Order found!│
│ not empty │ │ Status: │
└──────┬──────┘ │ {{status}}" │
│ FALSE └──────────────┘
▼
┌─────────────┐
│ MESSAGE │
│ "Order not │
│ found" │
└─────────────┘
Nodes used
- 1 Trigger (Keyword)
- 1 Question (order number)
- 1 HTTP Call (fetch order)
- 1 Condition (check if found)
- 2 Text Messages (found / not found)
- 2 End nodes
5. Product Recommendation Bot
Goal: Recommend products based on customer preferences using interactive menus.
Trigger: Keyword — shop, products, recommend
Flow diagram
┌─────────────┐
│ TRIGGER │
└──────┬──────┘
▼
┌─────────────┐
│ BUTTONS │
│ "Category?" │
│ [Electronics]│
│ [Fashion] │
│ [Home] │
└──┬──┬──┬────┘
│ │ │
▼ ▼ ▼
(Each button leads to a List Menu with products)
│
▼
┌─────────────┐
│ MPM │
│ Multi-Product│
│ Message with │
│ catalog items│
└──────┬──────┘
▼
┌─────────────┐
│ END │
└─────────────┘
6. Feedback Collection Bot
Goal: Collect customer feedback after a purchase or service.
Trigger: Manual or Webhook (triggered after order delivery)
Flow diagram
┌─────────────┐
│ TRIGGER │
│ (Manual) │
└──────┬──────┘
▼
┌─────────────┐
│ BUTTONS │
│ "Rate your │
│ experience" │
│ [Great] │
│ [Good] │
│ [Poor] │
└──┬──┬──┬────┘
│ │ │
▼ ▼ ▼
┌────┐┌────┐┌──────────┐
│Thx ││Thx ││ QUESTION │
│msg ││msg ││"What can │
│ ││ ││ improve?"│
└────┘└────┘└────┬─────┘
▼
┌──────────────┐
│ HTTP CALL │
│ Send feedback│
│ to system │
└──────────────┘
Business impact
- Gather honest feedback from real customers
- Identify areas for improvement
- Show customers you care about their experience
7. Re-engagement Bot
Goal: Re-engage inactive customers with a personalized message and offer.
Trigger: Manual (triggered for selected inactive contacts)
Flow diagram
┌──────────────┐
│ TRIGGER │
│ (Manual) │
└──────┬───────┘
▼
┌──────────────┐
│ GET DETAILS │
│ Fetch contact│
│ info │
└──────┬───────┘
▼
┌──────────────┐
│ TEMPLATE │
│ "We miss you,│
│ {{lead_name}}│
│ Here's 20% │
│ off!" │
└──────┬───────┘
▼
┌──────────────┐
│ END │
└──────────────┘
8. Approval Workflow
Goal: Send an approver (e.g. a manager) a request with an Approve button, and act on it when tapped — even when several requests are pending at once and approved out of order.
Pattern: Two flows working together — a sender flow and a handler flow triggered by the button click. The button payload carries the request ID so each approval stays independent.
Flow diagram
SENDER FLOW (runs when something needs approval)
┌───────────────────────────────┐
│ Set request_id (Script/Set) │
│ Interactive / Template msg: │
│ "Approve request {{id}}?" │
│ Button payload: │
│ approve_{{request_id}} │
│ ▶ Wait for reply: OFF │
└───────────────────────────────┘
│ (sends, then ends — no waiting)
▼
(approver taps the button later)
HANDLER FLOW
┌───────────────────────────────┐
│ TRIGGER: Button Click │
│ Match: Starts With approve_ │
│ Extract to Variable: │
│ approval_id │
└───────────────┬───────────────┘
▼
┌───────────────┐
│ HTTP Call │ Mark {{approval_id}} approved
└───────┬───────┘
▼
┌───────────────┐
│ Message │ "Request {{approval_id}} approved ✅"
└───────────────┘
Why it works
- Custom payload with a variable (
approve_{{request_id}}) makes every request's button unique, so the handler knows which request was approved. - Wait for reply: OFF on the sender means it doesn't leave a blocking conversation — so multiple pending approvals don't interfere with each other.
- Starts With + Extract to Variable lets one handler flow serve all requests, recovering the ID into
{{approval_id}}.
Nodes used
- Sender: Script/Set (set
request_id) → Interactive or Template Message (custom payload, Wait for reply off) - Handler: Button Click trigger (Starts With, extract) → HTTP Call → Message
Add Approve and Reject
Give each action its own payload and its own handler flow:
| Button | Payload | Handler trigger (Button Click) |
|---|---|---|
| Approve | approve_{{request_id}} | Starts With approve_ → extract id |
| Reject | reject_{{request_id}} | Starts With reject_ → extract id |
Each handler updates the record and replies accordingly. The same idea powers leave approvals, expense approvals, and order approvals — only the payload prefix and the action differ.
Business impact
Approvers clear requests in any order, right from WhatsApp, with no app to open. Each tap is processed independently and the correct record is updated automatically.
9. Social Comment Auto-Reply
Goal: Automatically reply to comments on your Facebook / Instagram posts and move interested people into a DM conversation.
Trigger: Post Comment — keyword price (Messenger, Instagram)
Flow diagram
┌──────────────────────┐
│ TRIGGER │
│ Post Comment │
│ Keyword: "price" │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ REPLY COMMENT │
│ "Thanks {{trigger. │
│ comment.author_ │
│ name}}! Check your │
│ DMs 📩" │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ MESSAGE (DM) │
│ "Here's our price │
│ list…" │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ CONTACT & LEAD │
│ Tag: Social Lead │
└──────────────────────┘
Nodes used
- 1 Trigger (Post Comment)
- 1 Reply Comment (public reply)
- 1 Message (private DM)
- 1 Contact & Lead (tag as social lead)
Business impact
- No comment goes unanswered, even outside business hours
- Turns public engagement into private, qualified conversations
- Works across Facebook and Instagram
10. Click-to-WhatsApp Ad Responder
Goal: Greet people who tap a Click-to-WhatsApp ad with a message tailored to the specific ad they came from.
Trigger: Ad Click (CTWA)
Flow diagram
┌──────────────────────┐
│ TRIGGER (Ad Click) │
└──────────┬───────────┘
▼
┌──────────────────────┐ ┌─────────────────────┐
│ CONDITION │─ TRUE ─▶│ TEMPLATE │
│ {{trigger.ad. │ │ "Your Summer Sale │
│ headline}} contains │ │ 20% code: SUMMER" │
│ "Summer Sale" │ └─────────────────────┘
└──────────┬───────────┘
│ FALSE
▼
┌──────────────────────┐
│ MESSAGE │
│ "Hi! Thanks for │
│ reaching out." │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ CONTACT & LEAD │
│ Tag: Ad Lead + │
│ save {{trigger.ad. │
│ ctwa_clid}} │
└──────────────────────┘
Nodes used
- 1 Trigger (Ad Click) — exposes
{{trigger.ad.headline}},{{trigger.ad.source_id}},{{trigger.ad.ctwa_clid}}, and more - 1 Condition (route by ad)
- 1 Template + 1 Message
- 1 Contact & Lead (tag + store ad click id)
Business impact
- Every ad gets a relevant first reply, lifting conversion
- Ad attribution (
ctwa_clid) is captured for reporting - One flow serves all your campaigns — branch by headline or campaign
11. WhatsApp Flow Lead Intake
Goal: Collect clean, structured information through a WhatsApp Flow form and create a qualified lead — no free-text parsing.
Trigger: WhatsApp Flow Submitted (select your form)
Flow diagram
┌──────────────────────┐
│ TRIGGER │
│ WhatsApp Flow │
│ Submitted │
│ → {{trigger.*}} │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ CONTACT & LEAD │
│ Create / update lead│
│ from form fields │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ HTTP CALL │
│ Push to your CRM │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ TEMPLATE │
│ "Thanks {{trigger. │
│ full_name}}, we'll │
│ be in touch!" │
└──────────────────────┘
Nodes used
- 1 Trigger (WhatsApp Flow Submitted) — every form field is available as
{{trigger.field_name}} - 1 Contact & Lead (create/tag)
- 1 HTTP Call (sync to CRM)
- 1 Template (confirmation)
Business impact
- Structured data with no typos or parsing
- Leads land in your CRM instantly
- Great for registrations, applications, and surveys
12. Smart Routing & Personalization
Goal: Route a customer based on several saved values at once, then build a personalized reply with a Script node.
Trigger: Keyword — start
Flow diagram
┌──────────────────────┐
│ TRIGGER (Keyword) │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ QUESTION → language │
│ QUESTION → city │
└──────────┬───────────┘
▼
┌──────────────────────┐
│ ROUTER │
│ Path A: language = │
│ hindi AND city = … │
│ Path B: language = │
│ english │
│ Default: fallback │
└──┬─────────┬──────────┘
▼ ▼
┌────────┐ ┌──────────────────┐
│ SCRIPT │ │ SCRIPT │
│ build │ │ build greeting │
│greeting│ │ → greeting │
└───┬────┘ └────────┬─────────┘
▼ ▼
┌──────────────────────┐
│ MESSAGE │
│ {{script_1.greeting}}│
└──────────────────────┘
Nodes used
- 1 Trigger (Keyword)
- 2 Questions (language, city)
- 1 Router (multi-variable AND/OR routing)
- Script nodes (compute a personalized greeting; output saved as
{{script_1.greeting}}) - 1 Message
Business impact
- Precise routing on multiple conditions, not just one
- Dynamic, personalized content without dozens of branches
- Reuses values captured earlier in the flow
Which flow should I build?
| Business type / need | Recommended flow |
|---|---|
| E-commerce | Order Status Tracker |
| Service business | Appointment Booking Bot |
| Real estate | Lead Qualification Bot |
| Restaurant | FAQ Bot with menu and ordering |
| Healthcare | Appointment Booking + FAQ |
| Education | Lead Qualification + Course Info Bot |
| Running social ads | Click-to-WhatsApp Ad Responder |
| Active on Facebook/Instagram | Social Comment Auto-Reply |
| Internal approvals | Approval Workflow |
| Forms & registrations | WhatsApp Flow Lead Intake |
| General | Customer Support FAQ Bot |
- Stateless triggers — give buttons a custom payload with a variable (
approve_{{id}}) and catch it with a Button Click trigger using Starts With / Contains / Regex and Extract to Variable. This powers approvals and any "act on a specific item" flow. - Don't block — turn Wait for reply off on a message whose buttons are handled by a separate trigger flow.
- Multi-channel — Post Comment and DM flows run on Facebook and Instagram, not just WhatsApp.
Pick one use case, build it, test it, and go live. Once you see results, expand to more complex flows — you can always link flows together using Button Click triggers for a multi-flow system.