Skip to main content

Automation Flow Builder

Overview

The Whoxa CRM Automation Flow Builder is a visual, node-based chatbot engine. Business owners can design automated conversation flows that trigger on incoming WhatsApp messages and guide customers through multi-step interactions — without writing any code.

Flows are built using a drag-and-drop canvas (powered by React Flow). Each flow consists of nodes connected by edges.

Key Concepts

ConceptDescription
AutomationA named flow with a trigger type and a set of nodes/edges
NodeA single action or decision point in the flow
EdgeA connection between two nodes defining the execution path
TriggerThe event that starts the automation (e.g., first message from a contact)
SessionAn active instance of an automation running for a specific conversation
ExecutionA recorded run of a flow or individual node

Node Types

Message Node

Sends a WhatsApp message to the customer. Supports:

  • Text
  • Image, video, audio, document
  • Interactive buttons
  • Interactive list

Button Card Node

Sends a message with up to 3 quick-reply buttons. Each button connects to a different next node based on customer's tap.

Condition Router Node

Evaluates a condition and routes to different branches:

  • Variable equals/contains value
  • Contact field matches
  • Time-based conditions

Contact Form Node

Collects information from the customer (name, email, phone) and saves it to their contact record.

API Call Node

Makes an outbound HTTP request to an external service during the flow:

  • Supports GET / POST
  • Can inject response values as flow variables
  • Used for order lookups, CRM sync, etc.

Delay Node

Pauses the flow execution for a configured duration before proceeding to the next node. Useful for spacing out messages.

Agent Transfer Node

Ends the automated flow and assigns the conversation to a human agent. Sends a handoff notification.

AI Transfer Node

Routes the conversation to the configured AI model for intelligent, context-aware responses.

Fallback Node

Handles unrecognized or unexpected input. Sends a fallback message and optionally retries the previous node.

Create an Automation

  1. Go to Automation in the left sidebar.
  2. Click Create Automation.
  3. Fill in:
    • Name — descriptive name (e.g., "New Customer Welcome")
    • Trigger type — when should this flow start
    • Status — Active or Inactive
  4. Click Create.
  5. The flow canvas opens. Drag nodes from the left panel onto the canvas.
  6. Connect nodes by dragging from one node's output handle to another's input handle.
  7. Click any node to configure it (message text, button labels, conditions, etc.).
  8. Click Save Flow when done.

Subscription Limit

The number of active automations is limited by your plan (automation_limit). The system blocks creation when the limit is reached.

How Flows Execute

When an inbound message arrives via webhook:

  1. The webhook handler checks if there is an active automation session for the conversation.
  2. If a session exists → continue the flow from the last node.
  3. If no session and trigger type matches → start a new session and execute from the first node.
  4. If no automation matches → fall back to default messages (welcome, out-of-hours, delayed reply).

Each node execution is logged for debugging and analytics.

Template-Based Automations

Pre-built automation templates are available in the Automation Templates library. You can import a template and customise it instead of building from scratch.

Go to Automation → Templates to browse available options.

Best Practices

  • Keep flows short — aim for under 7 nodes before a human transfer.
  • Always add a Fallback Node to handle unexpected replies.
  • Use Delay Nodes between messages to avoid message flooding.
  • Test flows using a personal WhatsApp number before going live.
  • Give clear, numbered options in Button/List nodes (customers prefer structured choices).
  • Use API Call Nodes to personalise responses with live data (order status, account info).