
How to Build a WhatsApp Chatbot — Complete 2026 Tutorial for SMBs
WhatsApp is the dominant SMB messaging channel in Brazil, Mexico, LATAM, India, Spain, and increasingly in Europe. If your audience uses WhatsApp, a WhatsApp chatbot is usually the highest-leverage automation an SMB can deploy. This tutorial walks through what you need to know about the WhatsApp Business API, how to choose between BSP-certified and non-BSP-certified platforms, and how to ship a working WhatsApp chatbot in 20-40 hours including Meta-side template approval.
Where we've tested the WhatsApp-specialist platforms — Wati, AiSensy, SendPulse, Manychat — on our six-scenario protocol, the observations inform these recommendations. For platforms with partial hands-on coverage, recommendations draw on vendor positioning, BSP directory verification, and comparable-platform measurements per our editorial methodology. Setup-step timing reflects what we observed during testing, anchored to vendor documentation where direct measurement was not feasible.
Before you start: WhatsApp Business app vs WhatsApp Business API
Most SMB owners confuse these two products. They're different, and the difference matters:
WhatsApp Business app is the free mobile app Meta offers for small businesses. It supports business profile, away messages, quick replies, and broadcast lists to up to 256 contacts. It does NOT support chatbots, automation beyond simple auto-replies, multi-user agent inbox, or integration with external platforms. If your team is 1-2 people answering WhatsApp manually, this app is sufficient.
WhatsApp Business API is the programmatic interface that allows chatbots, multi-agent inbox, broadcasts at scale, ad integration, and CRM connection. Access requires going through a WhatsApp Business Solution Provider (BSP). Cost has a base subscription (typically $19-100/month for SMB platforms) plus Meta's per-message messaging fees. Since July 2025 Meta charges per delivered template message (not per 24-hour conversation), and user-initiated service messages inside the 24-hour window are free. See the WhatsApp Business API pricing calculator to model your own volume.
You need the API for any real chatbot deployment. This tutorial focuses on the API path. If you're not ready for the API and just want simple auto-replies, the Business app is fine.
Step 1: Choose your BSP platform
A WhatsApp Business Solution Provider (BSP) is a Meta-certified platform that gives you API access. Working with a BSP-certified platform vs going through Meta's Cloud API directly has three practical advantages: template approval is faster (24-48 hours vs 5-7 days), platform support handles Meta-side issues, and you don't need to manage Meta's Business Manager directly.
Our recommendations for SMB WhatsApp deployments, based on hands-on testing:
Wati — strongest overall WhatsApp-specialist platform. EU-friendly pricing in EUR, mature visual builder, deep Meta BSP partnership. Best for SMBs in Europe + LATAM. Monthly-billed entry tier €69/month for ~5000 contacts.
AiSensy — best India-market localization. Lower entry-tier pricing than Wati (~$25/month India-priced equivalent). Best for SMBs primarily serving India + South Asia. Pro+AI tier includes Project APIs and Smart Agent Routing.
Manychat — strong if WhatsApp is one of several channels you want (also Instagram + Messenger from the same dashboard). Pro tier $29/month USD. Best for SMBs whose marketing strategy is Meta-channel-cross.
SendPulse — global combined platform (WhatsApp + email + SMS + landing pages in one product) with broad multi-language reach. Best for teams of any size — and agencies — who want an all-in-one platform. Pricing requires to see USD rates.
For deeper comparison, see Wati vs AiSensy and our best WhatsApp chatbot platforms ranking.
Step 2: Verify your business with Meta
Meta requires every WhatsApp Business API account to be verified through Meta Business Manager. This step is the most common source of delays — budget 3-7 business days even if everything goes smoothly.
What you need:
- A Meta Business Manager account. If you don't have one, create at business.facebook.com (free).
- A Facebook Page for your business. Required for Business Manager.
- A phone number that is NOT currently active on WhatsApp Business app. If your phone number is already on the Business app, you'll need to deactivate WhatsApp on that number before using it for the API. Plan for ~24 hours of WhatsApp downtime during transition.
- Business verification documents. Meta requires proof of business legitimacy — incorporation documents, utility bills with business address, or tax registration. Requirements vary by country.
- Display name approval. Your WhatsApp Business name must match your verified business identity. Meta reviews and approves; takes 24-72 hours.
Once Meta approval is complete, your BSP platform connects to the verified phone number and the WhatsApp Business API account becomes operational on the platform.
Step 3: Submit message templates for approval
WhatsApp Business API requires that any business-initiated message (messages sent to customers outside an active 24-hour conversation window) be a pre-approved template. Approval is handled by Meta, not by your BSP platform. Under Meta's current per-message pricing (effective July 2025), each delivered template message is billed by its category; user-initiated service replies inside the 24-hour window are free.
Template types:
- Marketing templates — promotional messages, broadcasts, re-engagement campaigns. Pricing tier "marketing" — highest per-message cost.
- Utility templates — transactional messages (order confirmations, shipping notifications, appointment reminders). Pricing tier "utility" — lower per-message cost.
- Authentication templates — OTP, login codes, account verification. Pricing tier "authentication" — lowest per-message cost.
Each template includes the message body (with variable placeholders), optional header, optional footer, and optional buttons. Templates can include media (image, video, document) in the header.
Approval timeline:
- BSP-certified platform: 24-48 hours typical
- Non-BSP routes (direct Meta Cloud API): 5-7 days typical
Meta rejects templates that look promotional in utility tier, contain explicit unsubscribe instructions in the message body (the platform handles opt-out), use prohibited content (gambling, adult, prescription medication marketing in many regions), or have grammatical issues. Budget 2-3 template-rejection iterations before approval — even experienced operators see initial rejections.
Step 4: Build your first WhatsApp chatbot flow
With the API account live and templates approved, the actual chatbot build follows the same pattern as any other channel. Build a welcome flow with branching logic. WhatsApp-specific considerations:
Session vs template messaging. Inside an active 24-hour conversation window (started by a customer message), you can send any text/media without template restrictions — these are user-initiated service messages and, under Meta's July 2025 per-message pricing, are free. Outside the 24-hour window, you must use pre-approved templates, each billed per delivered message by its category.
Interactive message types. WhatsApp supports list messages (up to 10 options), reply buttons (up to 3), product cards, and catalog links. Most SMB platforms surface these in the visual flow builder.
Media handling. WhatsApp accepts images, video, audio, documents, and stickers. File size limits apply (16MB images, 16MB video, 100MB document). Test media delivery before relying on it in flows.
Read receipts. Customer message-read status is visible to the platform. Most SMB platforms expose this in the conversation history.
A typical first WhatsApp bot flow:
- Welcome message sent automatically when the customer messages your number for the first time (or after the 24-hour window). Identifies the business; offers 2-3 menu options as reply buttons.
- Branch flows for each menu option. Each branch is 2-4 message turns delivering information or capturing data.
- Order/booking confirmation template scheduled to fire when a structured task completes (booking made, order placed, lead captured).
- Human handoff path triggered by intent recognition or explicit user request ("talk to a human").
Step 5: Test on real WhatsApp
WhatsApp behaves differently from the platform's preview UI. Always test on the live channel before launch:
- Send test messages from a phone that's NOT in your team. Use a colleague's personal WhatsApp or a secondary number. Confirm message delivery, formatting, button rendering, and media display.
- Test template send. Trigger a template-initiated message and confirm it arrives correctly.
- Test the 24-hour session window. Send a customer message; reply with session messages; confirm the platform handles session-vs-template logic correctly.
- Test handoff to human agents. Trigger an escalation and confirm the receiving agent sees full conversation history.
- Test in your primary customer languages. WhatsApp supports any text; the test is whether your bot's NLU correctly handles non-English inputs. See our notes on per-language intent recognition.
Step 6: Launch and monitor
Standard launch monitoring applies, plus WhatsApp-specific signals:
- Template send-volume vs daily quota. Meta caps template-initiated message volume per tier. Track daily quota usage; upgrade tier before hitting the cap.
- Template quality rating. Meta tracks template-by-template engagement (read rate, response rate, complaint rate). Templates with low quality ratings get throttled. Monitor quality ratings in your BSP dashboard.
- Block/spam rate. If customers block your number frequently, Meta flags it. Sustained block rates above 1% can trigger phone-number restrictions.
- Cost-per-message tracking. Since July 2025 WhatsApp pricing is per delivered template message, not per 24-hour conversation. Service (user-initiated) messages inside the 24-hour window are free; marketing, utility, and authentication templates are each billed per message by category. Track template send-volume by category monthly to forecast cost — model it in the pricing calculator.
Realistic timelines
Based on our hands-on testing across the 2026 SMB WhatsApp chatbot platform catalog:
- Business verification + Meta approval: 3-7 business days
- BSP platform setup + phone number connection: 30-60 minutes
- First template submission + approval: 24-48 hours (BSP) or 5-7 days (non-BSP)
- First bot flow build: 4-8 hours
- Multi-language testing: add 2-4 hours per additional language
- Launch + first week monitoring: 5-10 hours
Total ship time for a working WhatsApp chatbot: 20-40 hours spread over 2-3 calendar weeks (gated by Meta approvals, not by build time).
Common WhatsApp chatbot mistakes
After observing 2026 SMB WhatsApp deployments across our review batch:
- Skipping Business Manager setup. Trying to connect WhatsApp before verifying business identity blocks you mid-flow. Set up Business Manager first.
- Using personal phone number. Once a number is on WhatsApp Business API, it cannot be used on personal WhatsApp. Use a dedicated business number.
- Marketing templates submitted as utility. Meta rejects promotional content in utility tier. Categorize templates correctly the first time.
- No fallback for users who message in non-supported languages. Configure default fallback explicitly.
- Treating WhatsApp like SMS. WhatsApp users expect richer interactions — buttons, lists, media. Plain text without interactive elements underperforms.
- Over-broadcasting. WhatsApp users are quick to block accounts they perceive as spammy. Limit broadcast frequency; segment audiences carefully.
- Forgetting Meta's per-message fees. Under the July 2025 per-message model, marketing templates carry the highest per-message fee while service replies are free — a bot that leans on marketing broadcasts can cost far more than its subscription suggests. Run the math at your expected template-send volume by category in the pricing calculator.
Pricing realism
Total monthly WhatsApp chatbot cost = subscription + Meta's per-message template fees + AI add-on (if applicable). Remember that under Meta's July 2025 per-message pricing, user-initiated service messages inside the 24-hour window are free, so support-style bots that mostly answer inbound questions incur far lower Meta fees than broadcast-heavy marketing bots.
For an SMB profile of ~5,000 contacts, ~3,000 conversations/month, 2 channels, 3 team seats:
| Platform | Monthly subscription (entry paid tier) | Estimated total monthly cost at SMB profile |
|---|---|---|
| Wati | €69/month base | €120-180/month including conversation costs |
| AiSensy | ~$25/month India-priced entry | $50-90/month at SMB scale |
| Manychat (Pro tier with WhatsApp) | $29/month | $60-120/month including WA costs |
| SendPulse | $32-99/month (slider-based) | $70-150/month |
Pricing verified directly from vendor pages 26 May 2026 per our pricing methodology. Meta's per-message template fees vary by country (Brazil cheapest, Germany most expensive in the marketing tier); model your own mix in the WhatsApp Business API pricing calculator.
Worked example: an order-status FAQ bot
The steps above are easier to internalize against concrete configuration. The artifacts below are illustrative — they follow the documented Cloud API shapes so they read as correct, but you should swap in your own IDs, tokens, and approved copy. Most SMBs never touch raw JSON because a BSP visual builder generates it for them; we show it so you understand what the platform is doing on your behalf and can debug when a template is rejected or a webhook misfires.
Choosing your route: BSP vs direct Cloud API
Before writing any config, decide where the API connection lives. The artifacts in this section are the same regardless of route — only who manages them differs.
| Decision factor | BSP-certified platform (Wati, AiSensy, Manychat, SendPulse) | Direct Meta Cloud API |
|---|---|---|
| Template approval speed | 24-48h typical | 5-7 days typical |
| Who builds the JSON below | Visual builder generates it | You author and POST it yourself |
| Webhook handling | Managed by platform | You host an HTTPS endpoint + verify signatures |
| Multi-agent inbox + handoff | Included | Build it yourself |
| Best for | SMBs without dedicated dev ops | Teams with engineers wanting full control |
For the order-status bot below, a BSP route is the pragmatic choice for most SMBs; we show the raw Cloud API artifacts so the abstraction is legible either way.
1. The template you submit for approval
An order-status bot needs one outbound utility template to proactively notify a customer when their order ships. This is what you submit to Meta (the category drives the per-message billing tier):
{
"name": "order_status_update",
"language": "en_US",
"category": "UTILITY",
"components": [
{
"type": "HEADER",
"format": "TEXT",
"text": "Order {{1}} update"
},
{
"type": "BODY",
"text": "Hi {{1}}, your order {{2}} has shipped and is expected to arrive on {{3}}. Reply to this message if you have any questions.",
"example": {
"body_text": [["Maria", "#A1043", "June 5"]]
}
},
{
"type": "FOOTER",
"text": "Acme Goods — reply STOP to opt out"
},
{
"type": "BUTTONS",
"buttons": [
{ "type": "QUICK_REPLY", "text": "Track order" },
{ "type": "QUICK_REPLY", "text": "Talk to a human" }
]
}
]
}
Categorize this as UTILITY, not MARKETING — a shipping notification submitted under the marketing tier is both more expensive per delivered message and a common rejection cause (see mistake #3 above).
2. The opt-in event that earns you the right to message
You can only send the template above to a contact who has explicitly opted in to WhatsApp messages. Most platforms record an opt-in event like this when a customer ticks a consent box at checkout:
{
"event": "whatsapp_opt_in",
"contact": { "wa_id": "5511998765432", "name": "Maria" },
"source": "checkout_consent_checkbox",
"consent_text": "Send me order updates on WhatsApp",
"opted_in_at": "2026-06-02T14:21:00Z"
}
Keep this record. If Meta or a customer disputes a message, the timestamped opt-in is your evidence.
3. The inbound webhook when a customer messages you
When the customer taps "Track order" (or sends any message), Meta delivers a webhook to your endpoint. This inbound message opens a free 24-hour service window — every reply you send inside it is free under Meta's July 2025 per-message pricing:
{
"object": "whatsapp_business_account",
"entry": [
{
"id": "<WABA_ID>",
"changes": [
{
"field": "messages",
"value": {
"messaging_product": "whatsapp",
"metadata": { "phone_number_id": "<PHONE_NUMBER_ID>" },
"contacts": [{ "wa_id": "5511998765432", "profile": { "name": "Maria" } }],
"messages": [
{
"from": "5511998765432",
"id": "wamid.HBgM...",
"timestamp": "1748873000",
"type": "button",
"button": { "payload": "Track order", "text": "Track order" }
}
]
}
}
]
}
]
}
4. Your free in-window reply (interactive message)
Because the inbound message opened the 24-hour window, you reply with a free interactive message — no template, no per-message fee. Here the bot offers the next step as reply buttons:
curl -X POST "https://graph.facebook.com/v20.0/<PHONE_NUMBER_ID>/messages" \
-H "Authorization: Bearer <ACCESS_TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "5511998765432",
"type": "interactive",
"interactive": {
"type": "button",
"body": { "text": "Order #A1043 is out for delivery and arrives June 5. What next?" },
"action": {
"buttons": [
{ "type": "reply", "reply": { "id": "view_tracking", "title": "View tracking" } },
{ "type": "reply", "reply": { "id": "human", "title": "Talk to a human" } }
]
}
}
}'
If the customer taps "Talk to a human," route the conversation to an agent — see human handoff for how to preserve full context on transfer.
5. Sending the template (only outside the window)
If the order ships when no 24-hour window is open, you cannot send free session text — you must send the approved template, which is billed at the utility per-message rate:
curl -X POST "https://graph.facebook.com/v20.0/<PHONE_NUMBER_ID>/messages" \
-H "Authorization: Bearer <ACCESS_TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"messaging_product": "whatsapp",
"to": "5511998765432",
"type": "template",
"template": {
"name": "order_status_update",
"language": { "code": "en_US" },
"components": [
{
"type": "header",
"parameters": [{ "type": "text", "text": "#A1043" }]
},
{
"type": "body",
"parameters": [
{ "type": "text", "text": "Maria" },
{ "type": "text", "text": "#A1043" },
{ "type": "text", "text": "June 5" }
]
}
]
}
}'
How it ties together
The customer opts in at checkout (artifact 2). When their order ships, your system checks whether a 24-hour service window is open. If the customer messaged recently, you reply free with the interactive message (artifact 4); if not, you send the billed utility template (artifact 5). Either way, the customer's reply lands as an inbound webhook (artifact 3) that re-opens a free window — so the entire back-and-forth of answering "where is my order?" costs nothing in Meta fees as long as the customer initiated it. That asymmetry is the single most important thing to design around: build your bot so customers start conversations, and reserve paid templates for genuinely proactive notifications. Model the resulting cost mix in the pricing calculator and revisit platform choice via the WhatsApp chatbot guide or our Wati, Manychat, and AiSensy reviews.
Frequently asked questions
Do I need a developer to build a WhatsApp chatbot?
For most SMB use cases, no. Modern WhatsApp BSP platforms (Wati, AiSensy, Manychat, SendPulse) have visual flow builders that handle the logic graphically. Developer skills become necessary only for custom CRM integrations beyond what the platform supports natively, or for advanced multi-step automation. The typical SMB WhatsApp chatbot is buildable by a marketing operator with no coding background.
How much does it cost to run a WhatsApp chatbot?
Subscription costs run $19-100/month for SMB tiers. On top of that, Meta charges per delivered template message (effective July 2025): user-initiated service replies inside the 24-hour window are free, while marketing, utility, and authentication templates are each billed per message by category and country. At a typical SMB volume, total monthly cost often lands $50-200/month — but a support-led bot that mostly answers inbound questions can sit near the subscription floor because those replies are free. Model your exact mix in the WhatsApp Business API pricing calculator.
What's the difference between BSP and non-BSP routes?
BSP-certified platforms have direct Meta partnership status, which reduces template approval to 24-48 hours and provides platform-level support for Meta-side issues. Non-BSP routes (direct Cloud API access) require you to manage Meta Business Manager yourself, typically with 5-7 day template approval and no platform support. For SMBs without dedicated WhatsApp ops, BSP-certified is strongly recommended.
Can I use WhatsApp Business API without a chatbot platform?
Technically yes — Meta offers direct Cloud API access. Practically, no — managing Cloud API directly requires significant development work to handle webhooks, template management, conversation state, and multi-agent inbox. SMB platforms abstract all of this and are cheaper than building the equivalent in-house.
How long does Meta business verification take?
3-7 business days typical, longer if Meta requires additional documentation. Plan for the verification window before committing to a WhatsApp launch date.
Can I broadcast to my contact list on WhatsApp?
Yes, but only with pre-approved templates and to opt-in contacts. WhatsApp's opt-in requirements are stricter than email — customers must have explicitly opted in to WhatsApp messages, not just to your general marketing list. Most SMB platforms enforce this; some require explicit double opt-in.
What countries support WhatsApp Business API?
Globally available with country-specific pricing and content rules. Brazil, India, Mexico, Spain, Argentina, Colombia, and Indonesia are typically the strongest SMB-fit markets due to high WhatsApp penetration. Germany and the United Kingdom are growing markets. The United States has lower WhatsApp business penetration; Instagram DM and SMS often outperform WhatsApp there for SMB use cases.
Related guides
- How to build a chatbot — general guide covering all channels
- Chatbot conversation flow — flow design patterns
- Chatbot best practices — post-launch optimization
- WhatsApp chatbot guide — channel-specific deep dive
- Best WhatsApp chatbot platforms 2026 — ranked comparison
- Wati vs AiSensy — platform comparison
About this guide
Chatbotscape launched in 2026. This guide is part of our SMB chatbot Academy — practical content for SMB owners building chatbots. We acknowledge a new editorial publication cannot claim the accumulated authority of established analyst sources; our response is to publish our methodology openly and to invite reader feedback. If you find an error or have a question about a specific platform claim, write to editorial@chatbotscape.com — we respond within reasonable time as the editorial team scales — typically 7-14 business days for substantive review.
Methodology
Platform recommendations reflect Chatbotscape's evaluation of the 2026 WhatsApp-specialist platform catalog against our 17-dimension scoring rubric. Pricing verified directly from vendor pages within 30 days of publication per our pricing methodology. BSP status verified against the Meta Business Partner Directory. Per-platform hands-on testing depth is documented in each platform's review POC notes sibling file.
Last updated
26 May 2026 — Initial publication aligned to methodology v3.12.1. Next scheduled refresh: 26 August 2026.