O que a Meta mudou e vai quebrar teu app sem avisar (e o que fazer antes).
Terça, nove da manhã. O teu cliente manda print: abriu o botão de conectar, logou na Meta, escolheu o número, e nada. No teu log, nenhum erro. A Meta mudou uma coisa em maio, avisou num post em inglês, e o prazo vence numa quinta.
Aqui estão as sete coisas que eu olho nos apps que eu aprovo. Cada uma tem a data, quem pega, o que fazer em 5 minutos e o link da Meta de onde saiu. Sem "o que é Tech Provider": isso tu já sabe.
Os sete.
Embedded Signup v2 e v3 morrem em 15/10/2026.
O que quebra sem avisar: o botão "Conectar" do teu sistema. O cliente clica, o fluxo velho não abre, e o próximo cliente não entra.
Quem é afetado: quem ainda roda o Embedded Signup v2 ou v3. A Meta diz que a maioria migra sozinha. Quem usa coex (coexistência), only_waba_sharing ou marketing_messages_lite não migra: o desenvolvedor tem que mexer antes do prazo.
Data: 15/10/2026. A Meta estima até uma semana de trabalho, com teste.
Checklist de 5 minutos:
- Abre o front e acha o
FB.logindo Embedded Signup. Anota ofeatureTypee a versão. Apareceucoex,only_waba_sharingoumarketing_messages_lite? Tu está na lista. - No App Dashboard: Facebook Login for Business > Configurations > nova configuração, variação de login Embedded Signup.
- Marca os produtos que o teu onboarding entrega (Cloud API, e os de anúncio se tu usa).
- Copia o
config_ide coloca noFB.login. Coexistência no v4 vai pelofeatureTypewhatsapp_business_app_onboarding. - Roda um onboarding inteiro no Embedded Signup Builder antes do dia 15. No dia 15 já é tarde.
Fonte da Meta: - Embedded signup v4 (blog da Meta, 14/05/2026) - Versões do Embedded Signup - Embedded Signup v4
Os 5 passos depois que o cliente clica no botão.
O que quebra sem avisar: o cliente conectou, a tela da Meta disse que deu certo, e não entra nem sai mensagem. O webhook não chega e ninguém te avisa por quê. É a reclamação que mais aparece nas threads do fórum da Meta.
Quem é afetado: todo Tech Provider com o botão no ar. O Embedded Signup só devolve o código, o waba_id e o phone_number_id. O resto é teu, servidor a servidor.
Data: vale desde sempre, e pega todo cliente novo.
Checklist (os 5 passos, na ordem, com o cURL):
Passo 1 · troca o código pelo token do cliente. O code vem no retorno do Embedded Signup.
curl --get 'https://graph.facebook.com/<API_VERSION>/oauth/access_token' \
-d 'client_id=<APP_ID>' \
-d 'client_secret=<APP_SECRET>' \
-d 'code=<CODE>'
Passo 2 · assina o teu app no WABA do cliente. Sem isso o webhook dele não chega no teu servidor.
curl -X POST 'https://graph.facebook.com/<API_VERSION>/<WABA_ID>/subscribed_apps' \
-H 'Authorization: Bearer <BUSINESS_TOKEN>'
Passo 3 · registra o número com PIN de 6 dígitos. Pulou este, o número fica pendente.
curl 'https://graph.facebook.com/<API_VERSION>/<PHONE_NUMBER_ID>/register' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <BUSINESS_TOKEN>' \
-d '{ "messaging_product": "whatsapp", "pin": "<PIN_6_DIGITOS>" }'
Passo 4 · manda uma mensagem de teste. Se voltou erro, tu descobre agora e não pelo cliente.
curl 'https://graph.facebook.com/<API_VERSION>/<PHONE_NUMBER_ID>/messages' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <BUSINESS_TOKEN>' \
-d '{ "messaging_product": "whatsapp", "recipient_type": "individual",
"to": "<NUMERO_DE_TESTE>", "type": "text", "text": { "body": "teste" } }'
Passo 5 · o cliente cadastra o cartão. No WhatsApp Manager dele (https://business.facebook.com/wa/manage/home/). Sem cartão, ele não manda template. O que dá errado aqui está no capítulo 5.
Fonte da Meta:
- Onboarding de cliente como Tech Provider (os 5 passos)
- Thread no fórum da Meta: webhook que não chega, resposta com /register + /subscribed_apps
- Adicionar cartão na conta do WhatsApp (Central de Ajuda da Meta)
O token morre quando o teu cliente troca a senha.
O que quebra sem avisar: os números de UM cliente param de mandar. Os outros seguem normais. A chamada volta OAuthException com código 190, e se ninguém olha o log, quem descobre é o cliente dele.
Quem é afetado: todo Tech Provider com cliente onboardado. No fórum da Meta, um dev relata que o token de alguns clientes invalida porque eles mexem na conta; a resposta só confirmou a limitação. Nenhum caminho, nenhuma solução. Ninguém lá tem resposta pra essa porra.
Data: qualquer dia. Depende do teu cliente, não de você.
Como saber:
- O webhook account_update é o primeiro lugar que tu olha. Ele é obrigatório pra Tech Provider e é por ele que a Meta te conta o que mudou na conta do teu cliente: PARTNER_APP_UNINSTALLED chega quando o cliente desinstala o teu app, e tem evento de restrição, de violação e de conta removida.
- O token morto aparece na chamada: toda chamada com o token daquele cliente devolve erro 190. Na doc de erros da Graph, o subcódigo 460 é senha trocada; 463 e 467 são token expirado ou inválido. Erro 190 de um cliente só é token morto, não é a Meta fora do ar.
- Por que ninguém no fórum da Meta tem resposta: porque não tem endpoint que ressuscita token. Todo mundo pergunta como renovar, e a saída é refazer o onboarding.
Como refazer sem o cliente sentir: token novo nasce de código novo, e código novo nasce do Embedded Signup. Então o refazer mora dentro do teu sistema: um botão "Reconectar WhatsApp" na tela do teu cliente, que abre o mesmo Embedded Signup e roda os 5 passos do capítulo 2 por trás. Pra ele é um aviso no sistema que ele já usa, um clique e um login na Meta. Ele não perde o número, não abre chamado, não fala com ninguém. Quem fica sabendo primeiro é você, pelo alerta, e o botão aparece pra ele antes de ele perceber que parou.
Checklist de 5 minutos:
- Guarda por cliente o token, o
waba_ide a data em que ele conectou. - Erro 190 vira alerta com o nome do cliente, não linha perdida no log.
- Separa no alerta o subcódigo: 460, 463, 467.
- Põe o botão "Reconectar WhatsApp" dentro do teu sistema, aparecendo só pro cliente com token morto.
- Assina o
account_updatee trata oPARTNER_APP_UNINSTALLED.
Fonte da Meta: - Tratamento de erros da Graph API (código 190, subcódigos 460, 463, 467) - Webhook account_update (eventos) - Thread no fórum da Meta: token de cliente invalidado
O limite de envio agora é do portfólio, não do número.
O que quebra sem avisar: o teu cliente tem a loja e o disparo na mesma BM. Segunda de manhã ele solta a promoção, e o atendimento da loja encosta no limite junto, porque os dois números dividem o mesmo teto.
Quem é afetado: todo cliente teu com mais de um número no mesmo portfólio.
Data: desde 07/10/2025. O que mudou: - O limite é calculado por portfólio e todos os números de lá dividem. - Subida de nível em até 6 horas (antes eram 24). - O estado Flagged deixou de existir. No lugar entrou a janela de recuperação de 7 dias. - Spam acima de 2% ou bloqueio acima de 5% restringe. - Pra subir de nível no automático, o portfólio precisa ter usado pelo menos metade do limite nos últimos 7 dias. - Os níveis: 250, 2.000, 10.000, 100.000 e ilimitado. - A qualidade de cada número sai de bloqueio e denúncia de quem recebe.
O que olhar toda semana (5 minutos por cliente):
- O limite do portfólio no WhatsApp Manager. Do portfólio, não do número.
- A qualidade de cada número, e se o spam passou de 2% ou o bloqueio de 5%.
- Template pausado ou com qualidade baixa.
- Quanto do limite ele usou nos últimos 7 dias, se ele vai precisar subir.
- Disparo em BM separada do atendimento. Quando a Meta bater, ela bate numa conta que não tem o número que atende o cliente dele.
Nota: os 2% de spam, os 5% de bloqueio e a janela de recuperação de 7 dias são régua observada nos BSPs.
Fonte da Meta: - Messaging limits - A mudança de 07/10/2025 (limite por portfólio)
"Missing Valid Payment Method" com cartão cadastrado.
O que quebra sem avisar: o cliente cadastrou o cartão, o WhatsApp Manager segue dizendo que falta método de pagamento, e o envio para. Na API o erro é 131042. No Stack Overflow é a pergunta de WhatsApp mais lida do nosso recorte: 2.171 visualizações, sem resposta aceita.
Quem é afetado: o passo 5 de todo onboarding. E pega mais quem veio de outro parceiro.
Data: qualquer onboarding, qualquer dia.
O que é: na doc de erros da Meta, o 131042 é erro de método de pagamento, e o caminho que ela dá é conferir quatro coisas: se a conta de pagamento está anexada ao WABA, o estado da linha de crédito, se a conta está suspensa, e o fuso e a moeda.
Checklist de 5 minutos:
- O cartão está anexado ao WABA, e não só cadastrado no portfólio?
- Fuso e moeda definidos na conta?
- Tem pagamento pendente ou conta suspensa?
- O número veio de outro parceiro? A doc de coexistência da Meta tem caminho próprio pra conflito de linha de crédito do parceiro anterior. Resolve antes de onboardar de novo.
- Corrigiu? Manda a mensagem de teste do passo 4 antes de avisar o cliente que está liberado.
Fonte da Meta: - Códigos de erro do WhatsApp (131042) - Adicionar cartão na conta do WhatsApp - Coexistência: conflito de linha de crédito de parceiro anterior - Fora da Meta, a pergunta: Stack Overflow, 2.171 visualizações
Data Use Checkup: a renovação anual que ninguém lembra.
O que quebra sem avisar: o app aprovado perde o acesso à API. É uma vez por ano, o aviso cai no e-mail de quem criou o app, e quem criou o app às vezes nem está mais na empresa.
Quem é afetado: todo app publicado com caso de uso ou com acesso avançado. Tech Provider tem acesso avançado a whatsapp_business_messaging e whatsapp_business_management, então tu está dentro.
Data: cada app tem a sua. A Meta avisa 60, 30, 10 e 3 dias antes. Quem não faz no prazo arrisca perder o acesso à API.
Onde ver: App Dashboard > Alerts > Inbox, na notificação do Data Use Checkup, ou na seção Required Actions.
O que responder: certificar o uso de cada permissão, certificar que segue os Platform Terms e as Developer Policies, responder as perguntas de tratamento de dados e mandar a instrução de teste.
Checklist de 5 minutos:
- Abre o Required Actions hoje e põe a data na agenda.
- Confere quem é admin do app e qual e-mail recebe o aviso.
- Lista as permissões que tu tem e as que tu usa.
- Deixa pronto o texto de tratamento de dados, batendo com a tua política de privacidade.
- Instrução de teste com login que funciona hoje.
Fonte da Meta: - Data Use Checkup - Data Use Checkup, passo a passo (onde fica, quando avisa) - O prazo de 60 dias e o risco de perder o acesso (blog da Meta) - Permissões do Tech Provider
Os 10 erros do Embedded Signup que o teu cliente vai te mandar print.
O que quebra sem avisar: o onboarding do cliente, na tela da Meta, antes de qualquer chamada tua. Tu nem vê no log. Tu vê no print.
Quem é afetado: todo Tech Provider com o botão no ar.
Data: todo dia.
Os 10, com causa e saída:
-
Número já conectado em outra conta. "This number is registered to an existing WhatsApp account." O número está registrado em outra conta. Saída: desconectar ou desregistrar de lá e voltar; a Meta fala em até 3 minutos pra liberar. Se o caso é coexistência, o fluxo é outro (capítulo 1).
-
"Invalid account linking" / número preso em parceiro anterior. A mensagem que a Meta documenta é "The business is already sharing this WhatsApp Business account with a partner". Saída: desconectar o parceiro atual no app WhatsApp Business e voltar. No fórum da Meta tem caso (erro #2655093) em que o botão de desconectar nem aparece no celular; aí é ticket com a Meta.
-
OTP que não chega. "You have requested your code too many times" ou "You have guessed too many times". Saída: parar de pedir código. A Meta manda esperar, e no caso de tentativa errada demais fala em cerca de 12 horas.
-
Nome de exibição recusado. "Your verified name violates WhatsApp guidelines." Saída: ajustar o nome pelas regras de nome de exibição da Meta e reenviar.
-
BM restrita de nascença. "You cannot proceed since your WhatsApp Business account is currently restricted." Saída: resolver a restrição no Business Support Home ou escolher outro WABA.
-
PIN. Erro 133005, PIN de duas etapas errado. Saída: desligar a verificação em duas etapas e criar PIN novo. Se voltou 133016, bateu o limite de tentativa: espera o bloqueio passar.
-
Feature Unavailable. "This feature is unavailable for phone numbers from this region." Saída: o número é de região que o fluxo não aceita; outro número.
-
Error while pairing (coexistência). O pareamento do app WhatsApp Business com o teu sistema falha. O que a Meta exige e eu confiro primeiro: app WhatsApp Business na versão 2.24.17 ou maior, e o cliente sabendo que os aparelhos vinculados desconectam no onboarding e precisam vincular de novo.
-
Portfólio não aparece pra escolher. O cliente loga e o portfólio dele não está na lista. Tem pergunta parada no Stack Overflow com zero resposta, e a doc da Meta não fala dele. O primeiro que eu confiro: o perfil que logou é admin daquele portfólio? Se não é, ele não aparece.
-
Temporarily blocked. "You have been temporarily blocked from performing this action." Saída: parar de repetir a ação, que repetir piora, e falar com o Business Support. Eu tomei esse em 01/10 e sei o gosto.
Fonte da Meta: - Erros do Embedded Signup (as mensagens e as saídas) - Códigos de erro do WhatsApp (133005, 133016) - Coexistência: requisitos e aparelhos vinculados - Thread no fórum da Meta: número preso em coexistência (#2655093) - Nome de exibição - Fora da Meta: Stack Overflow, portfólio que não aparece
Isso aqui é o que eu olho todo dia nos apps que aprovo. Se tu quer que eu olhe o teu, é o Vigia, R$97 por mês.
Quero o Vigiatu fala comigo no WhatsApp · pagamento antecipado
Quem aprova o sistema dos outros na Meta: favuka.com/homologacao