Raphael Serafim· Publicado em 10 de setembro de 2026· 10 min de leitura

API de WhatsApp e LGPD: o que a sua software house precisa garantir no contrato do cliente

Ao integrar WhatsApp no sistema de um cliente, você vira operador de dados pessoais. O que isso exige na prática: papéis definidos em contrato, base legal para cada disparo, retenção de conversa, atendimento a titular e o que fazer num incidente.

Ver como Markdown

No momento em que você integra WhatsApp ao sistema de um cliente, você passa a tratar dados pessoais de terceiros. Nome, telefone, conteúdo de conversa, horário, às vezes documento e endereço — tudo trafegando pelo seu código e parando no seu banco.

Isso tem consequência contratual, e ela costuma aparecer tarde: na hora em que o cliente é uma empresa grande e o jurídico dele pede o acordo de tratamento de dados que você não tem.

Este artigo é orientação prática de quem constrói software, não parecer jurídico. Contrato e política devem passar por advogado.

Quem é o quê

A LGPD separa dois papéis, e a diferença define quem responde pelo quê.

Controlador decide sobre o tratamento: a quem mandar, com que finalidade, por quanto tempo guardar.

Operador trata os dados em nome do controlador, seguindo instruções.

Numa integração típica de software house:

QuemPapel típicoPor quê
Seu clienteControladorDecide o que enviar, para quem e por quê
Sua software houseOperadorFornece e opera o sistema conforme instruções
Plataforma de APISuboperadoraTransmite as mensagens

Cuidado com o caso em que você vira controlador sem perceber. Se a sua software house decide sozinha guardar as conversas por cinco anos para treinar um modelo, ou usa a base de um cliente para outra finalidade, essa decisão é de controlador — e a responsabilidade acompanha.

Base legal antes do disparo

Consentimento é uma das bases legais, não a única. O que não existe é tratamento sem base nenhuma.

MensagemBase usual
"Seu pedido #1042 saiu para entrega"Execução do contrato
"Sua consulta é amanhã às 14h"Execução do contrato
"Seu boleto vence hoje"Execução do contrato / obrigação legal
"Promoção de aniversário, 30% off"Consentimento
"Faz tempo que você não compra..."Consentimento (ou legítimo interesse, com análise)

A regra de bolso que funciona no dia a dia: se a mensagem existe porque o titular fez algo, geralmente é execução de contrato. Se existe porque você quer que ele faça algo, geralmente é consentimento.

É a mesma divisória que a Meta usa para categorizar templates, o que não é coincidência — as duas regras protegem a mesma coisa.

Quando a base é consentimento, ele precisa ser registrado com prova: quando, onde, e o texto que a pessoa leu. O modelo de tabela está em opt-in e opt-out.

O que precisa estar no contrato

Sete pontos. Se faltarem, o jurídico do cliente vai pedir — melhor você chegar com eles prontos.

1. Papéis. Quem é controlador, quem é operador. Escrito.

2. Finalidade e escopo. Para que os dados são tratados e o que não é permitido. A cláusula que protege você é a que diz que a software house trata os dados apenas conforme instruções documentadas do controlador.

3. Dados tratados. Telefone, nome, conteúdo das mensagens, mídias, metadados de entrega e leitura.

4. Retenção. Prazo de guarda e o que acontece no fim do contrato: devolução, exclusão, ou exclusão após um período de disponibilização.

5. Subtratamento. Nomeie a plataforma de API e onde a infraestrutura opera. É a pergunta que sempre vem, e responder antes economiza uma rodada.

6. Titulares. Quem recebe o pedido, quem executa, em qual prazo. Normalmente o cliente recebe e você executa.

7. Incidente. Prazo e canal para você comunicar o cliente. Combine algo curto e realista — 24 ou 48 horas da ciência.

O que precisa estar no código

Cláusula sem implementação é papel. Quatro coisas fazem a diferença:

Exclusão por titular que cubra tudo.

async function excluirTitular(numero) {
  await db.mensagens.deletar({ numero });
  await db.contatos.deletar({ numero });
  await storage.remover(`midias/${numero}/`);   // mídias também
  await db.logs.anonimizar({ numero });         // logs também
  await registrarExecucao(numero, 'exclusao');  // prova de que atendeu
}

Apagar a linha da tabela de contatos e deixar cinco anos de conversa, mídias no bucket e o número em log de aplicação não é exclusão. A parte que quase todo mundo esquece é o backup: tenha uma política escrita de como o dado sai dele também, nem que seja pela expiração do próprio backup.

Retenção automática.

DELETE FROM mensagens WHERE criada_em < NOW() - INTERVAL '2 years';

Um job. Retenção que depende de alguém lembrar não é política.

Registro do consentimento, com o texto exibido.

Minimização. Não guarde o que não usa. Se o seu sistema não precisa da mídia depois de processada, não a guarde.

Onde a API oficial ajuda no argumento

Quando o cliente é uma empresa grande, a pergunta vem: "esse WhatsApp é oficial?"

A API oficial da Meta dá o que a área de risco quer ver: relação contratual com a Meta, conta no Business Manager do próprio cliente e regras claras sobre o que pode ser enviado. Em contrato com empresa de porte, isso costuma ser eliminatório.

A não oficial não é ilegal — mas não oferece essa relação contratual, e há setores em que isso encerra a conversa. Vale saber disso antes da reunião, não durante.

A política de privacidade e os termos da plataforma que você usa como subtratadora também vão ser pedidos: privacidade, termos e LGPD.

Um checklist para a próxima proposta

  • Papéis definidos por escrito
  • Base legal identificada para cada tipo de mensagem
  • Consentimento registrado com data, origem e texto exibido
  • Opt-out funcionando e checado na hora do envio
  • Prazo de retenção definido e automatizado
  • Exclusão por titular cobrindo mensagens, mídias, logs e backup
  • Subtratadora nomeada no contrato
  • Prazo de comunicação de incidente combinado
  • Acesso ao sistema restrito e registrado

Conclusão

Para quem entrega software, LGPD numa integração de WhatsApp é menos sobre jurídico e mais sobre decidir antes: quem responde pelo quê, com que base cada mensagem sai, por quanto tempo o dado fica e como ele é apagado quando alguém pede.

Chegar na proposta com essas respostas prontas deixa de ser custo e vira argumento — especialmente com cliente grande, onde a alternativa é o seu projeto parar no jurídico dele por semanas.

Se esse é o seu tipo de cliente, a página para software house trata do resto do desenho.

Pronto para automatizar seu WhatsApp?

Crie sua conta gratuita e comece a enviar mensagens pela API em minutos.

Começar grátis

Perguntas frequentes

Quem é o controlador dos dados numa integração de WhatsApp?+

Em geral o seu cliente, porque é ele quem decide para quem mandar mensagem e com que finalidade. A software house que apenas fornece e opera o sistema costuma figurar como operadora, tratando os dados conforme as instruções do controlador. O que define o papel é quem toma as decisões sobre o tratamento, não quem hospeda o servidor.

Consentimento é sempre necessário para mandar WhatsApp?+

Não necessariamente. Consentimento é uma das bases legais possíveis. Mensagem transacional sobre um pedido em andamento normalmente se apoia na execução do contrato; mensagem promocional para quem não pediu costuma exigir consentimento. O que não existe é disparo sem base legal nenhuma.

Por quanto tempo posso guardar as conversas do WhatsApp?+

Pelo tempo necessário à finalidade que justificou a coleta, mais eventuais prazos legais aplicáveis. O que a LGPD não admite é guardar indefinidamente por padrão. Na prática, definir uma política de retenção com prazo escrito e automatizar o descarte é o que transforma a regra em algo verificável.

Preciso de contrato específico com meu cliente para isso?+

Sim, e ele deve estar escrito. O contrato precisa deixar claro quem é controlador e quem é operador, qual a finalidade do tratamento, quais dados são tratados, por quanto tempo, quem responde pelo atendimento a titulares e como um incidente será comunicado.

O que fazer se alguém pedir para excluir os dados dele?+

O pedido é normalmente dirigido ao controlador — o seu cliente. Como operador, você precisa ter o mecanismo pronto para atender à instrução dele dentro do prazo. Na prática isso significa ter uma função de exclusão por titular que cubra conversas, mídias, logs e backups, e não só a linha da tabela de contatos.

Continue lendo