# Como reconhecer o mesmo cliente em todos os canais

> Telefone, e-mail, CPF e login do app têm pesos diferentes. Veja como unificar a identidade do cliente entre canais para agentes de IA, sem expor dados.

URL: https://niadra.com/blog/como-reconhecer-o-mesmo-cliente-em-todos-os-canais
Publicado em: 2026-09-21 · Identidade · Time Niadra

Para reconhecer o mesmo cliente no WhatsApp, na voz, no e-mail e no app, o sistema cruza os identificadores que cada canal entrega (telefone, e-mail, CPF, login do app) e atribui um peso a cada um, porque nenhum deles, sozinho, prova quem está do outro lado. Cada vínculo entre dois identificadores fica registrado com a origem e o nível de confiança, e pode ser desfeito sem perder histórico. O agente de IA recebe um contexto que muda conforme o quanto a conversa já provou quem é a pessoa: antes da verificação, o necessário para atender; depois dela, os dados sensíveis.

## Por que cada canal identifica o cliente de um jeito diferente?

Cada canal entrega um identificador próprio, e nenhum foi desenhado para conversar com os outros.

- O **WhatsApp** entrega, em geral, o número de quem escreve. A [documentação oficial da plataforma](https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/overview) avisa que o ID do remetente pode não coincidir com o telefone, e os nomes de usuário trazem um [ID com escopo da empresa](https://developers.facebook.com/documentation/business-messaging/whatsapp/business-scoped-user-ids/), diferente para cada empresa.
- A **voz** entrega o número de origem, que pode ser falsificado, chegar oculto ou ser o de um PABX (que identifica a empresa, não a pessoa). A autenticação de chamadas que a [FCC](https://www.fcc.gov/call-authentication) exige das operadoras (STIR/SHAKEN) atesta a linha, não quem fala.
- O **e-mail** confirmado por um link vale mais que um endereço digitado num formulário.
- O **app** entrega o login com senha, o identificador mais forte, mas apenas de quem baixou o app e entrou.
- O **CPF** falado na ligação mostra que a pessoa conhece o número, e não que é a dona dele.

Sem um ID de usuário válido em todos os canais, a identidade precisa ser montada a partir das pistas de cada conversa.

## Como unir identificadores sem um ID de usuário pronto?

O primeiro contato já cria o cliente, ancorado no identificador que o canal entregou. Se a empresa tem um ID de CRM ou de app, ele entra como mais um identificador, com peso alto. Cada identificador recebe um peso conforme o que prova:

- O telefone é uma **pista**: o número pode ter trocado de dono.
- O CPF informado na ligação é **declarado**: a pessoa disse, e nada confirmou.
- O e-mail confirmado pelo link é **verificado**.
- O login do app com senha é **autenticado**.

Dois identificadores viram o mesmo cliente quando há evidência. O sistema da empresa informa que o login 88213 tem aquele telefone, ou a pessoa confirma um código enviado ao número. Nome parecido nunca une perfis.

Cada união fica registrada como uma afirmação, com método, data e origem. Cada fato da memória fica preso ao identificador e à conversa de onde veio, e não ao perfil. Por isso uma união errada se desfaz: retirada a afirmação, os fatos voltam para o dono certo.

Três regras protegem contra a união errada:

- Dois perfis já autenticados nunca se unem sozinhos. Essa união exige uma pessoa, com nome e motivo registrados.
- Valores de teste, como `0000000000` ou o CPF `111.111.111-11`, nunca viram chave.
- Um identificador presente em muitos clientes (o telefone de uma loja, o PABX de uma empresa) fica marcado como ambíguo e não une perfis.

## O que fazer quando o número de telefone muda de dono?

As operadoras reatribuem números desativados a novos assinantes. Pesquisadores da [Universidade de Princeton](https://recyclednumbers.cs.princeton.edu/) ficaram uma semana com 200 números reciclados, e 19 deles ainda recebiam mensagens sensíveis do dono anterior, como códigos de autenticação. No atendimento, se o telefone é a chave, o agente de IA cumprimenta o novo dono pelo nome do antigo e lê para ele as faturas de outra pessoa.

Quatro práticas tratam esse risco sem apagar nada:

1. A confiança do telefone cai com o tempo sem uso. O [NIST](https://pages.nist.gov/800-63-4/) pede que cada organização defina quando reverificar uma identidade depois de inatividade prolongada.
2. Sinais de ruptura disparam a suspeita a qualquer momento, como um "quem é você?" na primeira mensagem ou um login com CPF diferente do dono salvo.
3. O vínculo entre o número e o cliente é suspenso, não apagado. A conversa abre um perfil provisório e vazio, e o histórico do dono anterior fica guardado, fora do contexto.
4. A confirmação não revela nada. O agente pede um dado que o dono verdadeiro digitaria sem esforço (CPF, e-mail, número do pedido) e confere em silêncio. Ele nunca pergunta "você é a Marina?", porque a pergunta entrega o nome.

Se a confirmação bate, o contexto completo volta. Se não bate, o número ganha um cliente novo, e o histórico da Marina segue intacto.

## Como verificar a identidade durante a conversa?

Reconhecer indica qual cliente provavelmente está na conversa. Autenticar prova que é ele, e a norma do NIST trata as duas coisas em partes separadas. Na verificação progressiva, a conversa sobe de nível a cada prova nova:

| Nível | O que a conversa provou |
|---|---|
| 0. Declarado | A pessoa disse quem é |
| 1. Plausível pelo canal | A origem já está ligada ao cliente |
| 2. Atestado pelo canal | A rede ou a plataforma atesta que a origem não foi falsificada |
| 3. Desafiado | A pessoa confirmou um código enviado ao canal, ou entrou com senha |
| 4. Documental | O dado bate com o cadastro da empresa, ou um atendente confirmou |

O nível sobe apenas por um evento explícito, como um código confirmado, e nunca por inferência de um modelo de IA. No código, o agente pede o contexto de novo quando o nível sobe:

```python
# Durante o toque: só o número de origem identifica a cliente (nível 1)
ctx = niadra.context(phone=caller_id, channel="voice")

# Código por SMS confirmado: a conversa sobe para o nível 3
ctx = niadra.context(phone=caller_id, channel="voice", verification="otp")

# Durante a conversa: o agente consulta o histórico da cliente
hits = niadra.search("crédito por visita técnica perdida", customer=ctx.customer)
```

## O que o agente de IA recebe antes e depois da verificação?

Às 14h02, a Marina avisa no WhatsApp, onde atende o agente do fornecedor A, que a visita técnica prometida para hoje de manhã não aconteceu. Às 14h05, ela contesta pelo app a fatura de agosto. Às 14h07, ela liga, e quem atende é o agente de voz do fornecedor B.

O número dela já estava ligado ao perfil, então a chamada começa no nível 1. O contexto que chega antes do alô traz o nome, a visita que não aconteceu (WhatsApp, 14h02), a contestação aberta (App, 14h05) e o aviso de que outra visita já tinha falhado (Telefone, 12/03). A política da empresa exige o nível 3 para dados de fatura e de crédito, então esses detalhes ficam retidos.

A Marina confirma o código enviado por SMS, e o agente pede o contexto de novo, agora com os itens retidos. Quando ela lembra que da outra vez recebeu um crédito, o agente consulta o histórico e encontra o registro de 12/03, por telefone: técnico não compareceu, crédito de R$ 40 aplicado na fatura de abril.

A privacidade vem do próprio desenho: quem liga de um número falsificado recebe no máximo o que a empresa liberou para o nível mais baixo, e nenhum dado sensível. É a minimização de dados do [GDPR](https://gdpr-info.eu/art-5-gdpr/) e da LGPD, aplicada a cada momento da conversa.

## Como a Niadra resolve

A Niadra cruza telefone, e-mail, CPF e login do app e une tudo num só cliente, com nível de confiança. Cada informação fica ligada ao identificador de onde veio, e por isso a Niadra separa duas pessoas unidas por engano sem perder o histórico de nenhuma. O contexto muda conforme o quanto a conversa já provou quem é a pessoa, em cinco níveis de verificação, e chega ao agente em menos de 100 ms, com a origem de cada fato. Dado sensível só aparece depois da confirmação e é mascarado antes de chegar a qualquer modelo. Cada leitura entra numa trilha de auditoria encadeada por SHA-256. Veja o motor de identidade em [Produtos](/produtos) e as camadas de proteção em [Segurança](/recursos#seguranca).

## Perguntas frequentes

### Preciso de um ID de usuário único antes de usar agentes de IA em vários canais?

Não. O primeiro contato em qualquer canal já cria o cliente, a partir do identificador que o canal entregou. Um ID de CRM ou de app, se existir, entra como mais um identificador, com peso alto.

### O número de telefone basta para identificar o cliente?

Não. O número de origem pode ser falsificado, chegar oculto, pertencer a um PABX ou ter trocado de dono. Ele serve para reconhecer o cliente provável, e dado sensível exige uma prova mais forte, como um código confirmado ou um login.

### O que acontece se duas pessoas forem unidas por engano?

A Niadra separa as duas sem perder o histórico de nenhuma. Isso funciona porque cada informação fica ligada ao identificador e à conversa de onde veio, e não ao perfil.

### Como a verificação progressiva protege a privacidade do cliente?

O agente de IA recebe apenas o que o nível atual da conversa libera. Quem liga de um número falsificado ou reciclado não ouve valores nem faturas de outra pessoa.
