Especificação pública e para desenvolvimento
Consentimentos Granulares
Versão 1.0 · 20 de abril de 2026 · ACRA System · CNPJ 39.973.426/0001-67
Conforme LGPD art. 8º, §4º, o consentimento deve ser "fornecido para finalidades determinadas" — sendo proibido o consentimento genérico. Este documento especifica os consentimentos separados que o LeiturasBíblicas coleta, seus textos, o fluxo UX e a especificação técnica de armazenamento.
1. Lista de consentimentos separados obrigatórios
Base legal: Execução de contrato + Consentimento · Padrão: não pré-marcado
"Para que eu possa usar o LeiturasBíblicas (leitor bíblico, planos de leitura, estudos), autorizo o tratamento dos meus dados de cadastro (nome, WhatsApp, e-mail, data de nascimento, preferências) para fins de autenticação, entrega do Serviço e comunicação de rotina."
Observação técnica: Base legal composta — execução de contrato (art. 7º, V) + consentimento para dado sensível inferido (religioso).
Base legal: Consentimento específico · Padrão: não pré-marcado
"Autorizo que as perguntas que eu enviar ao Assistente Bíblico sejam processadas por modelos de inteligência artificial fornecidos por terceiros contratados pelo LeiturasBíblicas, para gerar respostas de estudo bíblico. Sei que as respostas podem conter erros e não substituem aconselhamento pastoral ou profissional."
Observação técnica: Consentimento separado — sem este aceite, o Assistente Gratuito com busca semântica local permanece disponível; apenas o Premium com IA fica bloqueado.
Base legal: Consentimento específico (LGPD art. 33, VIII) · Padrão: não pré-marcado
"Autorizo a transferência do texto das minhas perguntas ao Assistente para servidores localizados fora do Brasil (Estados Unidos), onde o processamento de IA é executado. Estou ciente das salvaguardas contratuais aplicadas (item 6 da Política de Privacidade) e de que posso revogar este consentimento a qualquer momento."
Observação técnica: Vinculado a C2 — se C2 for negado, C3 é automaticamente desativado.
Base legal: Consentimento específico e destacado (LGPD art. 11, II, "a") · Padrão: não pré-marcado
"Reconheço que o uso deste serviço de estudo bíblico cristão revela interesse em temática religiosa, o que configura dado sensível pela LGPD. Autorizo o tratamento desta informação exclusivamente para a finalidade de entrega do Serviço contratado (leitor bíblico, estudos, Assistente), sem nenhum compartilhamento com terceiros para fins de marketing, publicidade, perfilização externa ou venda de dados."
Observação técnica: Dado sensível exige consentimento destacado — deve aparecer em seção visualmente separada dos demais, com fundo diferenciado e checkbox maior. Jamais pré-marcado.
Base legal: Consentimento — opt-in · Padrão: pré-marcado ✓
"Autorizo o envio de versículos diários, lembretes de plano de leitura e comunicações de serviço para o meu WhatsApp e/ou e-mail cadastrado. Entendo que não receberei publicidade de terceiros. Posso revogar a qualquer momento no painel de Configurações ou respondendo PARE a qualquer mensagem."
Observação técnica: Pré-marcado é aceitável aqui pois é opt-in expresso apenas para comunicações do próprio Serviço — não é publicidade de terceiros. Revogação simples em 1 clique.
Base legal: Consentimento específico — opt-in · Padrão: não pré-marcado
"Autorizo o uso de cookies de análise agregada (estatísticas anônimas, sem identificação individual) para ajudar a equipe do LeiturasBíblicas a entender o uso da plataforma e melhorá-la. Entendo que cookies técnicos essenciais (autenticação, sessão) são sempre necessários e não requerem consentimento."
Observação técnica: NÃO pré-marcar. Exibir banner de cookies na primeira visita (fora da área logada também).
2. Fluxo UX — Wireframe das telas
O cadastro é dividido em 4 etapas, cada uma com foco único para evitar sobrecarga cognitiva e obter consentimento informado:
Etapa 1 — Identificação básica
- Nome completo
- WhatsApp (com validação OTP)
- Data de nascimento (derivação automática: maior/menor)
- E-mail (opcional)
[ Continuar → ]
Etapa 2 — Consentimentos essenciais
- [ ] C1 — Tratamento geral de dados (essencial, precisa ser marcado)
- [ ] C4 — Dado sensível religioso (DESTACADO em card dourado separado)
- [ ] Aceito os Termos de Uso e Política de Privacidade
[ Continuar → ]
Nota: Cada checkbox é individual. Sem a opção 'Aceitar todos'. Sem pré-marcação em C1 e C4. Link para ler cada documento ao lado do texto.
Etapa 3 — Consentimentos opcionais
- [ ] C2 — Uso do Assistente IA (desbloqueia Premium)
- [ ] C3 — Transferência internacional (só habilitado se C2 marcado)
- [x] C5 — Comunicações por WhatsApp (pré-marcado, pois é serviço próprio)
- [ ] C6 — Cookies de analytics agregado
[ Continuar → ]
Nota: Usuário pode recusar todos e continuar — a camada Gratuita permanece funcional (sem IA Premium).
Etapa 4 — Confirmação
- Resumo visual de cada consentimento: ✓ autorizado / ✗ não autorizado
- Data, hora e IP registrados
- Hash do documento de Termos aceito
- Botão final: "Criar minha conta"
[ Criar minha conta ]
Regras gerais do UX:
- Nenhum checkbox pré-marcado (exceto C5, que é comunicação do próprio serviço)
- Sem botão "Aceitar todos" unificado
- Cada texto precisa ser legível (mínimo 14px, contraste WCAG AA)
- Links para documentos abrem em nova aba (não perdem o progresso)
- Usuário pode voltar e alterar em qualquer etapa
- Tempo médio de cadastro alvo: 90 segundos
3. Especificação técnica — armazenamento
Cada aceite gera um registro imutável no banco:
Table: consent_log ───────────────────────────────────── id UUID PK user_id UUID FK → users consent_code VARCHAR(8) -- C1, C2, C3, C4, C5, C6 consent_version VARCHAR(16) -- "1.0" (versão do texto aceito) text_hash CHAR(64) -- SHA-256 do texto exato aceito granted BOOLEAN -- true = autorizou; false = recusou granted_at TIMESTAMPTZ -- data/hora UTC ip_address INET -- IP do aceite user_agent TEXT -- navegador/dispositivo revoked_at TIMESTAMPTZ -- quando revogado (NULL se ativo) revoked_reason TEXT -- motivo (opcional) INDEX: (user_id, consent_code, revoked_at)
Regras de negócio:
- Imutabilidade: registros de consent_log nunca são editados ou deletados. Revogação cria novo registro ou atualiza
revoked_at. - Versionamento: quando o texto do consentimento muda, incrementa-se
consent_version. Usuários existentes precisam re-aceitar a nova versão. - Hash SHA-256: preserva evidência do texto literal aceito — protege contra alteração retrospectiva de termos.
- Histórico preservado: mesmo após revogação, o registro anterior permanece (para prova de que houve aceite no momento X).
4. Fluxo de revogação por finalidade
No painel de Configurações → aba "Privacidade", o usuário vê:
- Lista de todos os consentimentos dados (com data e versão)
- Status atual: autorizado / revogado
- Botão "Revogar" ao lado de cada item ativo
- Botão "Exportar histórico" (download JSON com seu histórico de aceites)
Efeitos de cada revogação:
- C1 revogado: conta é encerrada automaticamente (não há como operar sem esse consentimento).
- C2 revogado: Assistente Premium fica indisponível imediatamente. Créditos não consumidos são reembolsados proporcionalmente.
- C3 revogado: implica revogação automática de C2 (sem transferência, não há Premium).
- C4 revogado: conta é encerrada (temática religiosa é inerente ao Serviço).
- C5 revogado: comunicações cessam imediatamente. Conta permanece funcional.
- C6 revogado: analytics agregados param. Conta permanece funcional.
A revogação tem efeito prospectivo (art. 8º, §5º LGPD) — não invalida tratamentos realizados legitimamente antes.
5. Auditoria e exportação
A qualquer tempo, titular e DPO podem exportar o log completo de consentimentos de um usuário específico para fins de:
- Prova em contestação administrativa ou judicial
- Atendimento a direito de acesso (LGPD art. 18, II)
- Atendimento a direito de portabilidade (LGPD art. 18, V)
- Relatório interno de conformidade
Formato de exportação: JSON estruturado com todos os campos de consent_log + anexo dos textos literais (com seus hashes) das versões aceitas.
6. Checklist de implementação pelo time de TI
- Criar migration 021 — tabela
consent_logconforme especificação - Criar endpoints: POST /users/consent (registrar), DELETE /users/consent/:code (revogar), GET /users/me/consents (listar do próprio usuário)
- Implementar tela de cadastro em 4 etapas conforme wireframe
- Implementar painel de privacidade em /dashboard/settings
- Implementar banner de cookies (fora de login) com toggle C6
- Implementar job de versionamento: quando um documento legal muda, marcar todos os aceites da versão anterior como "desatualizados" e exigir re-aceite
- Implementar exportação JSON no painel do usuário
- Testes automatizados garantindo que nenhum checkbox venha pré-marcado (exceto C5, testado separadamente)
- Teste de acessibilidade (WCAG AA): contraste, navegação por teclado, leitor de tela
- Documentar em
/docs/consentimentos.mdpara revisão anual pelo DPO