Chatbot flows
A drag-and-drop canvas for building WhatsApp chatbots — no code. Connect message, logic, AI, and integration nodes, publish, and the flow runs automatically whenever an inbound message matches its trigger.
What the flow builder is
The flow builder lives in the dashboard under Automations. A flow is a small diagram: a Start node that defines the trigger, connected to a chain of nodes that send messages, ask questions, branch on conditions, call your systems, or hand over to a human. You build it by dragging blocks onto the canvas and drawing connections between them.
Once published, the flow runs on its own. When a customer's message matches the trigger, RichAutomate starts a flow run for that contact and walks them through the diagram step by step. Each contact gets their own independent run, so a hundred customers can be at a hundred different points in the same flow at once.
Messages a flow sends are billed like any other message on your plan — Client Pay at Rs 0.10 per message plus Meta conversation charges billed directly by Meta, or SaaS Pay at Rs 1.20 per marketing message and Rs 0.30 per utility message. See pricing for details.
Chatbot flows vs Meta-native WhatsApp Flows
Node types
These are the building blocks available on the canvas. Add them from the node menu, or drag a connection from any node's handle onto empty canvas to pick the next block in place.
| Node | Category | What it does |
|---|---|---|
| Start | Trigger | Every flow begins here. Choose how the flow starts: specific keywords, a reply to a WhatsApp template, any message, or a scheduled reminder. |
| Text | Messaging | Sends a plain text message, then continues to the next node. |
| Text + Button | Messaging | Sends a message with up to three quick-reply buttons. Each button gets its own outgoing branch. |
| Media | Messaging | Sends an image, video, or document, with an optional caption and buttons. |
| List | Messaging | Shows a tappable list menu of up to 10 options. Each row can branch to a different node. |
| Template | Messaging | Sends a Meta-approved template message — useful when the 24-hour service window may be closed. |
| AI Chat | AI | Free-form AI conversation grounded in a knowledge base, with a turn limit, fallback message, and escalation triggers (including a customer asking for a human). |
| AI Pathway | AI | Reads the customer message, classifies the intent with AI, and routes the contact to the matching pathway branch. |
| Data Collection | Data | Asks a question and saves the answer to a contact attribute. Validates the reply type (text, name, number, media, email, phone, URL, date, or date and time) and can re-ask with a retry message. |
| WhatsApp Form | Data | Sends a Meta-native multi-field form inside the chat and stores the submission against the contact. |
| Google Sheets | Data | Reads or writes rows in a connected Google Sheet — for example, appending each qualified lead as a new row. |
| Attribute | Data | Sets or updates a contact attribute, such as city or budget. |
| Tag | Data | Adds or removes a contact tag for segmentation and later campaign targeting. |
| Condition | Logic | Branches the flow on a rule: compares a contact attribute against a value and follows the matching path. |
| Time Delay | Logic | Pauses the flow for minutes, hours, or days before the next node runs. |
| Payment | Integration | Sends a secure payment request (Razorpay or WhatsApp Pay UPI) with configurable success and failure messages. |
| Webhook | Integration | Calls an external HTTP endpoint with a configurable method, headers, and body; can save part of the response into a contact attribute. |
| Agent Handoff | Integration | Hands the conversation to a human agent with a configurable handoff message, team assignment, and priority. |
| Restaurant Booking | Industry | A packaged table-booking journey: native booking form, table allocation, and advance payment collection. |
| Screen | Native builder | A screen container used by the Meta-native flow canvas. You will not normally place it in a chatbot flow. |
Building your first flow
- 1
Open the flows section
In the dashboard, go to Automations and open the flows list. You will see every flow with its status — DRAFT, ACTIVE, or INACTIVE — plus per-flow reports. - 2
Create a flow
Select Create Flow. A new draft flow is created and the builder canvas opens immediately. - 3
Set the trigger on the Start node
Every new canvas already contains a Start node, pre-set to a keyword trigger. Pick one of the four trigger types — specific keywords, template reply, any message, or scheduled reminder — and add the keywords your customers are likely to send (for example, hi, menu, price). - 4
Add and connect nodes
Drag a connection out of the Start node and drop it on empty canvas — the node menu opens so you can pick the next block in place. On nodes with buttons or list options, each choice has its own outgoing handle, so different answers can lead down different branches. - 5
Publish
Select Publish Flow in the builder header. The builder validates required fields first (for example, a message body on a button node, or the question and attribute on a Data Collection node) and then saves the flow as ACTIVE. - 6
Test it
From your own phone, send the trigger keyword to your connected business number and walk through every branch. Fix anything that reads oddly before announcing the bot to customers.
How triggers match inbound messages
The Start node supports four trigger types:
- Specific keywords — the flow starts when the customer's message exactly matches one of your keywords. Matching is case-insensitive and ignores surrounding spaces, but it is a whole-message match: hi matches Hi, but not hi there. Add the common variations you expect as separate keywords.
- WhatsApp template — starts when a customer responds to a specific template you sent, which is how a campaign hands replies off to a bot.
- Any message — starts on every inbound message that is not already part of a running flow. Useful as a catch-all welcome menu, but use it deliberately: it will respond to everything.
- Scheduled reminder — starts on a schedule based on contact data, with optional contact conditions, rather than on an inbound message.
Two rules keep behaviour predictable. First, one flow run per contact: while a contact is inside an active run, their replies are handled by the node they are currently on (a button tap, a list selection, an answer to a question) instead of starting another flow. Second, only one flow starts per message — if several active flows could match, the first match wins, so keep keyword sets distinct across flows.
Because flows respond to an inbound message, they usually operate inside the 24-hour customer-service window, where free-form messages are allowed. If a branch needs to re-engage a contact later — say after a long Time Delay — use a Template node, since Meta only delivers approved templates outside the window. See message templates.
Best practices
Always offer a way to reach a human. Put an Agent Handoff node behind a clearly labelled button or keyword in every flow. Nothing erodes trust faster than a bot with no exit — and the AI Chat node escalates automatically when a customer asks for a person.
Keep menus short. WhatsApp allows at most three quick-reply buttons per message and ten rows in a list. If you are tempted to go beyond that, split the choice across two steps or let an AI Pathway node route by intent instead.
Test with your own number first. Run every branch end to end — including the retry message on Data Collection nodes and the failure path on Payment nodes — before pointing real customers at the flow.
Collect data into attributes as you go. Answers saved with Data Collection or Attribute nodes become filters for campaigns and conditions for future flows, so name attributes consistently from day one.
Bots message real people — keep quality high
Stuck? Message us on WhatsApp at +91 74349 01027 or book a free 15-minute setup call on Calendly.