BOT FLOW BUILDER

Describe your bot, or build it by hand — either way it stays yours to read.

A visual canvas for WhatsApp and Messenger automations — 30+ node types you drag, connect, and read top to bottom. Send a message, ask a question, branch on the answer, call your own API, log a lead, book a slot. Or type a plain-English description and let AI draft the whole flow onto the canvas for you to review and edit. The builder is on every plan — no per-flow add-on gate.

app.whatsmark.io/automation/flows/new

Start Trigger

Shopify: Cart abandoned

Text Message

Send a plain text reply

Hi {{contact.first_name}}, you left something in your cart! 🛒

📋 Items: {{order.items_summary}}

💰 Total: {{order.total}}

Start on WhatsApp, expand when you are ready

Built for WhatsApp first — Messenger and Instagram when you need them.

WhatsMark runs your marketing, sales, and support on WhatsApp today. Add Messenger and Instagram to the same shared inbox and automations whenever you want — no new tool, no re-platforming.

WhatsApp
WhatsApp

Broadcasts, chatbots, templates, and a shared team inbox — on the official Cloud API.

Live
Facebook Messenger
Messenger

Campaigns, instant templates, and automation straight from your Facebook Page.

Live
Instagram
Instagram

DM automation and campaigns for Instagram — landing soon.

Coming soon

Sound familiar?

Three things every D2C team already lives with

Bot builders gate the actual builder

The pricing page advertises "no-code chatbot" — then you sign up and discover the flow builder itself is a paid add-on (AiSensy), or capped at one bot on the entry plan (BotPenguin), or charged per agent seat that touches the flow (WATI). The thing the page sold you isn't in the plan you bought. WhatsMark puts the builder on every plan, no add-on.

"AI chatbot" usually means an LLM you can't control at runtime

Vendors slap "AI" on the page, then when a customer asks about a refund the bot improvises an answer that contradicts your policy — and you can't audit what it said or replay why. WhatsMark uses AI in the one place it's safe: to *draft* a flow you then read and edit. At runtime the bot follows the exact deterministic path you approved, not a live model's guess.

Flows that can't reach your other systems are toys

A bot that asks "what's your order ID?" and then can't actually look up the order is a five-minute demo, not a working bot. Real flows need to call your CRM, your order system, your calendar — and route cleanly based on what comes back. That's what the API Request and Logic Control nodes are for.

The four pieces

What you actually need to run WhatsApp marketing at scale

AI drafts the flow — you review and edit every node

Type a plain-English description ("book appointments for my clinic") and AI generates a complete, ready-to-edit flow on the canvas — nodes, questions, branches and all. It is a reviewable starting point, never an unattended runtime: you open every node, adjust the copy and logic, then publish. AI Flow Generation is on Professional and Reseller plans.

A real node vocabulary — 33 step types, honest names

Drag nodes onto the canvas and read the flow top to bottom. Message types (Text, Button, List, Call To Action, Media, Location, Contact Card, WhatsApp Template, Messenger Template, Reaction), Ask nodes (Question, Phone, Email, Address, Location, Media), logic (Condition, Logic Control, Delay, Wait Timer, Wait For Reply, Connect Flow, Sequence), and data actions (Update Contact, Update Custom Field, Assign Label, Assign Group, API Request, Save Response, Google Sheets, Calendar Event). No premium-only nodes.

Route on the answer, a saved variable, a custom field, or an API result

The Condition node gives a clean two-way yes/no split on the reply text (contains, equals, starts-with, ends-with, or regex). Need more? The Logic Control node routes many ways at once — first matching rule wins, with a mandatory fallback so you can never build a dead end. It can branch on a saved variable, a contact custom field, or a value returned by an earlier API Request — not just the last message.

API Request node — call your own systems mid-flow

The API Request node makes an outbound HTTP call in the middle of a conversation: GET an order status, POST a qualified lead, look up a slot in your calendar, verify a coupon against your backend. The response is stored, and the Save Response node maps its fields into named variables that downstream nodes and Logic Control can read. Full request/protocol detail lives on the webhooks & API page.

Scenario 01 / Abandoned cart recovery (e-commerce)

Cart abandoned, the bot offers a coupon, an API call applies it.

A customer abandons checkout on your Shopify store. The store event fires the flow's Trigger. The bot opens with "Hi {{contact.first_name}}, you left an item in your cart — want a coupon?" and a Button Message (Yes, apply it / No, just save it). On Yes, an API Request node calls your discount endpoint and returns the recovery link. A Delay node paired with a Sequence step lets the flow follow up later if there's no reply — then exit cleanly. No spam, no loop.

  • Trigger node with a Shopify store-event source (cart / order events are first-class)
  • Button Message captures intent in one tap (up to 3 buttons — WhatsApp's own cap)
  • API Request node calls your discount API; Save Response maps the recovery URL into a variable
  • Delay + Sequence for a timed nudge, then the flow self-terminates instead of looping
9:41
WhatsMark
WhatsMark.io

online

Hi Aanya 👋 You left an item in your cart — want a coupon to finish checkout?

Yes, apply it
No, just save it

7:02 PM ✓✓

Yes, apply it

7:03 PM

🎉 Done! Code SAVE10 is applied — 10% off your order. Tap below to pick up right where you left off.

Complete Checkout

7:03 PM ✓✓

Complete Checkout

7:04 PM

All set — order #ORD-7742 is confirmed 🛍️ We’ll send tracking updates right here.

7:04 PM ✓✓

Scenario 02 / Appointment booking (healthcare)

Patient books a slot, an API call checks the calendar, the bot confirms it.

A patient messages "book appointment" to a multi-doctor clinic. The bot asks which doctor (List Message — up to 10 options), then asks for a preferred date (Ask Question, saved as {{date}}), and calls the clinic's system via an API Request to fetch open slots. It offers up to three (List Message) and, on selection, a second API Request books the slot — or the Calendar Event node writes it straight to Google Calendar and invites the patient. If no slots come back, Logic Control routes to a "call reception" message with the number.

  • List Message offers doctors and slots (max 10 rows — a WhatsApp platform cap, same for every tool)
  • Variables carry {{doctor}}, {{date}}, {{slot}} across the whole flow
  • API Request reads availability; Calendar Event writes a Google Calendar booking and invites the patient
  • Logic Control routes to a reception fallback when zero slots come back
9:41
WhatsMark
WhatsMark.io

online

book appointment

9:02 AM

Sure — which doctor would you like to see? Tap one from the list.

9:02 AM ✓✓

Dr. Mehra (Cardiology)

9:03 AM

Got it. What date works for you? (e.g. 12 May)

9:03 AM ✓✓

12 May

9:04 AM

Dr. Mehra has three slots open on 12 May — pick one and I'll book it.

10:30 AM
12:00 PM
4:15 PM

9:04 AM ✓✓

10:30 AM

9:05 AM

Booked — 12 May, 10:30 AM with Dr. Mehra. A reminder will go out 24h before.

9:05 AM ✓✓

Scenario 03 / Reusable sub-flows (agencies & teams)

Build "book appointment" once, call it from every flow — up to five levels deep.

You build a booking flow, a lead-capture flow, and an FAQ flow. Instead of copy-pasting the booking logic into three parent flows, you drop a Connect Flow node that runs your booking flow as a reusable sub-flow and returns when it's done — nested up to five levels deep. Fix the booking logic in one place and every flow that calls it updates. Agencies run each client as its own fully isolated WhatsMark workspace, and the Reseller plan lifts the flow cap to unlimited so you can build as many as each brand needs.

  • Connect Flow runs another flow as a sub-flow and comes back — build once, reuse everywhere
  • Sub-flows nest up to 5 levels deep; self-reference is blocked so you can't loop by accident
  • Each client is its own isolated workspace — flows, variables, and API endpoints never cross
  • Reseller plan = unlimited flows; Professional = 15; Free = 1 (the builder itself is on every plan)
9:41
WhatsMark
WhatsMark.io

online

Do you offer teeth whitening?

4:20 PM

Yes! Teeth whitening is ₹4,999 and takes about 45 minutes. Want to book a slot?

Book Appointment
Not now

4:20 PM ✓✓

Book Appointment

4:21 PM

Great — here are the next open slots 📅 Pick one and I’ll book it.

Tue 10:30 AM
Wed 3:00 PM
Fri 5:15 PM

4:21 PM ✓✓

Tue 10:30 AM

4:22 PM

✅ Booked — teeth whitening, Tue 10:30 AM. We’ll send a reminder 24h before.

4:22 PM ✓✓

What your customers see

Pre-built flow starters clone, tweak, ship — or let AI draft a new one.

Real WhatsApp threads — drop them straight into your account or use them as starting templates.

Abandoned cart recovery (Shopify trigger)
9:41
WhatsMark
WhatsMark.io

online

Hi Aanya, you left a slate-grey kurta in your cart — want me to apply a 10% off coupon?

Yes, apply it
No, just save it

6:42 PM ✓✓

Yes, apply it

6:43 PM

Done — coupon NORTH10 is attached to your cart. Tap below to check out, valid for 24 hours.

6:43 PM ✓✓

https://northstar.shop/cart/recover/9912

6:43 PM ✓✓

Appointment booking with API + Calendar
9:41
WhatsMark
WhatsMark.io

online

book appointment

11:12 AM

Which doctor would you like to see?

11:12 AM ✓✓

Dr. Iyer (Dermatology)

11:13 AM

What date works for you?

11:13 AM ✓✓

14 May

11:14 AM

Three slots open on 14 May with Dr. Iyer — pick one.

11:00 AM
2:30 PM
5:45 PM

11:14 AM ✓✓

2:30 PM

11:15 AM

Booked — 14 May, 2:30 PM with Dr. Iyer. Reminder 24h before. Reply CANCEL to release the slot.

11:15 AM ✓✓

Order tracking with an API lookup
9:41
WhatsMark
WhatsMark.io

online

track

4:08 PM

What's your order ID?

4:08 PM ✓✓

HX-22107

4:09 PM

Your order is currently out for delivery. ETA today between 6 PM and 8 PM.

4:09 PM ✓✓

Anything else I can help with?

Return
Track again
No, thanks

4:09 PM ✓✓

Integrations

Plays well with what you already use

Connect natively where we have direct adapters. Use webhooks or our REST API for everything else. Honest status flags — we don't pretend an integration ships when it doesn't.

Sh

Shopify

Store-event triggers (cart, orders)

Available
Wo

WooCommerce

Store-event triggers

Available
Go

Google Sheets

Append a row from a flow (Google Sheets node)

Available
Go

Google Calendar

Create an event from a flow (Calendar Event node)

Available
An

Any REST API / CRM

Outbound calls via the API Request node (HubSpot, Zoho, Salesforce, custom)

Via API / Webhook

By the numbers

Specific, defensible, no fabricated stats.

Node types on the canvas

30+

Messages, questions, branching, delays, sub-flows, sequences, and data actions — a real automation vocabulary

Flow builder access

Every plan

No add-on, no premium gate — Free 1 flow · Professional 15 · Reseller unlimited

Sub-flow nesting depth

Up to 5

Build a flow once with Connect Flow and reuse it inside others, up to five levels deep

FAQ

Common questions, honest answers

Don't see your question? Email me at mailto:[email protected] — I read and answer every one personally.

A visual editor where you compose a chatbot conversation by dragging nodes onto a canvas and wiring them together. Each node is one step — send a message, ask a question, branch on the reply, call an API, update a contact. The bot follows whichever path you authored, top to bottom. No code, no scripting language, and no LLM deciding replies at runtime — just a deterministic flow you can read and audit.

Yes — AI Flow Generation lets you type a plain-English description ("book appointments for my salon") and get a complete draft flow on the canvas: nodes, questions, and branches already wired. It's a starting point you review and edit, not an autonomous agent — you open each node, adjust the copy and logic, then publish. AI Flow Generation is included on Professional and Reseller plans (it's off on Free).

Yes — that's the whole point of the canvas. The only place "code" enters is when you configure an API Request node, and even there you're filling in a URL, headers, and a JSON body, not writing a function. If you can build a Zapier zap, you can build a WhatsMark flow. Or skip that entirely and let AI draft the first version for you.

Two ways. The Condition node is a clean two-way yes/no split on the last reply text, matched by contains, equals, starts-with, ends-with, or regex — and it requires both branches to be connected, so you can't accidentally build a dead end. For richer routing, the Logic Control node checks many rules in order (first match wins, with a mandatory fallback) and can branch on a saved variable, a contact custom field, or a value returned by an earlier API Request — not just the message text.

Yes — the API Request node makes an outbound HTTP call mid-flow (GET/POST/PUT/PATCH/DELETE) and passes variables you've captured — order ID, phone, replies — in the request. The Save Response node then maps fields out of the response into named variables you use downstream: show them in a message, branch on them with Logic Control, or pass them to the next call. Common patterns: fetch order status, look up a contact, check availability, verify a coupon, push a lead. Full protocol detail lives on the webhooks & API page.

Honestly: there isn't a single "escalate" node on the canvas today. The pattern most teams use is a fallback branch — when the flow hits its limit (user asks for a person, or an API call fails), it sends a "let me get someone to help" message and stops the automation, and the conversation is already sitting in your shared team inbox for an agent to pick up. Agents can also start a flow on a live conversation from the inbox. A dedicated in-canvas escalate-to-agent node is on our roadmap, not shipped yet — so we won't claim one that isn't there.

Different things, despite the shared word. Meta's WhatsApp Flows is a form widget that opens inside a chat — date pickers, dropdowns, multi-page forms — collects structured data, then closes. Our bot flow builder is the conversation engine — the bot that decides what to send, when to branch, when to call your API, what to do next. The two are complementary; WhatsMark ships the interactive WhatsApp Flows product as its own feature, and the bot flow builder is where you author the conversation around it.

Yes — variables. The Ask Question (and related Ask) nodes save the reply to a named variable. That variable is then available downstream: substitute it into a message, pass it to an API Request, or evaluate it with the Logic Control node. The Save Response node does the same for API responses — pulling specific fields out of a JSON reply into variables you can reuse.

A flow begins at its Trigger node. Message triggers fire on an exact keyword match, when a message contains a keyword, on a contact's first-ever message, or as a catch-all fallback when nothing else matches. Flows can also start from store events — Shopify and WooCommerce cart and order events are first-class trigger sources, so a flow can react to an abandoned cart or a new order, not just an inbound message.

Yes — starter flows like abandoned-cart recovery, appointment booking, and order tracking that you clone into your account and edit to match your backend and copy. They're starters, not the catalog — the real catalog is whatever you build on the canvas, and AI Flow Generation can draft a brand-new one from a sentence.

The builder is on every plan, with no add-on and no per-agent fee — the only thing that scales is how many flows you can save at once: 1 on Free, 15 on Professional, unlimited on Reseller. Compare that with AiSensy (a paid Flow Builder add-on after the trial), BotPenguin (capped bots on lower plans), or WATI's per-user laddering. Meta's per-conversation charges still apply at 0% markup, same as everywhere else on the platform.

Not ready to start today?

Get the WhatsApp automation starter kit —
the flows every business should run.

No spam — just the starter kit in your inbox.