# ECA Digital | o que é seu e o que é nosso

<https://unifokal.com/docs/modulos/eca-digital>

## ECA Digital | o que é seu e o que é nosso

O ECA Digital e o decreto que o regulamenta dividem o trabalho de quem verifica idade. A sua empresa oferece o serviço com restrição de idade: decide onde exigir a verificação, responde pela efetividade dela e é a controladora do dado. A UNIFOKAL fornece o mecanismo de aferição e o sinal de idade, e trata o dado como operadora, só para a aferição. Receber o nosso sinal não tira de você a responsabilidade pela barreira, e a lei fala em proteção integral garantida por todos os agentes da cadeia: por isso cada lado tem a sua parte escrita aqui.

### Quem faz o quê

| Tema | Sua empresa | UNIFOKAL |
| --- | --- | --- |
| Aferir a idade, para qual serviço e a cada acesso | Decide onde exigir e responde pela efetividade da barreira. Declara o grau de risco do serviço e vincula o resultado à conta do próprio usuário. | Entrega o mecanismo: a aferição pela selfie e o caminho de documento. |
| Finalidade e base legal | Declara a finalidade do flow. É a controladora do dado, com o melhor interesse da criança e do adolescente sempre à frente. | Trata só na finalidade declarada, como operadora, e nunca usa o dado da aferição para outra coisa, para cliente nenhum. |
| Requisitos do mecanismo | Adota o mecanismo e avalia se ele é proporcional ao seu serviço. | Projeta, opera, mede e documenta: acurácia, robustez, mínimo de dado, segurança, nenhuma rastreabilidade entre acessos, inclusão, transparência e auditoria. |
| O sinal recebido | Recebe só o veredito e adapta a experiência. No alto risco, aceita como verificação só o resultado cujo método é o documento. | Entrega o veredito e o mínimo; do documento, só se ele confirma a idade mínima; e o método no topo do payload. |
| Contestação | Mantém o canal (o atendimento), decide a reavaliação e responde ao titular. | Mostra o caminho no widget, oferece a reavaliação pelo documento e mede quantas contestações viram aprovação. |
| Informação ao titular e à família | Avisa no próprio serviço, antes de abrir o widget. | Mantém a página pública do mecanismo, em linguagem simples, para você apontar. |
| Avaliação de impacto | A do seu serviço. | A do mecanismo, revista a cada seis meses e a cada troca de modelo, e a ficha que alimenta a sua. |
| Supervisão parental, uso compulsivo, classificação e publicidade | Ficam com você, conforme o serviço. | Não se aplicam a um componente de verificação, que não controla conteúdo nenhum. |
| Registro das operações e incidente | Mantém o seu registro e comunica a autoridade e o titular quando a lei manda. | Mantém o nosso registro e avisa você. |

### A finalidade do flow

Todo flow tem uma finalidade de dado: `identity` (identidade, o padrão) ou `age_assurance` (aferição de idade). Flow só com `idade` e `liveness` é sempre aferição de idade, sem escolha, porque é o mais protetivo. Flow com `idade` e o caminho de documento (`cpf_ocr` ou `doc_global`, com `face`, `liveness` e, se quiser, `doc_forense`) pede que a sua empresa declare a finalidade, porque a mesma composição serve ao KYC com idade e à aferição pura, e quem decide para que o dado é coletado é o controlador. Flow só com o caminho de documento é identidade, e pode ser declarado aferição de idade. Qualquer outra composição é identidade.

Na aferição de idade, as imagens (selfie, quadros da prova de vida e documento) são eliminadas ao fim da verificação, salvo guarda exigida por lei; do documento sai só se ele confirma a idade mínima, sem nome, CPF nem data de nascimento; o aparelho fica registrado sem os dados que ligariam uma sessão a outra; o rosto não é comparado com a lista de bloqueio, não vira origem de reuso de documento e não vira matrícula de reautenticação facial. Depois da eliminação, a verificação não se reprocessa. Na identidade, as imagens ficam pela guarda de 180 dias do seu KYC.

### O grau de risco, e o que ele muda

Na aferição de idade, a sua empresa declara o grau de risco do serviço no flow. O padrão é `high`: conteúdo, produto ou serviço proibido para menores e caixa de recompensa, onde a norma exige verificação de idade. No `high`, só o resultado com `age_method` igual a `document` vale como verificação de idade: a estimativa pela selfie é aferição, não verificação, e por isso pode recusar ou mandar ao documento, nunca aprovar sozinha. Flow `high` sem o caminho de documento é recusado na criação. O `moderate` é o conteúdo impróprio ou inadequado para a faixa etária: nele a estimativa pode aprovar, e a dúvida termina pedindo o documento. Avaliar o risco do próprio serviço é do controlador, e a escolha fica no registro de cada verificação.

### O que chega a você, e o que guardar no seu registro

O topo do payload e do webhook traz sempre a finalidade em `data_purpose`. Na aferição de idade ele traz também o grau, em `age_risk_tier`, e o método que produziu a decisão. `age_method` vale `facial_estimation` quando a decisão saiu da estimativa pela selfie, `document` quando saiu do documento e `manual_review` quando uma pessoa da sua equipe decidiu no painel. Guarde no seu registro de auditoria só o resultado, o momento e o método: nada de imagem, de documento ou de idade.

```
{ "data_purpose": "age_assurance",
  "age_risk_tier": "high",           // high | moderate
  "age_method": "document",          // facial_estimation | document | manual_review | null
  "check_details": [
    { "module": "idade",   "data": { "decision": "INCONCLUSIVE", "minimum": 18 } },
    { "module": "cpf_ocr", "data": { "age_over_minimum": true,  "minimum": 18 } } ] }
```

Na aferição de idade, o `cpf_ocr` e o `doc_global` entregam só `age_over_minimum` e `minimum`, e o resumo leva `age_document` com `over_minimum`, `under_minimum` ou `unreadable` no lugar de `identity`. Nenhum bloco de identidade.

### Vincule o resultado à conta do próprio usuário

Grave o resultado na conta de quem passou pela verificação, pelo `reference_id` que você mandou ao criar a sessão, e nunca reaproveite o resultado de uma conta em outra. A barreira a cada acesso usa esse resultado guardado ou uma nova aferição; a UNIFOKAL não guarda o rosto para reconhecer a pessoa depois.

### Quando o resultado é age_document_required

Na aferição de idade, o inconclusivo, a falta de prova de vida, o sim da estimativa no alto risco e as tentativas recentes da mesma referência com resultados divergentes (o motivo `age_divergent_attempts`) encerram a verificação sem aprovar, com o motivo `age_document_required`. É um desfecho final, e não uma revisão aberta: as imagens saem do mesmo jeito, e não existe fila de análise esperando alguém. O próximo passo é seu e é imediato. Ao receber o webhook, o seu servidor abre na hora, servidor a servidor, uma nova sessão num flow de aferição de idade com o caminho de documento, e manda o titular para ela. A orientação da autoridade de proteção de dados dá como exemplo de falha a análise que se arrasta por setenta dias: quem completou 18 anos não pode esperar meses para ter a idade confirmada.

Do lado do documento, os motivos são `age_below_minimum_document` (o documento mostra idade abaixo do mínimo) e `age_document_unreadable` (a data de nascimento não pôde ser lida). A idade é contada em anos completos, na data civil do fuso legal mais a oeste do país.

### Contestação

Quem afere ou verifica a idade tem de dar ao usuário um meio de contestar. Nas telas de recusa e de análise de um flow com `idade`, o widget mostra ao titular, ao lado do botão de atendimento da sua empresa, que ele pode falar com o atendimento e pedir outra forma de comprovar a idade. Em produção, a criação de sessão de flow com `idade` devolve `age_contest_channel_required` (422) enquanto o atendimento da organização estiver desligado. Ao receber uma contestação, abra a sessão do flow de documento, como no roteiro acima, e responda ao titular por escrito e em prazo curto. A decisão e a resposta são da sua empresa.

### O que mostrar antes de abrir o widget

A informação essencial vem antes de a aferição começar, no seu serviço, e diz que há inteligência artificial nela. Um modelo de frase, para adaptar à sua tela:

```
Para confirmar que você tem pelo menos 18 anos, vamos pedir uma selfie com prova de vida.
A aferição usa inteligência artificial, serve só para isso e as imagens saem ao fim da verificação.
Se você discordar do resultado, fale com o nosso atendimento.
Como funciona: https://unifokal.com/verificacao-de-idade
```

A página [Verificação de idade](https://unifokal.com/verificacao-de-idade) explica, para o titular e a família, o que é feito, que dado entra, para que serve e para que nunca serve, quanto tempo fica, quem decide e como contestar.

### Ficha do mecanismo, para a sua avaliação de impacto

**Dados tratados.** Na aferição pela selfie: as imagens da selfie e dos quadros da prova de vida, só durante a verificação. No caminho de documento: a imagem do documento, da qual sai só a confirmação da idade mínima. A estimativa de idade nunca é gravada nem enviada; ela só alimenta um contador semanal anônimo, sem organização e sem verificação, que serve à calibração.

**Guarda por finalidade.** Aferição de idade: imagens eliminadas ao fim da verificação, salvo guarda exigida por lei, e o registro do resultado, do momento e do método. Identidade com idade: imagens pela guarda de 180 dias do KYC, e a idade estimada também fora do payload e do registro.

**Medidas.** Prova de vida antes de qualquer aferição; sinal mínimo ao cliente; o dado da aferição usado só para ela, sem antifraude, perfil nem outro produto; separação por organização; nenhuma ligação entre as sessões de uma pessoa; documento pedido sempre que a estimativa não basta; contestação com reavaliação pelo documento.

**Método de medição.** Fora de produção, pelo método público de avaliação de estimativa e verificação de idade do NIST: a fração de menores de 13 a 17 anos aprovados indevidamente, por idade e por subgrupo de sexo e de cor ou raça autodeclarada, e a fração de adultos barrados ou mandados ao documento, com teto de confiança unilateral de 95%, comparada à tabela pública do NIST no dia da rodada. Em produção, o acompanhamento diário das taxas de inconclusivo e de prova de vida não sustentada e a fração de contestações que viram aprovação pelo documento. Os números vão ao seu painel, na tela Pedidos de titulares, e enquanto não houver medição ela diz isso.

O payload do módulo, os vereditos e o sandbox estão em [Verificação de idade](https://unifokal.com/docs/modulos/idade#modulo-idade).
