From code to canvas
Before, a bot was a developer’s job. The goal was to hand it to the admin.
No builder. Bots meant writing code.
if (visitor.page == "/pricing") { reply("Hi! Need help with a plan?"); ask("How big is your team?"); route(answer > 10 ? sales : starter); }
A canvas. Admins drag blocks and publish.
Three ways to draw a conversation
We studied the no-code builders of the time. Each picked a different shape.
Linear list
Paths stacked in a flat list. Easy to read, harder to branch.
Free canvas
Blocks anywhere, joined by lines. Flexible, easy to get lost in.
Flowchart canvas
A clear top-down flow with branches. Structured enough to follow, open enough to grow.
Four kinds of blocks
Everything a bot can do, sorted into four families you drag from a side panel.
Says
Messages, buttons and carousels the visitor sees.
Does
Steps the bot takes, like handing over to an operator.
Collects
Details the bot asks for, like name, email or phone.
Connects
Where answers go: mailing lists, tickets, leads.
Three decisions that shaped it
A flowchart, not a script
Admins draw the conversation and SalesIQ builds the bot from it.
Defaults on every block
A bot works before it is fully customised, so the first one goes live in one sitting.
Website first
We launched on website chat and brought other channels in later.
Shipped, then it grew
No formal testing before launch. It was shaped by feedback once it was live.
No builder
Bots needed a developer.
SalesIQ 2.0
The codeless bot builder ships on website chat.
7 channels and counting
Templates, import and export, 30 languages, and Bring Your Own AI.
What I learned
“Defaults matter more than features.”
A bot that works before it is customised does more for a new admin than one more block type.