Meta official API · Multi-tenant · Privacy-first
Official WhatsApp + AI that answers the way you would.
Chassi runs WhatsApp Business (Meta's official API) with an assistant that sells, supports and schedules — from a copilot with human approval to full autopilot. Flexible and safe, never rigid.
- Meta official API
- White-label multi-tenant
- Durable queues (RabbitMQ)
- Privacy & audit trail
Inbox
An inbox that understands the 24-hour window.
Conversations, labels, groups, media and templates in one place. The panel knows when it can reply freely and when it needs an approved template — and shows it before you type.
- Text, image, video, audio, document, sticker and reactions
- Quoted replies, per-conversation labels and groups via the Groups API
- Sent, delivered and read ticks in realtime
- 24-hour window indicator with countdown
Ethan Clark
+1 512 ***-4321Hot lead
Hi! I saw the leather jacket on your site. Still available in M?
Hi Ethan! Yes, a new batch just arrived today.
Agent: Marina
Great. Do you deliver to Austin? I need it by Friday 😬

We do! Ships today, arrives within 2 business days — plenty of time 😄
Agent: Marina

Perfect, I want to order. Can I pay in 3 installments?
You can, Ethan! Up to 3 interest-free card payments. Sending the order link now, just confirm it here.
Agent: Marina


Flows & automation
Automation you can see — and control.
Every inbound message goes through a visible flow: tenant identification, Meta signature validation, contact base, consent, AI intent classification and reply. With a switch where you decide.
- Visual service flow, step by step
- Consent and opt-out respected before any reply
- Decision by intent: human, copilot or autopilot
- Per-tenant automatic reply switch
Service flow
Steps executed when a message reaches the tenant number
Webhook received
Meta notifies a new message on the tenant number (phone_number_id).
Meta signature validated
X-Hub-Signature-256 checked before any processing.
Contact identified
Phone found in the base; the message joins the conversation history.
Consent?
We only reply to people who agreed to receive WhatsApp messages.
Intent classified
IAThe AI reads the message and suggests the right queue.
Autonomy level
Set per tenant: human, copilot or autopilot.
Reply sent
24h window closed — only an approved template can go out.
template: msg_default
Default automatic reply
Confirmation sent to the identified contact with consent.
Enabled — template sent after consent
End of flow
Everything logged in the conversation and the audit trail.
Copilot → autopilot
From copilot to autopilot, at your pace.
The AI learns your service personality, suggests replies for approval and, when you want, answers on its own within the limits you set. Every autonomy level is recorded in the audit trail.
- One-click suggestion to approve or edit
- Per-client persona and knowledge base
- Adjustable autonomy: suggest only → answer FAQs → schedule → autopilot
- Guardrails the AI cannot bypass
Ethan Clark
+1 512 ***-4321
Hi! Is the leather jacket still available in M?
Hi Ethan! Yes, a new batch just arrived today.
Agent: Marina
Can I pay in 3 installments?
You can, Ethan! We split it into up to 3 interest-free card payments. Want me to send the order link?
Agent: Marina
And returns, how do they work if it doesn’t fit?
IA
No worries, Ethan! You have 30 days to swap it for another size, just message me here.
Guaranteed delivery
No message lost, none duplicated, no number burned.
Durable RabbitMQ queues with publisher confirms, atomic claim, retries with backoff, a dead-letter queue and cron recovery. Broadcasts respect Meta's tier: when saturated, they defer — they don't fail.
- Publisher confirms + atomic claim: no duplicate sends
- Retry with backoff and a DLQ visible in the panel
- Recovery cron every minute
- Meta tier rate limit with automatic deferral
WA traceability
Queue, Meta tier and failures by reason — in realtime
Sent today
1,203
last 24h
Delivered
1,140
last 24h
Read
862
last 24h
Failed
5
last 24h
Deferred: 188
Tier saturated — sends deferred, not failed.
Queues (RabbitMQ)
| Queue | Depth | Consumers |
|---|---|---|
| notifications.whatsapp | 0 | 2 |
| notifications.email | 0 | 1 |
| notifications.sms | 0 | 1 |
| notifications.dlqDLQ | 2 | 0 |
Failures by reason
Templates & broadcasts
Approved templates, broadcasts that respect Meta's limits.
Sync, create and validate templates with a variable catalog and live preview. Broadcast with automatic opt-out, scheduling and failure reports by category.
- Approval status in realtime (Meta webhook)
- Catalog variables instead of loose {{1}}
- Opt-out and consent respected on broadcast
- Campaign report by failure reason
WhatsApp templates
Catalog synced with Meta · live preview
UTILITY
UTILITY
MARKETING
UTILITY
Template approved by Meta (webhook) · lembrete_consulta
Bulk dispatch
Done1,240 contacts · 37 opt-outs excluded · 1,203 queued
188 deferred (tier)
Appointment reminder
Hi {{1}}, your appointment is confirmed for {{2}}. Can we count on you?
Reply here to confirm or reschedule
09:41
Realtime & PWA
Realtime in the browser and in your pocket.
Socket.IO with automatic polling fallback, Web Push for the installed app and a panel that works as a mobile app — with 44px touch targets and iOS safe areas.
- Several agents at once, with conversations split by label
- New messages show up before you refresh
- If the socket drops, polling takes over unnoticed
- Push notifications with the app closed
- Installable as a PWA on iOS and Android
It has, Ethan! Arrives by tomorrow. Sending the tracking now.
Can I swap it for another size?
Thank you! It fits perfectly 🥰
Marina: uploaded today’s report
Ethan Clark
+1 512 ***-4321Agent: Marina
Morning! I placed the order last night.
Morning, Ethan! We got it, it’s being packed.
Agent: Marina
Hi! Has my order shipped yet?
It has, Ethan! Arrives by tomorrow. Sending the tracking now.
Agent: Marina
$ socket: reconnect · resync ok
$ wa:status → sent · r4
Northwind Store
Business account
Morning! I placed the order last night.
Morning, Ethan! We got it, it’s being packed.
Hi! Has my order shipped yet?
It has, Ethan! Arrives by tomorrow. Sending the tracking now.
Chassi · Ethan Clark
It has, Ethan! Arrives by tomorrow. Sending the tracking now.
Security
Real multi-tenancy: isolation, encryption, permissions and audit.
Per-tenant Meta credentials encrypted at rest (AES-256-GCM), role-based permissions, an append-only audit log and guardrails the AI cannot bypass.
- One number, one credential and one panel per client
- Granular permissions (wa.send, wa.template.manage, wa.config.manage…)
- Audit of every admin action — who, when and from where
- Configurable data retention and purge
Tenants
One number, one credential and one panel per client
Clínica Vida
vida.chassi.app
- phone
- 5511 9xxxx-0001
- token
- enc:v1:••••
- tier
- TIER_1K
Loja Vértice
vertice.chassi.app
- phone
- 5511 9xxxx-0002
- token
- enc:v1:••••
- tier
- TIER_10K
Escola Nova
escolanova.chassi.app
- phone
- 5521 9xxxx-0003
- token
- enc:v1:••••
- tier
- TIER_1K
access_token encrypted at rest (AES-256-GCM) — key per environment, never in the database.
Plans
Plans built around your operation.
No public price list: it depends on conversation volume, modules and the AI autonomy level. We talk, understand the operation and build the proposal.
Essential
To start on official WhatsApp
- Full inbox
- Templates and broadcasts
- Guaranteed delivery (queue + DLQ)
- 1 number
Operations
For support and sales teams
- Everything in Essential
- Copilot with approval
- Labels, groups and catalog
- Permissions and audit
Enterprise
To operate at scale with AI
- Everything in Operations
- Autopilot with guardrails
- Per-unit persona and knowledge
- White-label multi-tenant
All plans use Meta's official API. Meta conversation fees are passed through without markup.
FAQ
What everyone asks before trying
- Is it the official WhatsApp API?
- Yes. Chassi uses Meta's WhatsApp Business Platform (Cloud API) exclusively. No phone automation, no shared numbers — your number, your WABA, your credentials.
- Do I need a new number?
- You can use a new number or migrate an existing one to the Cloud API. We help with business verification and webhook setup.
- Does the AI answer on its own?
- Only if you want. You choose the autonomy level: the AI can only suggest replies for human approval, answer FAQs, schedule, or run on autopilot within guardrails you define.
- How does the 24-hour window work?
- Meta's rule: after the contact writes, you have 24 hours to reply freely. Outside that window, only approved templates. The panel shows the window state before you type and guides you to a template when needed.
- What if Meta limits my sends?
- Every number has a messaging tier. Chassi counts recipients in the last 24 hours and, near the limit, defers sends instead of failing — protecting your number's quality.
- Is my data isolated?
- Yes. Each client is a tenant with encrypted credentials, its own conversations and permissions. The audit log records every admin action. Retention and purge are configurable.
- Does it work on mobile?
- The panel is a PWA installable on iOS and Android, with push notifications and realtime. If the connection drops, it falls back to polling automatically.
- How much does it cost?
- There's no public price list: it depends on volume, modules and AI autonomy. Talk to sales and we'll build a proposal for your operation.
Contact
Talk to people who run WhatsApp at scale.
Tell us how your operation works today. The conversation happens where the platform lives: on WhatsApp.