Documentação UNIFOKAL
Verificação de identidade ponta a ponta, sem call de vendas: você cria um Flow, instala o Widget e recebe o resultado por Webhook. A captura e o processamento (CPF, OCR, face match, liveness) rodam no UNIFOKAL, então o seu front nunca toca foto, selfie ou documento e você fica fora do escopo mais pesado da LGPD.
/v1. Tudo o que já mudou está no changelog, e o que consideramos mudança que quebra está na política de versão. Integrando por agente ou por ferramenta? O catálogo de API em /.well-known/api-catalog (RFC 9727) aponta, em uma leitura, para o spec e para esta documentação.Cinco passos acontecem uma vez, no painel, e três ficam no seu código. O código inteiro, pronto para copiar, está em Integração ponta a ponta.
| # | passo | onde |
|---|---|---|
| 01 | Confirme o e-mail da conta e conclua o onboarding. Sem isso, criar sessão devolve 403 email_not_verified. | painel |
| 02 | Cadastre o destino do webhook e escolha o segredo de assinatura. Ele vem primeiro porque o Flow exige um destino já cadastrado. | painel |
| 03 | Crie o Flow (os módulos e o destino do webhook). Recebe um flow_id. | painel |
| 04 | Gere a chave secreta. A de sandbox (sk_test) sai na hora. A de produção (sk_live) passa por três portões, nesta ordem: e-mail confirmado, verificação da conta concluída (403 organization_cnpj_required) e verificação em duas etapas ativa (403 mfa_enrollment_required, e depois o código no corpo). Veja Sandbox e produção. | painel |
| 05 | Registre as origens onde o widget vai rodar. Sem isso o navegador recusa a chamada e o widget não sobe. | painel |
| 06 | No seu backend, crie a sessão: POST /v1/verification-sessions. Recebe o id. | seu código |
| 07 | No seu front, monte o widget com esse id. Nenhum segredo vai ao navegador. | seu código |
| 08 | No seu backend, receba o webhook, valide a assinatura e trate o desfecho. | seu código |
flow | Receita de verificação: quais módulos rodam e em que ordem. |
verification | Uma execução do flow por um usuário. Tem status e score. |
reference_id | O ID do usuário no seu sistema. Obrigatório na criação da sessão e do link, e volta igual no webhook e na API. |
livemode | false em sandbox, true em produção. Vem em toda verificação e webhook. |
schema_version | Versão da FORMA do corpo do webhook. Campo novo não muda esse número; leia a política de versão. |
Mapa da documentação
A referência é dividida por assunto, uma página para cada um, e cada módulo tem a própria página. Todo link antigo para uma seção desta página continua valendo e leva ao lugar novo.
O Widget
Como instalar o Widget UNIFOKAL em uma linha, montar com o id da sessão, tratar os eventos e fixar a versão do bundle com integridade.
Verificação em aplicativo
Como abrir a verificação UNIFOKAL numa WebView do seu aplicativo: os ajustes de iOS e de Android que a câmera exige e como o app sabe a hora de fechar a tela.
Autenticação e segurança
Chaves secretas de sandbox e de produção, os erros estáveis da criação de sessão, a segurança do fluxo e o acesso da equipe por SSO (SAML 2.0).
Integração ponta a ponta
Código completo para criar a sessão, montar o widget, receber o webhook assinado e tratar cada desfecho, em HTTP, TypeScript e Python.
API REST
Os 4 endpoints públicos da API UNIFOKAL, o link de verificação hospedado, a confirmação fora de banda, a spec OpenAPI 3.1 com geração de tipos, a coleção importável e o briefing para agentes de IA.
Pacotes para IA
A documentação da UNIFOKAL recortada por produto, em Markdown, para colar no seu assistente de IA, com o tamanho medido de cada pacote e a versão em Markdown de cada página.
Webhooks
O corpo do webhook da UNIFOKAL, os eventos, as retentativas e a validação da assinatura HMAC, com exemplos prontos.
Sandbox, produção e lista de bloqueio
Como o sandbox simula cada desfecho, o que muda entre sandbox e produção e como funciona a lista de bloqueio da conta e do flow.
Conta, dados e privacidade
Exportação de dados, encerramento de conta e o aviso de privacidade e consentimento que o widget mostra ao titular.
Painel de operação
O funil por etapa e por flow, o registro de requisições sem corpo, o orçamento diário de gasto com o spend_cap_reached, a consulta em lote, a simulação de política no histórico e a lista de permissão.
PLD/FT pela regra da norma
Como ligar o monitoramento de PLD/FT: a política aprovada, os campos do evento, o perfil do cliente, a fila com o prazo legal, o caso e o rascunho do Siscoaf.
Erros da API
Todo código de erro da API UNIFOKAL, com o status HTTP, o que aconteceu, o que fazer e o que não fazer, cada um na própria âncora.
Módulos
O catálogo de módulos lista tudo o que dá para ligar num Flow. Cada página abaixo traz o que o módulo entrega e o payload de resultado dele no webhook.
- Documento, face match e prova de vida
- Comprovante de endereço
- Verificação de idade
- Detecção de múltiplas contas (1:N)
- Reautenticação facial
- Aprovação de ato com passkey
- Atestado de pessoa verificada
- Reuso de Documento
- Validação de canal: e-mail e telefone
- PEP e listas restritivas
- Consulta cadastral de CPF e de CNPJ
- OCR do documento de empresa
- Dados cadastrais entregues
- Benefícios do governo
- Screening do quadro societário
- Impedidos de apostar
- Mídia adversa
- Coerência cadastral
- Forense de documento
- Detecção de rede de fraude
- Cadastro de dispositivo Pix
- Monitoramento de sessão
- Sinais do aparelho
- Assinatura eletrônica
- Custódia da autorização de consulta
- Documento de viagem estrangeiro (MRZ)
- Cadeia societária até o beneficiário final
- Inscrição estadual
- Certidão trabalhista (CNDT)
- Representante vinculado à empresa
- Empresa estrangeira
- Motor Antifraude
- Gate transacional
- Monitoramento transacional
- Proteção de conta
- Risco de IP e de e-mail
- Análise de crédito
- Monitoramento contínuo
- Monitoramento PLD/FT
- Classificação de risco PLD/FT
- Vínculos, listas restritivas e processos
- Background check e sanções
Pronto para integrar? A chave de sandbox sai no painel, logo depois do cadastro. Criar conta grátis