Skip to main content

Flow Builder Basics

The flow builder is a visual, no-code tool for building automation sequences. With 22 node types, you can create complex workflows that handle cart recovery, order confirmations, lead qualification, and more.

What is a Flow?

A flow is a sequence of actions triggered by an event. For example:

Trigger: Customer abandons cart Action 1: Send WhatsApp reminder after 1 hour Action 2: Send email with discount after 24 hours Action 3: Send SMS final nudge after 72 hours End: Tag contact as "cart_recovery_attempted"

Node Types

Msghub flows have 22 node types organized into 4 categories:

Triggers (6 types)

Events that start a flow:

  1. Cart Abandoned — Customer leaves items in cart
  2. Order Shipped — Order status changes to shipped
  3. New Signup — New customer signs up
  4. Webhook — External system triggers flow
  5. Scheduled — Flow runs at specific time
  6. Keyword — Customer messages specific keyword

Actions (8 types)

Things the flow does:

  1. Send SMS — Send SMS message
  2. Send WhatsApp — Send WhatsApp message
  3. Send Email — Send email message
  4. Send RCS — Send RCS message
  5. API Call — Call external API
  6. AI Response — Get response from AI chatbot
  7. Assign Agent — Assign to human agent
  8. Update Contact — Update contact properties

Logic (6 types)

Decision-making and flow control:

  1. If/Else — Conditional branching
  2. AI Decision — AI analyzes context and decides
  3. Wait — Pause for specified duration
  4. Random Split — A/B testing (50/50 split)
  5. Loop — Repeat actions
  6. Go To — Jump to another node

Other (2 types)

  1. Apply Tag — Add tag to contact
  2. End — End the flow

Create Your First Flow

Step 1: Create Flow

  1. Go Flows → New Flow
  2. Enter flow name: "Cart Recovery"
  3. Click Create

Step 2: Add Trigger

  1. Click Add Node
  2. Select Triggers
  3. Choose Cart Abandoned
  4. Configure:
    • Delay — How long after abandonment? (1 hour)
  5. Click Save

Step 3: Add First Action

  1. Click Add Node (below trigger)
  2. Select Actions
  3. Choose Send WhatsApp
  4. Configure:
    • Message — "Hey! You left items in your cart. Here's 10% off to complete your order"
    • Template — Select template or write message
  5. Click Save

Step 4: Add Wait

  1. Click Add Node
  2. Select Logic
  3. Choose Wait
  4. Configure:
    • Duration — 24 hours
  5. Click Save

Step 5: Add Second Action

  1. Click Add Node
  2. Select Actions
  3. Choose Send Email
  4. Configure:
    • Subject — "Your cart is waiting"
    • Body — Email with discount code
  5. Click Save

Step 6: Add Another Wait

  1. Click Add Node
  2. Select Logic
  3. Choose Wait
  4. Configure:
    • Duration — 48 hours
  5. Click Save

Step 7: Add Final Action

  1. Click Add Node
  2. Select Actions
  3. Choose Send SMS
  4. Configure:
    • Message — "Last chance! Your 10% off expires tonight"
  5. Click Save

Step 8: Add Tag

  1. Click Add Node
  2. Select Other
  3. Choose Apply Tag
  4. Configure:
    • Tag — "cart_recovery_attempted"
  5. Click Save

Step 9: Save Flow

  1. Click Save Flow
  2. Your flow is now active!

Trigger Types

Cart Abandoned

Triggered when customer abandons cart.

Configuration:

  • Delay — How long after abandonment? (default: 1 hour)
  • Minimum cart value — Only trigger if cart value exceeds threshold (optional)

Example: Trigger after 1 hour if cart value > $50

Order Shipped

Triggered when order status changes to shipped.

Configuration:

  • Delay — How long after shipment? (default: immediate)

Example: Send tracking link immediately after shipment

New Signup

Triggered when new customer signs up.

Configuration:

  • Delay — How long after signup? (default: immediate)

Example: Send welcome email immediately after signup

Webhook

Triggered by external system via webhook.

Configuration:

  • Webhook URL — Msghub provides this
  • Expected data — What data will the webhook send?

Example: Your e-commerce platform sends webhook when customer makes purchase

Scheduled

Triggered at specific time.

Configuration:

  • Time — When to trigger? (e.g., 9 AM every Monday)
  • Frequency — Once, daily, weekly, monthly

Example: Send weekly newsletter every Monday at 9 AM

Keyword

Triggered when customer messages specific keyword.

Configuration:

  • Keyword — What keyword triggers flow? (e.g., "REFUND")
  • Channel — Which channel? (SMS, WhatsApp, etc.)

Example: When customer texts "REFUND", trigger refund flow

Action Types

Send SMS

Send SMS message.

Configuration:

  • Message — SMS text (up to 160 characters)
  • Delay — When to send? (immediate or scheduled)

Example: "Your order has shipped! Track it here: [link]"

Send WhatsApp

Send WhatsApp message.

Configuration:

  • Template — Select approved template
  • Parameters — Fill in template variables
  • Delay — When to send?

Example: Send order confirmation template with order number

Send Email

Send email message.

Configuration:

  • Subject — Email subject
  • Body — Email content (HTML or plain text)
  • Delay — When to send?

Example: Send promotional email with discount code

Send RCS

Send RCS message.

Configuration:

  • Card Type — Rich card or carousel
  • Content — Card content, images, buttons
  • Delay — When to send?

Example: Send product carousel with images and prices

API Call

Call external API.

Configuration:

  • URL — API endpoint
  • Method — GET, POST, PUT, DELETE
  • Headers — API headers
  • Body — Request body (JSON)

Example: Call your CRM API to update customer record

AI Response

Get response from AI chatbot.

Configuration:

  • Prompt — What to ask the AI?
  • Context — What context to provide?

Example: "Generate a personalized product recommendation for this customer"

Assign Agent

Assign conversation to human agent.

Configuration:

  • Agent — Which agent? (or auto-assign)
  • Priority — High, normal, low
  • Message — Message to agent

Example: "Escalate to agent for refund approval"

Update Contact

Update contact properties.

Configuration:

  • Property — Which property to update?
  • Value — New value

Example: Update contact's "last_purchase_date" to today

Logic Types

If/Else

Conditional branching.

Configuration:

  • Condition — What to check? (e.g., "cart value > $100")
  • If true — What to do if condition is true?
  • If false — What to do if condition is false?

Example:

If cart value > $100:
Send WhatsApp with 15% discount
Else:
Send SMS with 10% discount

AI Decision

AI analyzes context and decides.

Configuration:

  • Context — What data to analyze?
  • Decision options — What are the possible outcomes?

Example:

AI analyzes customer history and decides:
- High-value customer → Send WhatsApp with 20% discount
- Standard customer → Send SMS with 10% discount
- New customer → Send email with welcome offer

Wait

Pause for specified duration.

Configuration:

  • Duration — How long to wait? (hours, days, weeks)

Example: Wait 24 hours before sending follow-up

Random Split

A/B testing (50/50 split).

Configuration:

  • Option A — First path (50% of contacts)
  • Option B — Second path (50% of contacts)

Example:

50% get 10% discount
50% get 15% discount
Compare which converts better

Loop

Repeat actions.

Configuration:

  • Count — How many times to repeat?
  • Delay — Delay between repetitions?

Example: Send reminder 3 times, 24 hours apart

Go To

Jump to another node.

Configuration:

  • Target node — Which node to jump to?

Example: Jump back to "Wait 24 hours" node to repeat

Flow Examples

Cart Recovery

Trigger: Cart Abandoned (after 1 hour)

Send WhatsApp: "Hey! You left items in your cart. Here's 10% off"

Wait: 24 hours

Send Email: "Your cart is waiting. Complete your order"

Wait: 48 hours

Send SMS: "Last chance! Your 10% off expires tonight"

Apply Tag: "cart_recovery_attempted"

Order Confirmation

Trigger: Order Placed

Send WhatsApp: Order confirmation template

Wait: 2 hours

If delivery address is valid:
Send SMS: Tracking link
Else:
Assign Agent: "Verify address"

Apply Tag: "order_confirmed"

Lead Qualification

Trigger: New Signup

Send Email: Welcome email

Wait: 24 hours

AI Decision: Analyze signup data
├─ High-intent → Send product demo link
├─ Medium-intent → Send FAQ
└─ Low-intent → Send newsletter signup

Apply Tag: "lead_qualified"

Best Practices

Keep Flows Simple

  • Start with simple flows (3-5 nodes)
  • Add complexity gradually
  • Test before deploying

Use Meaningful Names

  • "Cart Recovery" not "Flow 1"
  • "Order Confirmation" not "Automation"
  • "Lead Qualification" not "Workflow A"

Test Flows

  1. Create test contact
  2. Manually trigger flow
  3. Verify each step works
  4. Check messages are correct
  5. Deploy to production

Monitor Performance

  1. Go Analytics → Flows
  2. See:
    • Completion rate
    • Drop-off points
    • Conversion rate
  3. Optimize based on data

Troubleshooting

Flow not triggering

  1. Check trigger — Is it configured correctly?
  2. Check conditions — Are conditions being met?
  3. Check flow status — Is flow enabled?

Messages not sending

  1. Check action — Is it configured correctly?
  2. Check channel — Is the channel connected?
  3. Check content — Is the message valid?

Flow stuck

  1. Check wait nodes — Are durations correct?
  2. Check loops — Are they terminating?
  3. Check conditions — Are they evaluating correctly?

See Also