LGPD

Base legal da LGPD no checkout: o que é contrato e o que exige consentimento

Se o seu checkout tem checkbox de consentimento para o CPF da nota fiscal, apaga esse checkbox. Consentimento o titular revoga quando quiser, e você não vai apagar o CPF de uma nota já emitida — a Receita exige que ela fique guardada. Dado que você é obrigado a coletar não se sustenta em consentimento, se sustenta em obrigação legal.

Um campo, uma base legal

O artigo 7º da Lei 13.709 lista dez bases legais, e consentimento é só uma delas. No checkout, três dão conta de quase tudo. Mantenho esse mapa num arquivo versionado junto com o tema: quando chega pedido de titular ou dúvida do contador, ele responde sozinho:

| campo             | finalidade              | base legal (art. 7)      | retencao |
|-------------------|-------------------------|--------------------------|----------|
| nome              | emitir nota / entregar  | V - execucao de contrato | 5 anos   |
| CPF               | nota fiscal eletronica  | II - obrigacao legal     | 5 anos   |
| endereco+telefone | entrega do pedido       | V - execucao de contrato | 5 anos   |
| e-mail do pedido  | enviar rastreio e NF    | V - execucao de contrato | 5 anos   |
| e-mail newsletter | oferta e promocao       | I - consentimento        | ate revogar |
| IP + user agent   | antifraude              | IX - legitimo interesse  | 12 meses |

Repare que o mesmo e-mail aparece duas vezes com bases diferentes. Mandar o código de rastreio é execução do contrato; o cliente não precisa autorizar. Mandar promoção na semana seguinte é outra finalidade, e essa exige o opt-in. Finalidade nova, base legal nova. E legítimo interesse não é curinga: o artigo 10 pede finalidade concreta e teste de balanceamento registrado, que a ANPD pode cobrar.

O checkbox que junta tudo não vale

A armadilha mais comum é aquele campo único com “li os termos e quero receber ofertas”. O §4º do artigo 8º diz que autorização genérica é nula, e o consentimento tem que ser livre: amarrado à conclusão da compra, ele não é. São dois controles separados e o de marketing começa desmarcado. Guarde data, hora e origem do aceite: pelo §2º do mesmo artigo, o ônus de provar o consentimento é do controlador.

Se travou nisso e precisa de ajuda, me chama aqui.

Post Recentes

preg_replace_callback no PHP: substituir cada match com uma função

Quando o valor novo depende do que a regex achou, preg_replace não resolve. Exemplo real aplicando 10% de desconto em…

15 horas atrás

Cron do Magento 2 não roda: status missed e pending no cron_schedule

Pedido que não fatura e e-mail que não sai porque todo job fica missed: como ler a cron_schedule, conferir o…

2 dias atrás

Gerar slug de URL em PHP: acento, espaço e símbolo fora do endereço

Uma função curta em PHP 8.3 que transforma Camiseta Preta Tamanho GG em camiseta-preta-tamanho-gg, sem depender do locale do servidor.

2 dias atrás

Log de consentimento LGPD: a tabela MySQL que guarda a prova do aceite

O banner registra o clique só no navegador e some. Veja a tabela MySQL e o endpoint que gravam a…

3 dias atrás

Comando CLI Magento 2: criar a classe e registrar no di.xml

A classe do comando existe e o bin/magento list ignora ela. Falta o registro no di.xml: aqui vai a classe…

4 dias atrás

Traduzir o pt_BR.csv do Magento 2 em lote sem perder a coluna de origem

Como traduzir duas mil linhas do pt_BR.csv do Magento 2 lendo com fgetcsv e regravando com fputcsv, sem encostar na…

4 dias atrás