Can self-hosted Chatwoot use the official WhatsApp API without Meta App Review?
In short: yes, and your number keeps working in the WhatsApp Business app on your phone. ZapClaw connects it to Meta's official Cloud API through Coexistence and answers Chatwoot's built-in WhatsApp Cloud channel the way Meta does. No Meta app of your own, no App Review, no fork: one environment variable and one API call per number.
Connect your number in minutes and plug in the Chatwoot you already run.
Negócio plan: R$ 99 per month, with unlimited numbers
Start for free Read the Chatwoot guideWhat ZapClaw adds to Chatwoot
- The official API, not an unofficial library. Messages go through Meta's Cloud API, not through a client that imitates WhatsApp Web, the kind of connection that goes against WhatsApp's terms and puts numbers at risk.
- The number stays on the phone. With Coexistence, the WhatsApp Business app keeps working next to Chatwoot. Meta opens Coexistence only to Tech Providers and Solution Partners. ZapClaw is a Meta Tech Provider, so you do not have to become one.
- Your clients' numbers, without App Review. An app that other businesses use needs Meta's App Review. Your clients connect through ZapClaw's Embedded Signup instead, in minutes, and the paid plans take unlimited numbers.
- Chatwoot and your automation on one number. A native webhook can run next to Chatwoot, so a bot or an n8n flow receives every message too.
Setup: one variable and one API call per number
- Create your ZapClaw account and connect the number in Meta's window, through Embedded Signup.
- In the dashboard, create an API key for Chatwoot and enter your Chatwoot address in the Chatwoot section of Webhook. ZapClaw then shows the signing secret and, for each number, the inbox command with the number's details filled in.
- Set
WHATSAPP_CLOUD_BASE_URLtohttps://api.zapclaw.appon Chatwoot's web and Sidekiq containers and restart both. Every WhatsApp Cloud inbox on that install then sends through ZapClaw. - Create the inbox with one call to Chatwoot's API, once per number. The call sets
sourcetomanual_setup_v2and the inboxapp_secretto the signing secret, which turns on Chatwoot's signature check. - Press Send test event, then send a WhatsApp message to the number. It shows up in Chatwoot, and replies go out through ZapClaw.
Why not Chatwoot's own screen? Since Chatwoot 4.18, its WhatsApp Cloud screen checks the key at graph.facebook.com, which rejects a ZapClaw key. The API call creates the same native inbox.
Chatwoot sends through ZapClaw from version 2.15. Use 4.14 or newer, which also checks every delivery's signature against the inbox app_secret. The WHATSAPP_APP_SECRET variable plays no part: a standard install ignores it.
Who it is for
Teams and agencies that run Chatwoot on their own server and want the number to stay in the WhatsApp Business app, their clients' numbers in Chatwoot, or both. If it is one number of your own and it does not need the app, Chatwoot can connect to Meta directly, with no App Review.
Go further
- The full Chatwoot guide, with every field and the troubleshooting.
- chatwoot-zapclaw on GitHub: a script that checks your key before you touch Chatwoot, and a Compose example.
- What you need to connect a number through Coexistence.
- Plans and prices, from the free plan to the Agência plan for agencies.
Put your Chatwoot on the official API today
Start on the free plan: one number, no card. Move to the Negócio plan when you need more numbers or more messages.
Start for free Read the Chatwoot guide