Documentation
Everything about connecting your number, keeping the connection healthy, and using it from your AI or your own system.
What is EasyCoexistence?
EasyCoexistence puts the business number you already use on the WhatsApp Business Platform (Cloud API) through Meta's official Coexistence feature, then monitors the connection around the clock so it never silently dies.
- The app on your phone keeps working exactly as before. Coexistence adds the API alongside it, replacing nothing.
- No migration, no lost chats: your history stays on your phone.
- Connect as many numbers as you want on a single account.
- Your conversations never pass through our servers. Incoming messages can be routed by Meta directly to your own system.
Connecting a number
- Create your account and open the dashboard.
- Click “Connect a number”. Meta's window opens; log in with the Facebook account that manages your business.
- Enter your business number and scan the QR code with the WhatsApp Business app on your phone.
- Done, usually in under 2 minutes. The number appears on your dashboard with live health.
Is your number eligible? Read this first
Meta enforces a few rules before allowing Coexistence. Most failed connections hit one of these:
- The number must be on the WhatsApp Business app, version 2.24.17 or newer. Personal WhatsApp accounts can't connect.
- The number needs real, recent two-way conversation activity. Brand-new or dormant numbers are refused.
- The number can't be attached to another API platform or provider (bulk senders, CRMs, automation tools). Disconnect it there first, then try again.
- Two-step verification or a pending device pairing in the app can also block onboarding.
If Meta says the number is “registered to an existing WhatsApp account”, do NOT delete the WhatsApp account on your phone; the number must stay active in the app. Free it from the other platform instead.
What changes in the app (the trade-offs)
Turning on Coexistence disables a few features of the app, all of them in individual (1:1) chats. Know them before connecting:
- Disappearing messages are turned off in 1:1 chats.
- View-once messages are disabled in 1:1 chats.
- Live location sharing is disabled in 1:1 chats.
- Broadcast lists: you can't create new ones, and existing ones become read-only.
- At onboarding, all linked devices are disconnected and need to be re-linked. WhatsApp for Windows and WearOS stop being supported.
- Groups, calls, catalog and status keep working in the app, but they don't appear on the API side.
- The number gets a combined API throughput cap of 20 messages per second. Day-to-day chatting is unaffected.
Use it from your AI (one connector per account)
Your whole account gets a single connector URL. It works for every number you connect, present and future: your AI sees all your numbers and picks the right one for each task.
- Claude (web or desktop): Settings → Connectors → Add custom connector, then paste the URL.
- ChatGPT: Settings → Connectors → Advanced, enable Developer mode, then add the URL.
- Claude Code (terminal): claude mcp add --transport http easycoexistence https://easycoexistence.com/api/mcp
- When prompted, log in with your EasyCoexistence email and password and authorize access.
Then just ask: “send a message from my number”, “create a promo template”, “is my number healthy?”, “route incoming messages to my system”.
What your AI can do (tools)
- list_numbers: all your numbers with status, quality and tier.
- get_number_health: a live snapshot from Meta plus the recent event timeline.
- send_message: free-form reply within the 24-hour service window.
- create_template, get_template_status, list_templates: create and track message templates.
- send_template: start conversations with an approved template.
- get_api_credentials: IDs, endpoints and token for wiring up your own system.
- set_webhook_destination: route incoming messages straight from Meta to your webhook.
- get_connect_link: how to onboard another number.
- get_docs: this documentation, so your AI can answer questions about the product.
Sending rules (set by Meta, not by us)
- Replying is free-form: anyone who messaged you in the last 24 hours can be answered directly.
- Starting a conversation requires a pre-approved template.
- In Coexistence, templates can only be sent via the API; the phone app can't send them.
- Marketing messages are billed by Meta to your own WhatsApp Business Account payment method. We never mark up messaging.
- Meta caps API throughput for Coexistence numbers; day-to-day messaging on the phone is unaffected.
Plug in your own system
Every number's page in the dashboard shows its API base URL, account and phone IDs, and access token: everything n8n, a CRM or custom code needs to send via the official Cloud API. To receive, ask your AI to route incoming messages to your webhook (set_webhook_destination): Meta then delivers them directly to your endpoint, never touching our servers.
Monitoring & the 14-day rule
We watch every connected number around the clock (connection state, quality rating and messaging tier) via Meta webhooks and periodic checks. If the business app on the phone goes about 14 days without being opened, Meta can silently drop the Coexistence link. The moment anything breaks, your dashboard shows it with the reason. Rule of thumb: keep using the app normally.
What EasyCoexistence is not
- Not an inbox or a chatbot. Conversations keep happening in your app, in your AI or in your own system; we don't add another panel to live in.
- Not a mass-messaging tool. Meta's rules still apply: replies within the 24-hour window, templates to start conversations.
- Not a Meta product. We are an independent Tech Provider using Coexistence, the platform's official feature.
- Not a middleman for your messages. We never read or store the content of your conversations.
And if EasyCoexistence disappears tomorrow? Nothing happens to your number: the app keeps working, your history stays on your phone, and the API connection can be undone at any time. A bridge, not a cage.
Common questions
How much does it cost?
It depends how many numbers you connect, because the price per number falls with the count: US$ 9 each up to five, US$ 7 from six to twenty-five, and falling as the count grows, down to US$ 1 each. Ten numbers is US$ 70 per month. Your first 3 days are free, removing a number stops its charge at the end of the cycle, and Meta's messaging costs are separate and always billed by Meta directly to your own account.
My number shows as disconnected. What now?
First open the app on your phone (the most common cause is the 14-day rule). Then run the connect flow again with the same number: Meta recognizes it, shows a pre-checked option to restore the previous products and completes the reconnection on its own within minutes.
How do I disconnect my number?
On the number's page in the dashboard, under Remove this number. We revoke our own access at Meta, monitoring stops right away and that number's charge ends with the current cycle. Disconnecting never affects the app: chats and history stay on your phone, and you can reconnect later by running the connect flow again.
My template won't send. Why?
The most common cause: your Meta account has no payment method yet. Template sends (marketing above all) are billed by Meta to your own account; add a card in WhatsApp Manager, under billing, and try again. Also check that the template was approved (ask your AI for its status).
Will my old conversations show up in my system or my AI?
Only if you want them to. During the connect flow, Meta asks whether to sync chat history with the API side, and you can decline. Either way, EasyCoexistence never reads or stores content: history stays on your phone, and new messages only reach your own system if you set up routing.
Does it work with a landline number?
Yes. If the landline number is active in the WhatsApp Business app, it connects normally (we have customers with landlines connected).
How do I revoke access?
To remove an AI agent's access, delete the connector in the agent's own settings. To remove our access, disconnect the number (question above). Access tokens are stored encrypted and never exposed to third parties.
Guides
The longer explanations everything else points back to.
- WhatsApp MCP server for Claude, ChatGPT and CursorConnect Claude, ChatGPT or Cursor to a real WhatsApp number over MCP. Official Cloud API, sixteen tools, no linked-device workaround and no ban risk.
- WhatsApp Coexistence: the app and the API on one numberCoexistence runs the WhatsApp Business app and the Cloud API on the same number at once. What it changes, what it does not, and how a number gets connected.
- Unofficial WhatsApp APIs: what actually gets numbers bannedUnofficial WhatsApp gateways sign in as a linked device, which breaks Meta's terms. What that costs, and what the official route looks like instead.
- WhatsApp Cloud API or Coexistence: which one a number needsBoth are Meta's. One takes the number onto the API alone, the other runs the API beside the WhatsApp Business app. Which to pick, and what each costs you.
- WhatsApp webhooks: routing messages straight to your serverHow WhatsApp webhooks work, what Meta sends, and how to route incoming messages directly to your own endpoint instead of through a provider's platform.
- WhatsApp Coexistence for agencies and consultanciesConnect client WhatsApp numbers without migrating them or retraining their staff. One account, many numbers, each in the client's own Business Portfolio.
- What being a Meta Tech Provider means, and why it mattersA Tech Provider connects other businesses' WhatsApp numbers through its own Meta app. What the status requires, and what it changes for the client.
- What WhatsApp Coexistence costs, provider by providerWhat each provider charges to hold WhatsApp numbers, at one, ten and fifty numbers. Figures from their own pricing pages, September 2026.
- WhatsApp Coexistence glossaryPlain definitions for the vocabulary around WhatsApp Coexistence: WABA, Business Portfolio, phone number id, templates, quality rating, Tech Provider and MCP.
- Can you use the WhatsApp Business app and the API on the same number?Yes. Coexistence is Meta's official feature for running the WhatsApp Business app and the Cloud API on one number at once. How it works and what changes.
- How to connect WhatsApp to an API without losing your chatsConnecting a WhatsApp Business number to the Cloud API without losing conversations. Why chats stay on the phone and what actually syncs.
- The cheapest way to get the WhatsApp Business APIWhat the WhatsApp Business API actually costs: Meta's conversation fees versus provider fees, and how to pay the least.
Integrations
Reaching a connected number from the tool you already use.
- Connect WhatsApp to n8n on the official Cloud APIRoute WhatsApp messages into an n8n workflow over Meta's official Cloud API, on a number the business still answers from the phone. No linked device.
- Connect WhatsApp to Claude with a custom connectorAdd EasyCoexistence as a custom connector and Claude can read, send and wire a real WhatsApp number over Meta's official Cloud API. One OAuth sign in.
- Connect WhatsApp to Make on the official Cloud APIRoute WhatsApp messages into a Make scenario over Meta's official Cloud API. Why Make uses the webhook path rather than our MCP server.
- Connect WhatsApp to Zapier on the official Cloud APITrigger a Zap from an incoming WhatsApp message over Meta's official Cloud API, and send replies back with a webhook action.
- Connect WhatsApp to ChatGPT with a custom connectorAdd EasyCoexistence as a connector in ChatGPT and it can read, send and wire a real WhatsApp number over Meta's official Cloud API.
- Connect WhatsApp to Cursor over MCPAdd EasyCoexistence to Cursor's MCP settings and send WhatsApp messages, manage templates and wire webhooks without leaving the editor.
- Connect WhatsApp to Claude Code over MCPOne command adds EasyCoexistence to Claude Code, so an agent can send WhatsApp messages, manage templates and wire webhooks from the terminal.
- Send and receive WhatsApp from PythonReceive WhatsApp messages in a Python web handler and send replies through Meta's official Cloud API, on a number a team still answers from the phone.
- Send and receive WhatsApp from Node.jsReceive WhatsApp messages in a Node handler and send replies through Meta's official Cloud API, on a number a team still answers from the phone.
- Log WhatsApp messages in HubSpot from a Coexistence numberWrite every WhatsApp message on a Coexistence number to the HubSpot contact timeline with the Communications API, through n8n or Make. The team keeps the phone.
- Send WhatsApp conversations to Salesforce from a Coexistence numberLog WhatsApp messages from a Coexistence number as Salesforce tasks or notes on the lead or contact, through an n8n workflow on Meta's official Cloud API.
- Connect WhatsApp to Zoho CRM on a Coexistence numberFind or create the Zoho CRM lead for every WhatsApp sender and log each message as a note, through n8n on Meta's official Cloud API. The phone keeps working.
- Connect WhatsApp to Pipedrive on a Coexistence numberMatch every WhatsApp sender to a Pipedrive person, create a lead for new ones and log each message as a note, through n8n on Meta's official Cloud API.
- Connect WhatsApp to Bitrix24 CRM on a Coexistence numberFind the Bitrix24 lead or contact behind every WhatsApp sender and add each message to its timeline, through n8n and a Bitrix24 inbound webhook.
- Turn WhatsApp contacts into RD Station Marketing conversionsRecord every new WhatsApp sender as a conversion in RD Station Marketing with one API-key call from n8n, on a Coexistence number the team still answers.
- Connect WhatsApp to GoHighLevel contacts on a Coexistence numberCreate or update the HighLevel contact for every WhatsApp sender and log each message as a note, through n8n and a Private Integration token, per sub-account.
- Use a Coexistence number as a Chatwoot WhatsApp Cloud inboxConnect a Coexistence number to Chatwoot's WhatsApp Cloud inbox with its WABA id, phone number id and token, and point the webhook straight at Chatwoot.
- Log WhatsApp messages to Airtable and send from a baseWrite every WhatsApp message on a Coexistence number into an Airtable table through n8n, and send templates from a base with Airtable's Run a script action.
- Log WhatsApp messages to Google Sheets and send from a sheetAppend every WhatsApp message on a Coexistence number to a Google Sheet through n8n, and send approved templates from a sheet with Apps Script UrlFetchApp.
- Receive WhatsApp webhooks in a Supabase Edge FunctionMake a Supabase Edge Function the webhook destination of a Coexistence number: answer Meta's verification, store messages in Postgres, reply through the Cloud API.
- Connect WhatsApp to Activepieces on a Coexistence numberUse Activepieces' WhatsApp Business piece on a Coexistence number: paste the token and WABA id, point the webhook at the trigger, and leave the app secret empty.
- Run a Typebot flow on WhatsApp with CoexistenceDeploy a Typebot bot on Meta's official Cloud API using a number the team still answers from the WhatsApp Business app. Which fields to fill, which to leave empty.
- Connect a Botpress bot to WhatsApp with CoexistenceRun a Botpress agent on Meta's official Cloud API, on a number the team still answers from the WhatsApp Business app, using Manual Configuration.
- Answer WhatsApp messages with a Dify appPut a Dify chat app or agent behind a WhatsApp number on Meta's official Cloud API, with the team still answering from the WhatsApp Business app.
- Answer WhatsApp messages with a Flowise chatflowConnect a Flowise chatflow or agentflow to a WhatsApp number on Meta's official Cloud API, while the team keeps answering from the WhatsApp Business app.
- Give a LangChain agent a WhatsApp numberLoad the EasyCoexistence MCP tools into a LangChain agent over OAuth, and feed it incoming WhatsApp messages from a webhook on the official Cloud API.
- Put an OpenAI Agents SDK agent on WhatsAppRun an OpenAI Agents SDK agent on a WhatsApp number through Meta's official Cloud API, with one session per customer and the phone still in use.
- Build a WhatsApp agent with the Vercel AI SDKReceive WhatsApp messages in a route handler, answer them with the Vercel AI SDK, and use the EasyCoexistence MCP tools over OAuth on the official Cloud API.
- Send WhatsApp order messages from ShopifySend WhatsApp order updates from Shopify through Meta's official Cloud API, from the store's own number, while the team keeps answering in the WhatsApp Business app.
- Send WhatsApp order updates from WooCommerceSend WooCommerce order updates on WhatsApp through Meta's official Cloud API, from the store's own number, while the team answers in the WhatsApp Business app.
- Send and receive WhatsApp from PHP and LaravelReceive WhatsApp messages in a Laravel route and send replies through Meta's official Cloud API, on a number the team still answers from the phone.
Comparisons
The decisions people weigh before choosing.
- EasyCoexistence vs a BSP inboxA BSP gives you a shared inbox and sits in the message path. Coexistence keeps the phone and routes messages to your own systems. When each one is right.
- EasyCoexistence vs building it yourselfEverything here is Meta's documented API, so you can build it. What that actually takes, and the part that is not the building.
- EasyCoexistence vs 360dialogBoth charge per number and neither marks up Meta's fees. The difference is the price and what the fee is for. Prices as published in September 2026.
- EasyCoexistence vs WATIWati is a WhatsApp inbox priced per seat with contact limits. EasyCoexistence charges per connected number and routes messages to your own system.
- EasyCoexistence vs respond.ioRespond.io is a multichannel inbox priced per seat and contact. EasyCoexistence charges per connected number, with no seats and nothing per message.
- EasyCoexistence vs DualhookBoth route WhatsApp webhooks directly from Meta and neither stores messages. Where they differ on price, tooling and what survives a reconnection.
- EasyCoexistence vs AiSensyAiSensy is a WhatsApp campaign platform sold on monthly plans. EasyCoexistence charges per connected number and delivers messages to your own system.
- EasyCoexistence vs InteraktInterakt is a WhatsApp commerce platform with per-agent plans. EasyCoexistence charges per connected number, with no seats and nothing per message.
- EasyCoexistence vs DoubleTickDoubleTick is a WhatsApp sales inbox priced per user. EasyCoexistence charges per connected number and routes messages into the CRM you already use.
- EasyCoexistence vs ZokoZoko is a WhatsApp commerce platform built for Shopify. EasyCoexistence is the layer underneath, charging per connected number with no seats.
- EasyCoexistence vs TrengoTrengo is a multichannel team inbox priced per user. EasyCoexistence charges per connected number and delivers WhatsApp to your existing helpdesk.
- EasyCoexistence vs RasayelRasayel is a WhatsApp sales inbox priced per user. EasyCoexistence delivers the conversation straight into your CRM, charging per connected number.
- EasyCoexistence vs CallbellCallbell is a small-team WhatsApp inbox priced per user. EasyCoexistence charges per connected number, so headcount never enters the bill.
- EasyCoexistence vs BaileysBaileys is an open-source linked-device library, a route WhatsApp's business terms do not provide for automated messaging. EasyCoexistence connects the same number through Meta's own API.
- EasyCoexistence vs WPPConnectWPPConnect automates WhatsApp Web in a browser session, a route WhatsApp's business terms do not provide for automated messaging. EasyCoexistence uses Meta's official Cloud API through Coexistence.
- EasyCoexistence vs Evolution APIEvolution API wraps unofficial WhatsApp libraries behind a REST interface. EasyCoexistence uses Meta's official Cloud API, so the way the number connects carries no ban risk.
- EasyCoexistence vs WhapiWhapi is a hosted unofficial gateway, so the number is reached outside Meta's API. EasyCoexistence connects it officially through Coexistence.
- The best WhatsApp Coexistence providersEvery provider that supports WhatsApp Coexistence, what each charges and who each suits. Prices from their own published pages, September 2026.
- The best WhatsApp Cloud API providersWhatsApp Cloud API providers compared by how they charge: per message, per seat, or per number. Prices from their own published pages.
- The best WhatsApp MCP serversWhatsApp MCP servers compared. Most open-source ones drive an unofficial bridge that risks a ban. EasyCoexistence runs on Meta's official Cloud API.
- EasyCoexistence vs TwilioTwilio adds a published per-message fee on top of Meta's. EasyCoexistence charges a flat monthly fee per number and never touches the message bill.
- EasyCoexistence vs GupshupGupshup publishes a per-message fee on top of Meta's. EasyCoexistence charges per number, so the cost stops moving once the number is connected.
- EasyCoexistence vs InfobipInfobip is enterprise CPaaS priced per country through sales. EasyCoexistence publishes one price list and connects a number in minutes.
- EasyCoexistence vs YCloudBoth support Coexistence with no per-message markup. YCloud sells a platform in seat-based tiers; EasyCoexistence sells infrastructure per number.
- EasyCoexistence vs SleekFlowSleekFlow is a seat-priced messaging platform with a minimum seat count. EasyCoexistence charges per connected number with no seats at all.
- EasyCoexistence vs BirdBird quotes one blended per-message rate with Meta's fee inside it. EasyCoexistence charges per number and leaves the Meta invoice untouched.
- EasyCoexistence vs ZenviaZenvia sells monthly software plans plus channel packages. EasyCoexistence charges one published fee per connected number, in reais or dollars.
- EasyCoexistence vs 8x88x8 is enterprise CPaaS with good Coexistence documentation. EasyCoexistence is the self-serve product that does what those docs describe.
- EasyCoexistence vs Z-APIZ-API connects a number by scanning a QR code, like WhatsApp Web, at R$ 99,99 per instance. EasyCoexistence uses Meta's official Cloud API from US$ 9.
- EasyCoexistence vs BlipBlip is a chatbot and customer service platform with no published paid prices. EasyCoexistence publishes one fee per connected number, from US$ 9.
- EasyCoexistence vs DigisacDigisac is a multichannel service platform priced by proposal from R$ 197. EasyCoexistence charges a published fee per connected number, from US$ 9.
- EasyCoexistence vs OctadeskOctadesk starts at R$ 2.499 a month for 3,000 conversations plus a required onboarding. EasyCoexistence is US$ 9 per connected number, no setup.
- EasyCoexistence vs HuggyHuggy is an omnichannel service inbox from R$ 579 a month plus per-user fees. EasyCoexistence is a WhatsApp connection at US$ 9 per connected number.
- EasyCoexistence vs Umbler TalkUmbler Talk is a WhatsApp inbox and CRM from R$ 99,90 per agent, minimum two. EasyCoexistence charges US$ 9 per connected number, no agent count.
- EasyCoexistence vs WhaticketWhaticket is a multi-agent inbox from US$ 49 a month for three users, on a QR session or the API. EasyCoexistence is US$ 9 per connected number.
- EasyCoexistence vs LeadsalesLeadsales is a WhatsApp sales CRM from US$ 97 a month; its official API starts at US$ 133. EasyCoexistence is the official connection at US$ 9 a number.
- EasyCoexistence vs TrebleTreble is a WhatsApp automation and campaign platform with no published price. EasyCoexistence connects your app number to the Cloud API from US$ 9.
- EasyCoexistence vs BotmakerBotmaker is a bot platform from US$ 149 a month for 3,000 conversations plus a US$ 99 account fee. EasyCoexistence is US$ 9 per connected number.
- EasyCoexistence vs GallaboxGallabox is a WhatsApp inbox priced per plan with a hard user cap. EasyCoexistence charges per connected number and sends messages to your own system.
- EasyCoexistence vs TimelinesAITimelinesAI is a per-seat WhatsApp inbox that also connects by QR code. EasyCoexistence connects only through Meta's Cloud API, priced per number.
- EasyCoexistence vs PeriskopePeriskope links a WhatsApp number by QR code as a device and does not accept API numbers. EasyCoexistence connects it through Meta's Cloud API.
- EasyCoexistence vs WassengerWassenger offers a QR session connector and a Cloud API connector inside an agent inbox. EasyCoexistence is the Cloud API connection alone, per number.
- EasyCoexistence vs WANotifierWANotifier is a WhatsApp campaign tool priced by contact tier and message cap. EasyCoexistence charges a flat fee per connected number.
- EasyCoexistence vs EazybeEazybe is a Chrome extension that runs on WhatsApp Web, with API plans above it. EasyCoexistence connects the number through Meta's Cloud API only.
- EasyCoexistence vs SuperchatSuperchat is a multi-channel inbox on a 12-month minimum term, with Coexistence in beta. EasyCoexistence is the WhatsApp connection, priced per number.
- EasyCoexistence vs SinchSinch adds its own per-message fee on top of Meta's, set by agreement. EasyCoexistence charges a flat fee per number and Meta bills messaging directly.
- EasyCoexistence vs VonageVonage adds a platform fee to every WhatsApp message on top of Meta's. EasyCoexistence charges a flat fee per number and connects through Coexistence.
- EasyCoexistence vs QontakMekari Qontak is an omnichannel CRM suite from Rp2,000,000 a month for 5 users. EasyCoexistence connects a WhatsApp number through Coexistence, per number.
Getting started
Connecting a number and what happens next.
- Coexistence referenceWhat Coexistence is, how messages flow, what it costs, what it cannot do, eligibility, and how to roll it back. The short reference version.
- Connecting a number, step by stepWhat happens when you connect a number through Coexistence, what the business owner has to do, and what is decided once and cannot be changed.
- How to disconnect Coexistence and go back to the app onlyTurning Coexistence off from the WhatsApp Business app, what the API side receives, why the Deregister endpoint refuses, and how to connect again later.
- Which WhatsApp features stop working after CoexistenceDisappearing messages, view once, live location and broadcast lists are switched off on a connected number. What each one means in practice.
- Linked devices and Coexistence: what gets unlinkedCoexistence onboarding unlinks every companion device. Which ones can be linked again, which two are unsupported, and the inactivity rules for each.
- Migrating a number from another WhatsApp providerMoving a WhatsApp number that already sits with another provider: the Coexistence case, the API-only case, what Meta carries over and what resets.
- Moving a number from Coexistence to Cloud API onlyTaking a number off the WhatsApp Business app and running it on Cloud API alone: the order of steps, the history Meta says is lost, and what changes.
- Multiple agents and systems answering one Coexistence numberHow a team answering from the WhatsApp Business app and linked devices shares one number with software on the API, and how each side sees the other.
- Which numbers are eligible for CoexistenceThe app version, the account type, the portfolio access, and what actually makes Meta refuse a number during Coexistence onboarding.
- Rate limits and messaging throughputThe four separate WhatsApp Cloud API limits: messaging tier, throughput, per-recipient pairing and management calls.
- A number stopped working: how to find out whyA checklist in the order these failures actually happen: token, webhook override, inactivity disconnection, quality, and account restriction.
- What changes in the WhatsApp Business app after connectingEverything that stays the same on the phone after a number is connected through Coexistence, and the three things that genuinely change.
- What syncs to the API, and what does notContacts and one-to-one history cross over. Groups, catalog, labels, quick replies and away messages do not. The complete list, in one place.
The Meta platform
The accounts, identifiers and verification steps that sit underneath every number.
- Meta business verification and Coexistence numbersWhat Meta business verification unlocks on the WhatsApp Business Platform, what works without it, and how it applies to a number connected through Coexistence.
- Changing the phone number on a Coexistence connectionWhy changing the number in the WhatsApp Business app ends a Coexistence connection, what the new number needs, and what to do with the old one.
- Display names on a WhatsApp business numberThe name customers see above a conversation. How approval works, what gets rejected, and which webhook reports the decision.
- GDPR and Coexistence: where message data goesWhat Meta documents about Cloud API data handling for EU businesses, what changes when an app number is connected through Coexistence, and where messages flow.
- Meta Business Portfolio, and what sits inside itThe company level container in Meta Business Manager. What it holds, why it matters for a client's number, and how it differs from a WABA.
- Meta Verified and the official business badge on a Coexistence numberThe Official Business Account badge and the Meta Verified subscription are separate things. What Meta's documentation says about each for a shared number.
- Two step verification on a WhatsApp numberThe six digit PIN set on a WhatsApp Business number, which operations require it, and what to do when nobody remembers it.
- The WhatsApp Business Account, and why overrides live on itWhat a WABA holds, why webhook overrides are applied at this level rather than per number, and what that means when a connection is removed.
- WhatsApp Coexistence in Argentina: availability and Meta's ratesCoexistence works on Argentine numbers. Meta's per message rates for +54 recipients from October 1, 2026, in USD and ARS, and what is free.
- WhatsApp Coexistence in Brazil: availability and Meta's ratesCoexistence works on Brazilian numbers. Meta's per message rates for +55 recipients from October 1, 2026, in USD and BRL, and the BRL billing deadline.
- WhatsApp Coexistence in Chile: availability and Meta's ratesCoexistence works on Chilean numbers. Meta's per message rates for +56 recipients from October 1, 2026, in USD and CLP, and what stays free.
- WhatsApp Coexistence in Colombia: availability and Meta's ratesCoexistence works on Colombian numbers. Meta's per message rates for +57 recipients from October 1, 2026, in USD and COP, and what stays free.
- WhatsApp Coexistence in Costa Rica: availability and Meta's ratesCoexistence works on Costa Rican numbers. Why +506 recipients are charged Meta's Rest of Latin America rates, and the figures from October 1, 2026.
- WhatsApp Coexistence in Germany: availability, Meta rates and setupCoexistence works on +49 numbers. Meta's per message rates for Germany in USD and EUR from October 1, 2026, and how to connect an existing number.
- WhatsApp Coexistence in India: availability, Meta rates and INR billingCoexistence works on +91 numbers. Meta's per message rates for India from October 1, 2026, the INR billing deadline, and how to connect a number.
- WhatsApp Coexistence in Indonesia: availability, Meta rates and setupCoexistence works on +62 numbers. Meta's per message rates for Indonesia in USD and IDR from October 1, 2026, and how to connect an existing number.
- WhatsApp Coexistence in Italy: availability, Meta rates and setupCoexistence works on +39 numbers. Meta's per message rates for Italy in USD and EUR from October 1, 2026, the July 2026 change, and how to connect.
- WhatsApp Coexistence in Mexico: availability and Meta's ratesCoexistence works on Mexican numbers. Meta's per message rates for +52 recipients from October 1, 2026, in USD and MXN, and what stays free.
- WhatsApp Coexistence in Peru: availability and Meta's ratesCoexistence works on Peruvian numbers. Meta's per message rates for +51 recipients from October 1, 2026, in USD and PEN, and the utility increase.
- WhatsApp Coexistence in Saudi Arabia: availability, Meta rates and SAR billingCoexistence works on +966 numbers. Meta's per message rates for Saudi Arabia in USD and SAR from October 1, 2026, and how to connect a number.
- WhatsApp Coexistence in Spain: availability and Meta's ratesCoexistence works on Spanish numbers. Meta's per message rates for +34 recipients from October 1, 2026, in USD and EUR, and what stays free.
- WhatsApp Coexistence in Turkey: availability, Meta rates and setupCoexistence works on +90 numbers. Meta's per message rates for Turkey from October 1, 2026, which currencies apply, and how to connect a number.
- WhatsApp Coexistence in the UAE: availability, Meta rates and AED billingCoexistence works on +971 numbers. Meta's per message rates for the UAE in USD and AED from October 1, 2026, and how to connect an existing number.
Sending messages
What may be sent, when, and what Meta reviews first.
- Broadcast lists vs marketing templates after CoexistenceBroadcast lists become read-only on a Coexistence number. How API marketing templates replace them, and the opt-in, limits and opt-outs that come with them.
- Product catalogs on a Coexistence numberWhat happens to the WhatsApp Business app catalog after Coexistence, how product messages work through Cloud API, and what differs between the two.
- The 24 hour customer service windowWhat the customer service window is, when it opens and closes, what may be sent inside and outside it, and how replies inside it are charged.
- Which WhatsApp messages Meta charges forService replies are free up to 1,000 per number a month. What Meta charges for, who it bills, and why a provider cannot mark it up.
- Message reactions: sending and receiving emojiSending and receiving WhatsApp message reactions through the Cloud API, including how a removed reaction arrives.
- WhatsApp message templatesWhat templates are, the three categories, how variables work, how review goes, and why on Coexistence they can only be sent through the API.
- WhatsApp messaging limits: the current portfolio tiersHow Meta's business-initiated messaging limits work since October 2025: portfolio level, 250 to unlimited, how they rise, and how they differ from throughput.
- WhatsApp opt-in requirements for business-initiated messagesWhat Meta's WhatsApp Business Messaging Policy requires before a business messages someone: the two conditions, what the opt-in must say, and opt-out rules.
- How blocks and reports affect WhatsApp quality ratingWhat drives a WhatsApp number's quality rating, how blocks and reports feed it, what a drop does since October 2025, and how to recover.
- Sending a template with variablesHow to fill WhatsApp template variables correctly: positional parameters, component lists, and the errors each mistake produces.
- Sending interactive messages: buttons and listsWhatsApp interactive messages: reply buttons, list messages, their exact limits and how replies come back on your webhook.
- Sending location and contact messagesSending location pins and contact cards through the WhatsApp Cloud API, and why live location is unavailable on a Coexistence number.
- Sending media: images, video, audio and documentsSending images, video, audio and documents on the WhatsApp Cloud API: size limits, supported formats, and why uploading beats linking.
- Template categories: utility, marketing and authenticationThe three template categories, what belongs in each, how they differ on billing and review, and why the wrong category is a reliable rejection.
- Template components: header, body, footer and buttonsThe four parts of a WhatsApp message template, what each one allows, and which of them accept variables.
- The template status lifecycleEvery state a WhatsApp template passes through, from submission to permanent disabling, and which webhook reports each one.
- WhatsApp groups and the API on a Coexistence numberWhat Meta's Groups API can do, who can use it, and why a number shared with the WhatsApp Business app cannot reach groups through the API at all.
Webhooks
How events reach your systems, and what is in them.
- The account_alerts webhookMeta's general alerting channel for a business account. What arrives here, and why it is a prompt to look rather than a state change.
- The account_review_update webhookMeta reports the outcome of an account review here. What the decision field carries, and why a rejection is worth treating as a degraded connection.
- The account_update webhook, and every disconnection reasonaccount_update reports connection state changes. The full list of disconnection reasons Meta sends, what each means, and which ones are recoverable.
- The business_capability_update webhookHow messaging limit changes arrive. What the tier means, how it grows, and how it differs from throughput.
- WhatsApp webhook fields, and which ones go whereThe eight webhook fields a Coexistence connection uses, what each carries, and which are routed to your endpoint versus kept for monitoring.
- The history webhookThe one time chat history transfer on a Coexistence number is delivered on this field. What arrives, when, and why it happens only once.
- The message_template_quality_update webhookMeta reports a template's quality moving here, before it results in a pause. What the signal means and why it is worth acting on early.
- The message_template_status_update webhookMeta reports template approvals, rejections and disabling here. What each status means and why it removes the need to poll.
- The messages webhookEverything a customer sends arrives on this field. What the payload carries, how to acknowledge it, and why it never reaches a provider on a routed number.
- The phone_number_name_update webhookMeta reports display name approvals and rejections here. It is the only place the decision appears, and nothing shows it in the app.
- The phone_number_quality_update webhookWhat this webhook actually carries as of 2026, why the colour quality rating is not in it, and where the rating has to be read from instead.
- The smb_app_state_sync webhookContact synchronisation from the WhatsApp Business app arrives on this field. What it carries and why it is separate from message history.
- The smb_message_echoes webhookHow software sees what a human sent from the WhatsApp Business app. Only exists on Coexistence numbers, and ignoring it causes double replies.
- The template_category_update webhookMeta can move a template between utility, marketing and authentication after approval. This reports it, and it changes what each send costs.
- Verifying a WhatsApp webhook endpointMeta calls your endpoint with a GET challenge before delivering anything. What it sends, what to return, and why a wrong answer fails silently.
The MCP connector
Reaching a number from an AI assistant.
- MCP or a webhook: which one you actually needMCP acts when asked. A webhook reacts when something happens. Why an assistant cannot answer customers on its own, and why most systems need both.
- MCP tools referenceAll sixteen tools the EasyCoexistence MCP connector exposes, what each takes, and which are gated when billing lapses.
Error codes
Every error our users actually meet, from Meta's published reference.
coexistence-error-authorization-code-expired"This authorization code has expired" after Coexistence signupcoexistence-error-business-app-outdated"Update your WhatsApp Business App" during Coexistence signupcoexistence-error-companion-pairing-permission"Your app is missing required Graph API permissions for Cloud API companion pairing"coexistence-error-inaccessible-business-portfolioCoexistence signup blocked by an old Business Portfoliocoexistence-error-number-already-registered"This phone number is already registered to a WhatsApp account"coexistence-error-number-not-eligible"This phone number isn't eligible" in Coexistence signupcoexistence-error-number-on-another-providerCoexistence error: number already connected to another providercoexistence-error-option-not-showing"Connect your existing WhatsApp Business app" option not showingcoexistence-error-qr-code-pairing-failedCoexistence QR code scan fails in the WhatsApp Business appcoexistence-error-request-code-unavailable"Request code failed: Our servers are temporarily unavailable"0unable to authenticate the app user3capability or permissions issue4app reached its API call rate limit10permission not granted or removed100invalid parameter190access token expired200no access token provided368account restricted by policy80007rate limit on the WhatsApp Business Account130429throughput limit reached130472message not sent as part of an experiment130497recipient country not allowed131000something went wrong131005access denied, permission missing131008required parameter missing131009invalid parameter value131016service unavailable131021sender and recipient are the same131026message undeliverable131031account restricted or data mismatch131037555 number has no approved display name131042business account payment issue131045phone number not registered131047re-engagement message131048spam rate limit hit131049message blocked for ecosystem health131050the user has opted out131051unsupported message type131052media download failed131053media upload failed131056too many messages to one recipient131057business account in maintenance mode132000parameter count mismatch132001template does not exist132005translated text is too long132007template policy violation132012template parameter format mismatch132015template paused for quality132016template is permanently disabled133000previous deregistration attempt failed133004server temporarily unavailable133005incorrect two-step verification PIN133006phone number not verified133008too many PIN guesses133009two-step verification PIN entered too quickly133010phone number not registered133015number recently deleted, deletion not complete135000unknown error with request parameters2593107synchronization limit exceeded2593108sync outside the 24 hour windowcodesWhatsApp Cloud API error codes
Support
Have a question that isn't covered here? Write to matheus@tonelotto.com.