Message Bots are stateless. They don’t remember that they replied to this contact a minute ago, and they don’t continue the conversation. If you need a multi-step back-and-forth, use a Bot Flow.
What a Message Bot can send
A single outgoing message that contains:- Reply text — the body of the message.
- Header (optional) — short text shown above the body.
- Footer (optional) — short text shown below the body.
- Up to three buttons — quick-reply buttons (
button1,button2,button3). Each button just echoes its label back as a message — it does not branch the conversation like a Bot Flow does.
Create a Message Bot
Go to Automations → Message Bots and click Create.
Name it
Give the bot an internal name — e.g. “Business hours reply” or “Price list auto-answer”. Customers never see this.
Pick who it applies to
Choose Lead or Customer — the bot will only fire when the contact has that relationship type.
Enter keywords
For exact-match and contains-match types, enter one or more keywords separated by commas. Leave empty for the other two types.
Write the reply
Type the reply text. Optionally add a header, footer, and up to three quick-reply buttons.
The four trigger types
Every Message Bot uses one of these four rules to decide whether to fire:| ID | Name | When it fires | Keywords field |
|---|---|---|---|
| 1 | On exact match | The incoming message equals a keyword exactly (whitespace trimmed) | Required — comma-separated keywords |
| 2 | When message contains | The incoming message contains any of the keywords as a substring | Required — comma-separated keywords |
| 3 | On first message | The contact is messaging your business for the first time | Ignored |
| 4 | If no keyword matches | Nothing else caught this message — the fallback | Ignored |
Examples
Exact match — 'hours'
Exact match — 'hours'
- Reply type: 1 (on exact match)
- Keywords:
hours, timings, open - Fires only when the customer sends exactly “hours”, “timings”, or “open”.
Contains match — greetings
Contains match — greetings
- Reply type: 2 (when message contains)
- Keywords:
hi, hello, hey - Fires for “hi”, “hi there”, “hello team”, “hey guys” — anything containing any of those words.
First message greeting
First message greeting
- Reply type: 3 (on first message)
- Keywords: leave blank
- Fires the first time a lead or customer ever messages your workspace.
Fallback reply
Fallback reply
- Reply type: 4 (if no keyword matches)
- Keywords: leave blank
- Fires when none of your other bots caught the message. Useful as a polite “A team member will get back to you” message.
Personalising the reply
Inside the reply text, header, and footer, you can insert any of these merge fields — they’ll be replaced with real values when the bot runs:Buttons
You can add up to three quick-reply buttons. Each button is just a label — when the customer taps it, WhatsApp sends the label back as their next message. This means you can chain a button press into another bot:- Message Bot A replies with buttons “Pricing”, “Support”, “Hours”.
- Message Bot B has trigger type 1 (exact match) with keyword
Pricing— it fires when the customer taps the first button.
Each button label can be up to 20 characters — the WhatsApp limit.
Activating and deactivating
Each Message Bot has an active / inactive toggle on its row. When inactive:- The bot’s configuration is kept.
- It will not fire on incoming messages.
- You can re-enable it at any time without re-entering anything.
Cloning
Use Clone to duplicate an existing bot. You get a copy you can then rename and tweak. Useful when you want near-identical bots for Lead vs Customer.Execution order
When a message comes in, Xobito checks automations in a defined order:- Bot Flows (if any is active and matches)
- Message Bots (if no Bot Flow caught it)
- Default greeting / away message (if configured)
Permissions
To manage Message Bots, a staff member needs one or more of:| Permission | Allows |
|---|---|
tenant.message_bot.view | See the Message Bot list |
tenant.message_bot.create | Create new bots |
tenant.message_bot.edit | Edit existing bots |
tenant.message_bot.delete | Delete bots |
tenant.message_bot.clone | Clone an existing bot |
Feature availability
Message Bots require themessage_bots feature on your subscription. If the Message Bots link is missing from the sidebar, your plan doesn’t include them.
What to read next
Template Bots
Send an approved WhatsApp template on a trigger.
Bot Flows
Branching multi-step conversations with media and APIs.