O cliente responde a sua campanha. A mensagem chega, aparece no painel — e a conversa está sem nome. O contato está na sua base, com nome, etiqueta e histórico, mas o sistema não os junta. Você procura pelo telefone e não acha. Procura pelo nome e o encontra, com o número certo, escrito do jeito certo.
A diferença é um dígito, e ele quase sempre é o nono.
De onde vem o problema
Celular brasileiro tem o nono dígito desde a virada de 2012 para 2016, aplicada por região. Com o código do país, um número completo fica assim:
| Formato | Exemplo | Quantos dígitos |
|---|---|---|
| Como você cadastra | 55 51 9 9708-1733 | 13 |
| Como a Meta costuma devolver | 55 51 9708-1733 | 12 |
Os dois são a mesma pessoa. Mas, para um banco de dados, são duas chaves diferentes — e é por isso que o mesmo contato vira duas conversas, duas linhas na base, e às vezes duas mensagens da mesma campanha.
O WhatsApp devolve o identificador no formato em que o número foi registrado na plataforma, e não no formato em que você o digitou. Para boa parte dos celulares brasileiros, isso significa doze dígitos, sem o nove.
Por que dói mais do que parece
Um dígito a menos não é um problema de exibição. Ele vaza para todo lugar em que o telefone é a chave:
A conversa não encontra o cadastro
A resposta chega como contato desconhecido, mesmo estando na base há meses. O atendente responde sem ver o histórico, a etiqueta ou em que etapa do funil aquela pessoa está.
A base dobra sem ninguém perceber
Se o sistema cria um contato ao receber mensagem de número novo, cada resposta vira um cadastro duplicado. A base cresce, e metade dela é a outra metade.
Quem pediu para sair continua recebendo
Este é o grave. A pessoa responde SAIR, você marca o descadastro — mas marca no contato de doze dígitos. A próxima campanha sai pela base, que tem o de treze, e ela recebe de novo. É assim que nasce denúncia, e a denúncia é o que derruba o número.
O relatório mente para os dois lados
Contatos únicos contados a mais, taxa de resposta contada a menos — porque a resposta ficou numa conversa que o sistema não liga à campanha que a gerou.
A regra que resolve, e por que ela não é "sempre põe o 9"
A tentação é acrescentar um nove em todo número de doze dígitos. Isso quebra dois casos, e os dois aparecem em base real:
Telefone fixo
Fixo brasileiro não tem nono dígito, e nunca vai ter. Ele se distingue pelo primeiro dígito do número: fixo começa em 2, 3, 4 ou 5; celular começa em 6, 7, 8 ou 9. Pôr um nove num fixo cria um número que não existe.
Número de fora do Brasil
Muito país tem número de doze dígitos. Sem conferir o código do país, a regra transforma um telefone estrangeiro válido em lixo.
A regra correta tem três condições, e todas precisam valer:
Tem 12 dígitos, começa com 55, e o primeiro dígito depois do DDD está entre 6 e 9. Só então o nove entra, logo depois do DDD.
5551 9708-1733 → 12 dígitos, 55, começa em 9 → vira 5551 9 9708-1733
5551 3012-4455 → 12 dígitos, 55, começa em 3 → é fixo, não mexe
3519 8765-4321 → 12 dígitos, mas não é 55 → não é Brasil, não mexe
Onde aplicar, e por que num lugar só
O erro comum não é errar a regra: é aplicá-la em alguns lugares e não em outros. O telefone entra no sistema por muitas portas — importação de planilha, cadastro manual, webhook de mensagem recebida, formulário de anúncio, integração de terceiro — e basta uma delas não normalizar para as duas versões voltarem a conviver.
Uma função só, chamada por toda porta de entrada. Se a regra existe em dois lugares, os dois divergem no primeiro ajuste, e o sintoma volta meses depois sem ninguém ligar uma coisa à outra.
E vale guardar o número já normalizado, não normalizar na hora de comparar: chave que depende de uma função ser chamada é chave que um dia não é chamada.
Como saber se você tem esse problema agora
Conte os telefones por tamanho
Se a sua base tem números de 12 e de 13 dígitos convivendo, o problema já está lá. Numa base só de celulares brasileiros, todos deviam ter 13.
Procure pares que diferem só pelo nono dígito
Tire o nono dígito de cada número de treze e veja se o resultado existe na base. Cada acerto é um contato duplicado — e provavelmente uma conversa órfã do outro lado.
Olhe as conversas sem nome
É o sintoma visível. Conversa sem cadastro numa base grande quase nunca é contato novo de verdade: é contato que existe, escrito de outro jeito.
Onde a Nobre entra
No Nobre CRM a normalização acontece na porta, e não na consulta: importação, cadastro, agenda, atendimento e os dois webhooks de mensagem recebida passam pela mesma função antes de qualquer coisa ser gravada. O telefone entra já no formato final.
É isso que faz a resposta do cliente cair na conversa que já existe, com nome, etiqueta e histórico no lugar — e faz o descadastro valer para a pessoa, e não para uma das duas formas de escrever o número dela.
E na importação há um índice único por telefone dentro de cada conta: reimportar a mesma planilha não duplica ninguém, porque a chave é o número normalizado e ele já está lá.