Impeça a tomada de conta com uma verificação facial. Aumente a segurança no momento em que o risco aumenta.
Um aumento de segurança biométrico nos momentos exatos em que os atacantes visam — transferências, redefinições de senha, logins em novos dispositivos. Veredito em menos de dois segundos, cerca de $0.13 por evento. 500 verificações gratuitas todos os meses.
Confiado por mais de 2.000 organizações em todo o mundo.
Como os atacantes atacam
Senhas roubadas. Sessões roubadas. Escolha um rosto em vez disso.
Ataques de preenchimento de credenciais, troca de SIM e cookies de sessão roubados ignoram senhas e códigos de uso único. Troque-os por um aumento de segurança Didit no momento da ação — $0.10 por chamada, veredito em menos de dois segundos, 500 gratuitos todos os meses.
Como funciona
Do cadastro ao usuário verificado em quatro etapas.
Passo 01
Crie o fluxo de trabalho
Escolha as verificações que deseja — ID, prova de vida, comparação facial, sanções, endereço, idade, telefone, e-mail, perguntas personalizadas. Arraste-as para um fluxo no painel ou publique o mesmo fluxo em nossa API. Ramifique em condições, execute testes A/B, sem necessidade de código.
Passo 02
Integre
Incorpore nativamente com nossos SDKs Web, iOS, Android, React Native ou Flutter. Redirecione para uma página hospedada. Ou apenas envie um link ao seu usuário — por e-mail, SMS, WhatsApp, em qualquer lugar. Escolha o que melhor se adapta à sua pilha.
Passo 03
O usuário passa pelo fluxo
A Didit hospeda a câmera, as dicas de iluminação, a entrega móvel e a acessibilidade. Enquanto o usuário está no fluxo, pontuamos mais de 200 sinais de fraude em tempo real e verificamos cada campo contra fontes de dados autorizadas. Resultado em menos de dois segundos.
Passo 04
Você recebe os resultados
Webhooks assinados em tempo real mantêm seu banco de dados sincronizado no momento em que um usuário é aprovado, recusado ou enviado para revisão. Consulte a API sob demanda. Ou abra o console para inspecionar cada sessão, cada sinal e gerenciar casos à sua maneira.
Construído para a receita · Preço de infraestrutura
Seis recursos. Um step-up. ~$0.13 por evento.
A defesa ATO é uma composição, não uma única verificação. Alterne cada capacidade por fluxo de trabalho no Construtor de Fluxo de Trabalho, ou componha-as em linha através da API.
Você escolhe o momento. Didit executa a verificação.
A política de step-up reside no Workflow Builder — transferência de alto valor, redefinição de senha, pagamento para um novo destino, login de novo dispositivo, anomalia geográfica. Pré-barre com Análise de Dispositivo e IP se você quiser a verificação facial apenas quando os sinais de rede parecerem arriscados. Não é necessário reimplantar para alterar as regras.
O risco escolhe o momento. A Didit faz a verificação.
Tempo real
SinalLimiarAção
Transferência eletrônica · > limite diário> $5.000Step up
Redefinição de senha · IP de baixo riscoAnyStep up
Login em novo dispositivoPrimeira vez vistoStep up
Pagamento para nova conta bancáriaAnyStep up
Login · dispositivo confiável + baixo risco de IPPontuação de IP < 20Pass
Edite gatilhos no Workflow Builder. Sem necessidade de reimplantar.
02 · Step-up biométrico
Um step-up. Veredito em menos de dois segundos.
O mesmo motor biométrico que o usuário passou no cadastro — Detecção de Ataque de Apresentação (PAD) iBeta Nível 1 mais comparação facial 1:1 com o retrato armazenado. $0.10 por sessão. Resistente a phishing e resistente a troca de SIM. Menos de dois segundos de ponta a ponta em Android de nível básico.
Um passo à frente. Veredito em menos de dois segundos.
$0.10 por step-up
Passo 2 / 2
Fique parado para a verificação
Prova de Vida Passiva$0.10
Correspondência facial 1:1 vs. cadastro$0.05
Pré-verificação de IP (opcional)$0.03
iBeta Nível 1 PAD · ISO/IEC 30107-3< 2s de ponta a ponta
03 · Comparação facial 1:1 vs. cadastro
O alvo da comparação é o retrato armazenado do usuário.
A Comparação Facial 1:1 compara cada selfie de step-up com o retrato de cadastro armazenado do usuário. Retorna uma pontuação de similaridade de 0 a 1.0 mais avisos; o limite é ajustável por fluxo de trabalho. Uma selfie roubada não pode passar — o alvo está bloqueado para o registro original, não para uma imagem recém-capturada.
Testado independentemente na iBeta e certificado no Nível 1 PAD contra todo o catálogo ISO/IEC 30107-3. Bloqueia fotos impressas, replays de tela, máscaras de papel/silicone/látex, ataques de morphing e deepfakes gerados por IA do proprietário da conta. Retestado anualmente.
VPN, datacenter, Tor — sinalizados antes da verificação facial.
Pontue o endereço IP (Internet Protocol) do usuário e a impressão digital do dispositivo antes que o step-up seja acionado. Retorna uma pontuação de risco de 0 a 100 mais sinalizadores de VPN, proxy, Tor, datacenter, país e ASN. $0.03 por verificação, em menos de 100ms. Pule o step-up em dispositivo confiável + rede de baixo risco.
Pontue a rede antes que a verificação facial seja acionada.
$0.03 / verificação
SinalDetectadoPontuação / veredito
Nó de saída VPNNordVPN · NLStep up
ASN do datacenterAS396982 · GCEStep up
Saída Tor—Pass
Troca de país · 24hES → SGStep up
Correspondência de impressão digital do dispositivoiOS confiávelPass
Retorna pontuação, sinalizadores, ASN, país, cidade — em menos de 100ms.
06 · Decisão do webhook
Um webhook. Três ramificações. Feito.
Um webhook assinado chega com o veredito — Aprovado, Recusado, Em Revisão, Não Finalizado. Verifique X-Signature-V2 com HMAC SHA-256 antes de ler o corpo. Mesmo payload em cada step-up; ramifique a ação original de acordo. Mais de 200 sinais de fraude surgem sem custo adicional.
200OKstatus Aprovado · Recusado · Em Análise · Não Finalizado
Verifique X-Signature-V2 antes de ler o payload.docs →
Integração pronta para agente
Envie a defesa contra apropriação de conta em um único prompt.
Cole no Claude Code, Cursor, Codex, Devin, Aider ou Replit Agent. Preencha sua stack. O agente conecta o gatilho, abre a sessão de step-up, verifica o webhook e ramifica a ação original.
didit-integration-prompt.md
You are integrating Didit account-takeover defence into an application that already has the user signed in. Your job: when a sensitive action fires (large transfer, password reset, payout to a new destination, new-device login, geo anomaly), gate it on a Didit biometric step-up. One API call. One signed webhook. Three branches.
WHY THIS SHAPE
- Credential stuffing, SIM-swap, and stolen-session-cookie attacks all walk past passwords and SMS one-time codes. A face check at the moment of the sensitive action does not.
- Didit runs Passive Liveness (the user is alive, present, not a deepfake) plus 1:1 Face Match against the portrait captured at sign-up. A stolen selfie cannot pass — the comparison target is locked to the original enrollment.
- $0.10 per step-up (Biometric Authentication module) + $0.03 IP pre-check (optional) = around $0.13 per event. Sub-two-second verdict on entry-level Android. 500 verifications free every month.
PRE-REQUISITES
- Production API key from https://business.didit.me (sandbox key in 60 seconds, no credit card).
- A webhook endpoint with HMAC SHA-256 verification of the X-Signature-V2 header using your webhook secret.
HMAC-SHA256 verification MUST run against the raw body bytes (the raw payload as Didit sent it) BEFORE any JSON parsing — re-serialising the parsed body changes whitespace and key order, which invalidates the signature. - A Workflow Builder workflow that bundles Passive Liveness + Face Match 1:1 (with the user's stored sign-up portrait as the comparison target). Optionally compose Device & IP Analysis ahead of the step-up to pre-gate the check.
- Persist the user's sign-up portrait — either base64 on your side, or rely on Didit's stored enrollment via vendor_data lookup.
STEP 1 — Decide WHEN to step up (your code, not Didit's)
Run your usual fraud signals. Common triggers worth a biometric step-up:
- Wire / crypto transfer above the user's daily limit
- Password / email reset on a session less than 24h old
- Payout to a bank account or wallet seen for the first time
- Login from a new device or new country
- Velocity anomaly — N actions of type T within window W
Cheap pre-check (optional, ~100ms, $0.03):
- Score the user's IP via Device & IP Analysis. If the IP is a residential trusted address with a low risk score AND the device fingerprint matches the user's trusted device, skip the step-up. Otherwise run Step 2.
STEP 2 — Create a biometric step-up session
POST https://verification.didit.me/v3/session/
Headers:
x-api-key: <your api key>
Content-Type: application/json
Body:
{
"workflow_id": "<wf id bundling Passive Liveness + Face Match 1:1>",
"vendor_data": "<your user id, max 256 chars>",
"callback": "https://<your-app>/ato/step-up/callback",
"metadata": {
"trigger": "high_value_transfer",
"action_id": "<your internal action reference>"
},
"portrait_image": "<base64 JPEG of the user's stored sign-up portrait, ≤ 1 MB — REQUIRED when the workflow has FACE_MATCH active; the step-up matches the new live selfie against this stored reference>"
}
Response: 201 Created with a hosted session URL. Redirect the user there inline (or open it in a webview / Didit mobile SDK). The action stays BLOCKED on your side until the signed webhook lands.
STEP 3 — Read the signed webhook on completion
Didit POSTs the decision to your callback. Verify X-Signature-V2 (HMAC SHA-256 of the raw request body using your webhook secret) BEFORE reading the JSON.
Payload (excerpted):
{
"session_id": "<uuid>",
"vendor_data": "<your user id>",
"status": "Approved",
"liveness": { "status": "Approved" },
"face": { "status": "Approved", "similarity_score": 0.94 },
"ip_analysis": { "status": "Approved", "score": 11 }
}
Session status enum (exact case, Title Case With Spaces): Approved | Declined | In Review | Resubmitted | Expired | Not Finished | Kyc Expired | Abandoned.
STEP 4 — Branch the original action on status
Approved → unblock the sensitive action. Log session_id + similarity score on the audit trail.
In Review → hold the action, route to a human review queue.
Declined → block the action, log liveness warnings (mask / deepfake / replay / morph), alert the user.
Not Finished → invite the user to retry with a fresh session URL.
Expired → resend the link; the original session has timed out.
Abandoned → the user closed the flow before completing; resend the link.
STEP 5 — (Optional) Pull the full decision payload
GET https://verification.didit.me/v3/session/{session_id}/decision/
Headers:
x-api-key: <your api key>
Returns the same payload as the webhook plus the structured signals (liveness warnings, face-match similarity, IP / device flags). Use for analyst review.
WEBHOOK EVENT NAMES
- Sessions: standard session webhook (one endpoint, status field tells you where in the lifecycle).
- Verify X-Signature-V2 (HMAC SHA-256) on every payload.
CONSTRAINTS
- Session statuses use Title Case With Spaces (Approved, In Review). Never use UPPER_SNAKE_CASE for session verdicts — that's the Transactions API and lives in a different surface.
- 1:1 face match's comparison target is the user's STORED sign-up portrait, not a freshly captured one. A stolen selfie cannot pass.
- iBeta Level 1 Presentation Attack Detection (PAD) certified against the full ISO/IEC 30107-3 catalogue — print, replay, paper / silicone / latex mask, deepfake, morph.
- The Workflow Builder is where you choose the modules in the step-up — change them in the console without redeploying.
- 200+ fraud signals are surfaced on every session at no extra cost — read them off the decision payload, don't re-query.
Read the docs:
- https://docs.didit.me/sessions-api/create-session
- https://docs.didit.me/core-technology/biometric-auth/overview
- https://docs.didit.me/core-technology/ip-analysis/overview
- https://docs.didit.me/integration/webhooks
Start free at https://business.didit.me — sandbox key in 60 seconds, 500 verifications free every month, no credit card.
Precisa de mais contexto? Consulte a documentação completa do módulo.docs.didit.me →
Conforme por design
Abra um novo país com um clique. Nós fazemos o trabalho difícil.
Abrimos as subsidiárias locais, garantimos as licenças, realizamos os testes de penetração, obtemos as certificações e nos alinhamos com cada nova regulamentação. Para enviar verificações em um novo país, basta ativar uma chave. Mais de 220 países ativos, auditados e testados trimestralmente — o único provedor de identidade que um governo de um estado membro da UE formalmente considerou mais seguro do que a verificação presencial.
Detecção de Ataque de Apresentação certificada independentemente — retestada anualmente.
<0s
Veredito de step-up de ponta a ponta em Android de nível básico.
~$0.13
Por evento — $0.10 de step-up biométrico mais $0.03 de pré-verificação de IP opcional.
0
Verificações gratuitas todos os meses, em todas as contas.
Três níveis, uma lista de preços
Comece grátis. Pague pelo uso. Escale para o Enterprise.
500 verificações gratuitas todos os meses, para sempre. Pague conforme o uso para produção. Contratos personalizados, residência de dados e SLAs (Service Level Agreements) no Enterprise.
Grátis
Grátis
$0 / mês. Não é necessário cartão de crédito.
Pacote KYC gratuito (Verificação de ID + Prova de Vida Passiva + Correspondência Facial + Análise de Dispositivo e IP) — 500 / mês, todos os meses
Comece grátis → pague apenas quando uma verificação for executada → desbloqueie o Enterprise para um contrato personalizado, SLA ou residência de dados.