Um número.O aplicativo e a API, ao mesmo tempo.
Coexistence é o modo oficial da Meta para rodar o aplicativo WhatsApp Business e a Cloud API em um único número ao mesmo tempo. A equipe continua atendendo pelo celular, com as mesmas conversas e o mesmo histórico, enquanto o software envia e recebe na mesma linha.
A escolha que existia, e não existe mais
Coexistence não é uma API nova. É a remoção de uma bifurcação que impedia quase todo negócio pequeno de automatizar qualquer coisa.
A equipe atende pelo celular. Nada pode ser automatizado, integrado ou medido.
Sem APIO software alcança o número. O aplicativo Business para de funcionar nele e a equipe muda de ferramenta.
Sem appA Meta conecta a Cloud API a um número que o aplicativo WhatsApp Business continua usando. As duas superfícies ficam ativas na mesma linha, e cada uma enxerga o que a outra envia.
Quem opera um número assim
Dois grupos, querendo coisas opostas do mesmo recurso, e é por isso que a conexão importa mais que qualquer painel em cima dela.
Uma equipe pequena, um número impresso numa van ou numa fachada, e noites respondendo as mesmas quatro perguntas. Não estão substituindo ninguém. Querem que confirmações, lembretes e a primeira resposta fora do horário aconteçam sem um humano, enquanto o celular continua servindo para todo o resto.
Muitos clientes, cada um com um número que ninguém pode migrar ou tocar. Precisam que esses números sejam alcançáveis pelos sistemas que constroem, e precisam adicionar o próximo sem uma reunião comercial. Coexistence é a única rota oficial para um número que a equipe do cliente ainda atende na mão.
How a number ends up on both, and where the message events go
Four steps. The only one that touches the phone is a scan, and the one that decides your architecture is the first.
Have the endpoint ready before onboarding starts
Meta verifies a destination before it will deliver to it. It calls your URL with a GET carrying hub.mode=subscribe, your hub.verify_token and a hub.challenge, and your endpoint has to echo the raw challenge back.
The destination must be HTTPS, and a verify token is mandatory. We validate both before the call is made, so a malformed URL fails at our door rather than looking connected and delivering nothing.
Nothing is connected yet. This decides where messages will land. Provider in the pathStored on their serversTheir platformReceives and stores messagesYouA copy, on their scheduleEasyCoexistenceConfig onlyYour endpointNot yet verifiedUsWe set the route, we are not on itRun Meta's Embedded Signup and scan in the app
Meta's own popup opens. You pick the Business Portfolio, the WhatsApp Business Account and the number already registered in the WhatsApp Business app, then approve the connection on the phone by scanning a code.
This is also where you choose whether to share existing chat history. It is a one time onboarding decision and cannot be changed later. The Business app keeps working the moment the scan completes.
The second surface appears. The first one is not removed. After a migrationOne surfaceCloud API onlyBusiness app dead on this numberAfter CoexistenceTwo surfacesWhatsApp Business appSame chats and historyCloud APIOn the same linePoint the message events at your own system
Meta lets an app override where a given WhatsApp Business Account's webhooks are delivered. We set that override to your URL, which moves the two message path fields, messages and smb_message_echoes, straight from Meta to you.
We keep the operational fields, because those are what monitoring is made of: account_update, phone_number_quality_update, account_alerts, account_review_update, business_capability_update and phone_number_name_update. So the dashboard stays useful while conversation content never touches us.
Which events go where once the override is active. Operational eventsDelivered to usMessage pathDelivered to youmessagesEverything a customer sendssmb_message_echoesWhat the team sends from the appYour serverDirectly, never through usKeep it alive, and survive a reconnection
Meta disconnects a Coexistence number after roughly fourteen days without activity on the primary device. That disconnection is reconnectable, and we record it as its own state rather than treating it as a customer leaving.
The part that catches people is what a disconnection does to the route. Meta stores the destination as an override on our app's subscription to the account, so a PARTNER_REMOVED uninstalls the app and takes the override with it. Reconnecting restores sending and monitoring, but not your destination. We put it back automatically, because the first number that hit this rule reconnected fine and silently stopped delivering to the customer's server.
What a reconnection restores by itself, and what has to be put back. Restored by MetaAutomaticSendingThe Cloud API works againOperational eventsMonitoring resumesLost with the appHas to be reappliedYour webhook overrideUninstalled with the appMessage delivery to youSilently stopsWe reapply itOn every reconnection
Por que times operam um número assim
- Manter o número que já está impresso em veículos, recibos e site, e o fluxo de trabalho no celular ao redor dele.
- Adicionar envio por API, processamento de webhook e templates sem mover ninguém para uma ferramenta nova.
- Manter o tráfego de mensagens fora da caixa compartilhada de um provedor, para que as conversas não fiquem na plataforma de outra empresa.
- Dar a uma agência uma forma de manter muitos números de clientes em uma conta, cada um conectado no Business Portfolio do próprio cliente.
Elegibilidade e limites práticos
- O número precisa já estar ativo no aplicativo WhatsApp Business. Um número no WhatsApp comum precisa ser movido para lá antes.
- Compartilhar o histórico de conversas é uma escolha única feita durante o onboarding e não pode ser alterada depois.
- Conversas em grupo ficam fora da API em números Coexistence, em qualquer provedor.
- O aparelho principal precisa de atividade periódica. A Meta desconecta após cerca de catorze dias sem ela.
- Caminhos de verificação e selo da Meta são diferentes para números Coexistence, e a disponibilidade regional muda conforme a política da Meta.
O que roteamos para você, e o que ficamos
A Meta permite que um app sobrescreva onde uma conta do WhatsApp Business entrega seus webhooks. A gente aponta esse override para a sua URL, o que divide os eventos em dois.
messagesTudo que um cliente envia para o númerosmb_message_echoesO que sua equipe envia pelo aplicativo WhatsApp Business
account_updateEstado da conexão: removida, offboarded, reconectada, restritaphone_number_quality_updateMudanças de qualidade e throughputaccount_alertsAlertas que a Meta levanta contra a contaaccount_review_updateResultados de uma revisão da Metabusiness_capability_updateMudanças de limite de mensagens e capacidadesphone_number_name_updateAprovações e rejeições de nome de exibição
Se um número não tem override definido, seus eventos de mensagem caem no nosso callback padrão, onde o handler os descarta sem persistir. Isso é garantido em código e não prometido em política: não existe caminho de armazenamento para conteúdo de conversa seguir.
A regra dos catorze dias, e o que ela quebra que ninguém menciona
A Meta desconecta uma conexão Coexistence após cerca de catorze dias sem atividade no aparelho principal. É reconectável, então guardamos isso como estado próprio em vez de contar como cliente que foi embora.
A consequência que custa caro vem depois. O destino das suas mensagens não é uma configuração do número, é um override na assinatura do nosso app à conta do WhatsApp Business. Uma desconexão desinstala o app, e o override vai junto. Você reconecta, o envio volta, o monitoramento volta, e as mensagens param de chegar no seu servidor sem nada reportar erro.
A gente reaplica o override em toda reconexão. Esse comportamento existe porque aconteceu: um número bateu nessa regra, reconectou limpo, e parou de entregar calado.
Um handshake que falha naquele momento, porque seu servidor caiu ou o token mudou, fica registrado na linha do tempo da conexão e o destino é mantido em vez de descartado, então salvar de novo resolve.
O que quebra em silêncio, e como a gente descobre
O aplicativo WhatsApp Business continua funcionando em quase todas as falhas abaixo, e é por isso que ninguém percebe. Estas são as que verificamos, e como.
Detectado pelo webhook account_update da Meta, especificamente PARTNER_REMOVED, em vez de inferido de um campo virando falso. A gente deliberadamente não lê is_on_biz_app para isso, porque ele é legitimamente falso em números que não são Coexistence e estava gerando desconexões falsas.
A regra de inatividade do aparelho principal da Meta. É reconectável, então fica registrada como estado próprio em vez de como cliente que saiu, e reconectar restaura envio e monitoramento.
O destino vive como override na assinatura do nosso app à conta, então uma desconexão o desinstala. O envio volta ao reconectar e a entrega no seu servidor não. A gente reaplica o override toda vez, porque um número a quem isso aconteceu reconectou limpo e parou de entregar calado.
Guardamos o token do cliente e o nosso System User token contra a mesma conta. Quando um é rejeitado, o outro lê a conta e decide qual dos dois realmente quebrou, então um token revogado deixa de parecer um número perdido.
Consultada da Meta periodicamente. Uma classificação RED marca a conexão como degradada, e qualidade, tier de mensagens e nível de throughput são gravados a cada verificação, então um declínio fica visível antes de custar um envio.
Conectar um número e vigiar um número são produtos diferentes. O segundo é a razão deste existir.
Typical time to connect a number, scanning a code from the WhatsApp Business app.
How long a customer reply keeps the session open for free text replies.
Sending throughput for a Coexistence number, fixed by Meta and not raisable.
How much chat history Meta syncs to the API when a number first connects.
Perguntas frequentes
Does my team have to stop using the phone?
No. That is the entire point of Coexistence. The WhatsApp Business app keeps working on the same number, with the same conversations, and the API runs alongside it.
Will I lose my existing conversations?
No. They stay in the app, and Meta syncs around six months of history to the API when the number connects, so software has context rather than starting empty.
Can I undo it?
Yes. A number can be disconnected, and the app carries on as it always did. Nothing about the number itself is permanently altered by connecting it.
Is this the same as the unofficial WhatsApp APIs?
No, and the difference decides whether the number survives. Coexistence is Meta's official feature on the Cloud API. Unofficial gateways drive WhatsApp Web as a linked device, which breaks the terms and gets numbers banned.
Pronto para começar?
Configure o WhatsApp Coexistence em minutos, não em meses. O aplicativo continua funcionando no celular.
Começar teste grátis7 dias grátis. Nada é cobrado até o teste terminar.