Desenhe qualquer fluxo de verificação em uma tela. Arraste, solte, crie ramificações, faça testes A/B e ative qualquer um dos mais de 25 módulos com um clique. Gratuito em todos os planos.
Confiado por mais de 2.000 organizações em todo o mundo.
Construtor de fluxos no-code
Arraste, solte, teste A/B. Ramificação condicional.
Ative qualquer módulo com um clique. Editor visual para KYC (conheça seu cliente),
KYB (conheça sua empresa), AML (anti-lavagem de dinheiro) e fluxos de monitoramento.
Faça testes A/B em produção. Gratuito, sem cobrança por fluxo.
Como funciona
Do cadastro ao usuário verificado em quatro passos.
Passo 01
Crie o fluxo
Escolha as verificações que você quer, ID, prova de vida, reconhecimento 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. Crie ramificações com base em condições, execute testes A/B, sem necessidade de código.
Passo 02
Integre
Incorpore nativamente com nossos SDKs para Web, iOS, Android, React Native ou Flutter. Redirecione para uma página hospedada. Ou simplesmente envie um link ao seu usuário, por e-mail, SMS, WhatsApp, onde quiser. Escolha o que melhor se adapta à sua stack.
Passo 03
O usuário passa pelo fluxo
A Didit hospeda a câmera, as dicas de iluminação, a transição para dispositivos móveis e a acessibilidade. Enquanto o usuário está no fluxo, pontuamos mais de 200 sinais de fraude em tempo real e verificamos cada campo em relação a fontes de dados confiáveis. 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 do seu jeito.
Feito para desenvolvedores · Contra fraudes · Aberto por design
Seis funcionalidades. Uma tela. $0 por fluxo.
O Orquestrador de Fluxos é a tela por trás de toda verificação Didit. Construa-o no console ou crie-o a partir do seu código. Todas as funcionalidades abaixo vêm com cada workspace sem custo adicional.
Arraste e solte nós. Conexão inteligente. Sem código.
Um canvas infinito com nós de módulo (ID, Liveness, Face Match, AML, NFC, IP, Questionário, Comprovante de Endereço, Validação de Banco de Dados, Estimativa de Idade, E-mail, Telefone), nós de ramificação que roteiam dados de sessão em tempo real, nós de ação (tag, definir metadados, rotear para revisão manual) e nós de veredito (aprovado, recusado, em revisão).
Workflow canvas
Drag-drop · smart-connect · keyboard shortcuts
Advanced mode
12
Feature
6
Branch
4
Action
3
Status
FeatureOCR
FeatureLIVENESS
Branchrisk > 80
Actiontag:hi-risk
StatusIN REVIEW
OCRFACE_MATCHAMLNFCIPPHONEEMAILAGE_EST
No code · smart-connect · zoom & panInfinite canvas
02 · Ativação de módulos
Ative qualquer um dos mais de 25 módulos por fluxo de trabalho.
Cada fluxo de trabalho tem uma lista de módulos que você pode ativar ou desativar. Basta ligar uma chave e o nó é ativado, sem precisar mudar o código ou fazer um novo deploy. Novos módulos que lançamos todo mês aparecem nessa mesma lista. Você paga apenas por verificação, conforme as taxas publicadas por módulo; o fluxo de trabalho em si não tem custo.
Module activation
Toggle any of 25+ modules · pay per success
25+ modules
25+
Modules
1 /mo
New module shipped
$0
Workflow surcharge
ID Verification$0.15On
Passive Liveness$0.10On
Face Match 1:1$0.05On
AML Screening$0.20Off
Wallet Screening (KYT)$0.02Off
03 · Multi-aplicativo
Dev, staging, produção. Um workspace.
Cada workspace hospeda múltiplos apps, geralmente Desenvolvimento, Staging e Produção. Cada app tem sua própria chave de API, fluxos de trabalho publicados e destinos de webhook. Para promover um fluxo de trabalho, basta republicá-lo no app de destino ou exportar o JSON da versão.
Applications
Dev · Staging · Production · isolated keys
3 apps
3
Applications
1 key
Per application
JSON
Exportable
Developmentsk_dev_4f8adraft v4Draft
Stagingsk_stg_9c12v3Staging
Productionsk_prd_b201v3Live
Promote · republish or export workflow JSON
04 · Testes A/B
Divida o tráfego entre variantes em tempo real, sem novos deploys.
Publique duas variantes, defina uma porcentagem de divisão e o Orchestrator roteia o tráfego de entrada entre elas. Acompanhe a taxa de conclusão, taxa de recusa, abandono e tempo até o veredito por variante nos seus analytics. Aumente o tráfego do vencedor para 100% com um clique; reverta com outro clique.
A/B experiment · onboarding_v5
Split traffic · live conversion telemetry
Variant B winning
Variant A50%
87.4%
Completion rate
Variant B50%
91.2%
Completion rate
Decline rate6.1%4.3%
Abandonment6.5%4.5%
Time-to-verdict38s32s
Ramp B · 5% → 100% · rollback in one click+3.8 pp
05 · Ramificação
Lógica condicional em cada campo.
Nós de ramificação roteiam usuários com base em dados de sessão em tempo real, país, pontuação de risco, tipo de documento, idade, tempo desde a emissão ou qualquer regra personalizada. Recorra à Verificação de ID para idades limítrofes. Pule o AML para regiões de baixo risco. Avance para NFC em fluxos apenas com passaporte. Sem código.
Branch node
Routes on country · risk · doc type · age
5 conditions
If conditionRoute
country in {DE, FR, ES, IT}
Approve
risk_score > 80
AML + Review
doc.type == PASSPORT
NFC Reading
age < 18
Age Estimation
default
Manual review
7 fields · country · risk · doc · ageNo code
06 · Gratuito + aberto
Grátis em todos os planos. Webhooks, Zapier, MCP.
Sem taxa por fluxo de trabalho, sem taxa por usuário. Fluxos de trabalho, versões e destinos de webhook ilimitados. Cada fluxo de trabalho se integra com Zapier, Shopify, Salesforce e o servidor MCP (Model Context Protocol) para que agentes de IA possam gerenciar sessões com o mesmo ID de fluxo de trabalho. Webhooks são enviados assinados.
POST /webhooks/destinations
Included
workflow.session.verified200 OK
{
"workflow_id": "wf_3daf4c64",
"session_id": "sess_8a2f9c10",
"status": "verified",
"vendor_data": "user-42",
"version": 3,
Destinations: unlimited
}
HeaderX-Signature-V2: hmac-sha256
Destinations
WebhookZapierShopifySalesforceMCP
$0 / workflow
Integre
Dois endpoints. Um workflow_id.
Construa um fluxo uma vez, na tela visual ou a partir do seu código. Referencie seu ID em cada sessão que você iniciar. O mesmo ID de fluxo alimenta os SDKs para Web, iOS, Android, React Native, Flutter e o servidor MCP.
O mesmo workflow_id funciona para Web, iOS, Android, RN, Flutter, MCP.docs →
Integração pronta para agentes
Conecte qualquer fluxo de verificação com um único prompt.
Cole o bloco abaixo no Claude Code, Cursor, Codex, Devin, Aider ou Replit Agent. Preencha seu framework, linguagem e caso de uso. O agente provisiona o Didit, constrói o fluxo de trabalho, conecta o webhook e envia um link de verificação para seu usuário, mesma tela, mesmas primitivas, amigável para agentes de IA.
didit-integration-prompt.md
# Didit Workflow Orchestrator — integrate in 5 minutes
You are wiring the Didit Workflow Orchestrator into <my_stack>. Follow
these steps exactly. Every URL, header, and enum value below is
canonical — do not paraphrase or "improve" them.
Workflows are versioned JSON documents that string together any subset
of Didit's 25+ verification modules:
- Feature nodes (Optical Character Recognition (OCR), LIVENESS, FACE_MATCH, Anti-Money Laundering (AML), Near Field Communication (NFC), IP, QUESTIONNAIRE,
PROOF_OF_ADDRESS, DATABASE_VALIDATION, AGE_ESTIMATION, EMAIL_VERIFICATION,
PHONE_VERIFICATION)
- Branch nodes (route by country, risk score, document type, age, ...)
- Action nodes (add tag, set metadata, route to manual review)
- Status nodes (APPROVED, DECLINED, IN_REVIEW)
## 1. Provision an account
- Sign up: https://business.didit.me (no credit card required).
- Or provision programmatically: POST https://apx.didit.me/auth/v2/programmatic/register/
## 2. Two ways to build a workflow — pick one
### Path A — Visual canvas (recommended for humans)
1. Open https://docs.didit.me/console/workflows.
2. Pick Simple Mode for a template-based build (Know Your Customer (KYC), Age Verification,
Biometric Auth, Address, Questionnaire) or Advanced Mode for the
node-based graph builder.
3. Drag feature nodes onto the canvas. Connect handles with the smart-
connect cursor. Drop branch nodes between features to route on data.
4. Click Publish. The published workflow's UUID is your workflow_id.
### Path B — Management API (recommended for AI agents)
Programmatically create a linear workflow with the simple v3 features
array — Didit converts it into a node-based graph internally.
POST https://verification.didit.me/v3/workflows/
Headers:
x-api-key: <your-api-key>
Content-Type: application/json
Body:
{
"workflow_label": "Standard KYC",
"features": [
{
"feature": "OCR",
"config": {
"documents_allowed": {},
"duplicated_user_action": "REVIEW"
}
},
{ "feature": "LIVENESS", "config": { "face_liveness_method": "PASSIVE" } },
{ "feature": "FACE_MATCH" },
{ "feature": "AML" }
]
}
Hard rules for POST /v3/workflows/:
- features[].feature values are UPPERCASE strict enum:
OCR, LIVENESS, FACE_MATCH, AML, NFC, IP, QUESTIONNAIRE,
PROOF_OF_ADDRESS, DATABASE_VALIDATION, AGE_ESTIMATION,
EMAIL_VERIFICATION, PHONE_VERIFICATION
- Put dependency features first. OCR before FACE_MATCH, NFC,
DATABASE_VALIDATION, or user-AML checks that depend on document
data. LIVENESS before FACE_MATCH.
- For QUESTIONNAIRE features, create the questionnaire first via
POST /v3/questionnaires/ and use the returned questionnaire_id as
config.questionnaire_uuid.
- The endpoint supports linear workflows only. To add branches,
actions, webhooks, or conditional routing, edit the published
workflow in the canvas.
- Save the returned workflow uuid — that is your workflow_id for
creating sessions, and your settings_uuid for future updates.
Reference for every config field per feature:
https://docs.didit.me/management-api/workflows/feature-configs
## 3. Use the workflow in a session
POST https://verification.didit.me/v3/session/
Headers:
x-api-key: <your-api-key>
Content-Type: application/json
Body:
{
"workflow_id": "<uuid from step 2>",
"vendor_data": "user-42"
}
Response includes a session_url. Redirect the user there. The hosted
Didit UI handles capture UX, mobile handoff, accessibility, retries,
and webhook delivery on completion.
## 4. Webhooks
Register one webhook destination per workspace:
POST https://verification.didit.me/v3/webhook/destinations/
Body: { "url": "https://yourapp.com/didit/webhooks",
"events": ["session.verified", "session.review_started",
"session.declined", "session.expired"] }
Every delivery carries an X-Signature-V2 Hash-based Message Authentication
Code (HMAC) header. 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.Verify before trusting the payload:
signature = hmac_sha256(secret, raw_body).hex()
if signature != request.headers["X-Signature-V2"]:
return 401
Retries use exponential backoff over 24 hours. The Console shows every
delivery, retry, and signature verification result.
## 5. Workflow versioning
Workflows support draft / publish versioning. Drafts are fully editable.
Publishing creates an immutable version that new sessions will use.
Sessions always reference the specific version they were created with,
so behaviour stays consistent even after you publish updates. Previous
versions are preserved and inspectable via the Management API.
## 6. Multi-app management
Each workspace can host multiple applications — typically Development,
Staging, Production. Each application carries its own API key, its own
workflows, and its own webhook destinations. Promote a published
workflow from Staging to Production by re-publishing in the target app
or by exporting and re-importing the workflow JSON.
## 7. A/B testing
Split traffic across two published workflow variants from inside the
canvas. Configure a percentage split, route by user cohort, ramp a new
module to 5% before going to 100%. Conversion metrics surface on the
workflow analytics view at https://docs.didit.me/console/analytics.
## 8. Hard rules — do not change
- Base URL stays https://verification.didit.me (NOT apx.didit.me).
- Auth header stays x-api-key (lowercase, hyphenated).
- Webhook signature header stays X-Signature-V2 (NOT X-Signature).
- Feature enum is UPPERCASE strict — OCR, LIVENESS, FACE_MATCH, AML,
NFC, IP, QUESTIONNAIRE, PROOF_OF_ADDRESS, DATABASE_VALIDATION,
AGE_ESTIMATION, EMAIL_VERIFICATION, PHONE_VERIFICATION.
- Session status casing stays "Approved" / "Declined" / "In Review" /
"Expired" / "Not Finished" (mixed case on session statuses,
UPPERCASE_SNAKE on transaction and case statuses).
## 9. Pricing reference
The Workflow Orchestrator itself is FREE on every plan — no per-workflow
fee, no per-seat fee, unlimited workflows. You pay only for the modules
that run inside the workflow at the published per-success rates on
https://didit.me/pricing.
500 free verifications every month, forever, on every account.
## 10. Verify your integration
1. Create a sandbox API key at https://business.didit.me.
2. POST /v3/workflows/ with the Standard KYC body above. Save the uuid.
3. POST /v3/session/ with that workflow_id. Open the session_url in a
browser and complete the flow with the sandbox test fixtures.
4. Confirm the session.verified webhook fires and X-Signature-V2 verifies.
5. Open the workflow in the canvas — verify the linear feature array
was converted into the expected node graph.
Done. The Workflow Orchestrator is live. Reach out to support@didit.me
with the workspace id if you hit a wall.
Precisa de mais contexto? Consulte a documentação completa do módulo.docs.didit.me →
Conformidade por design
Abra um novo país com um clique. Nós fazemos o trabalho pesado.
Nós abrimos as subsidiárias locais, garantimos as licenças, realizamos os testes de penetração, obtemos as certificações e nos alinhamos a cada nova regulamentação. Para lançar 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.
Do cadastro a um fluxo de trabalho ativo rodando em uma sessão real.
Três planos, uma tabela de preços
Comece grátis. Pague pelo uso. Escale para Enterprise.
500 verificações gratuitas todo mês, para sempre. Pague conforme usar para produção. Contratos personalizados, residência de dados e SLAs (Service Level Agreements) no plano Enterprise.
Grátis
Grátis
$0 / mês. Não precisa de cartão de crédito.
Pacote KYC grátis (Verificação de ID + Prova de Vida Passiva + Comparação Facial + Análise de Dispositivo e IP), 500 / mês, todo mês
Comece grátis → pague apenas quando uma verificação for executada → desbloqueie o Enterprise para um contrato personalizado, SLA ou residência de dados.
FAQ
Perguntas frequentes
What is Didit?
Didit is infrastructure for identity and fraud, the platform we wished existed when we were building products ourselves: open, flexible, and developer-friendly, so it works as a real part of your stack instead of a black box you integrate around.
One API covers verifying people (KYC, know your customer), verifying businesses (KYB, know your business), screening crypto wallets (KYT, know your transaction), and monitoring transactions in real time, on a stack built to be:
Fast, sub-2-second p99 on every session
Reliable, in production with 1,500+ companies across 220+ countries
Secure, SOC 2 Type 1, ISO 27001, GDPR-native, and formally attested by Spain's financial regulator as safer than verifying someone in person
The footprint underneath: 14,000+ document types in 48+ languages, 1,000+ data sources, and 200+ fraud signals on every session. The Didit infrastructure dynamically learns from every session and gets better every day.
What is the Workflow Orchestrator?
The Workflow Orchestrator is the visual no-code builder behind every Didit verification. Drag-and-drop feature nodes (Identity Document Verification, Liveness, Face Match, Anti-Money Laundering (AML), Near-Field Communication (NFC), Phone, Email, Questionnaire, Proof of Address, Database Validation, Internet Protocol (IP), Age Estimation), drop branch nodes that route on country / risk / age / document type, add action nodes (tag, set metadata, route to manual review), close with status nodes (Approved, Declined, In Review).
Free on every plan. You pay only the per-module rates on the modules a session actually runs. Full reference: docs.didit.me/console/workflows.
What does the Workflow Orchestrator cost?
Free on every plan. No per-workflow fee, no per-seat fee, unlimited workflows, unlimited published versions, unlimited A/B variants, unlimited webhook destinations.
You pay only the module per-success rates on didit.me/pricing:
Identity Document Verification, $0.15 per check.
Passive Liveness, $0.10. Face Match, $0.05. Internet Protocol (IP) Analysis, $0.03.
Anti-Money Laundering (AML) Screening, $0.20. Wallet Screening, $0.15 per check.
Full Know Your Customer (KYC) bundle, $0.33 per session.
How fast is the verification for my end user?
The full flow normally takes under 30 seconds end-to-end, pick up the ID, snap the document, snap the selfie, done. That is the fastest in the market. Legacy KYC providers usually take more than 90 seconds for the same flow.
On the back end, Didit returns the result in under two seconds at p99, measured from the moment the user finishes the selfie to the moment your webhook fires. Mobile capture is tuned for slow phones and slow networks: progressive image compression, lazy software development kit load, and a one-tap hand-off from desktop to phone via QR code if the user starts on web.
Can I create workflows programmatically?
Yes, POST /v3/workflows/ with a features array in the order users should complete the checks.
Didit converts the array into a node-based graph internally and adds the final status node automatically. The endpoint supports linear workflows only, for branches, actions, and webhook nodes, edit the published workflow in the canvas.
Use the returned workflow uuid as workflow_id on POST /v3/session/. Full per-feature config reference: docs.didit.me/management-api/workflows/feature-configs.
What happens if a user fails, abandons, or expires?
Every session lands on one of seven clear statuses, so your code always knows what to do:
Approved, every check passed. Move the user forward.
Declined, one or more checks failed. You can allow the user to resubmit the specific failed step (for example, re-take the selfie) without re-running the whole flow.
In Review, flagged for compliance review. Open the case in the console, see every signal, decide approve or decline.
In Progress, user is mid-flow.
Not Started, link sent, user has not opened it yet. Send a reminder if it sits too long.
Abandoned, user opened the link but did not finish in time. Re-engage or expire.
Expired, the session link aged out. Create a new session.
A signed webhook fires on every status change, so your database always stays in sync. Abandoned and declined sessions are free.
Where does my customer data live and how is it protected?
Production data is processed and stored in the European Union by default, on Amazon Web Services. Enterprise contracts can request alternative regions for jurisdictions whose regulators require it.
Encryption everywhere. AES-256 at rest across every database, object store, and backup. Transport Layer Security 1.3 in transit on every API call, webhook, and Business Console session. Biometric data is encrypted under a separate Customer Master Key.
Retention is yours to control. Default retention is indefinite (unlimited) unless you configure shorter, between 30 days and 10 years per application, and you can delete any individual session at any time from the dashboard or the API.
Certifications: SOC 2 Type 1 (Type 2 audit in progress), ISO/IEC 27001:2022, iBeta Level 1 PAD, and a public attestation from Spain''s Tesoro / SEPBLAC / CNMV that Didit''s remote identity verification is safer than verifying someone in person. Full report at /security-compliance.
Is Didit compliant for my industry?
Didit ships compliant by default for the regulators that matter to identity infrastructure:
GDPR + UK GDPR, controller / processor split, full Data Processing Agreement published, lead supervisory authority named (Spain''s AEPD).
AMLD6 + EU AML Single Rulebook, 1,300+ sanctions, politically exposed person, and adverse-media lists screened in real time.
eIDAS 2.0, EU Digital Identity Wallet aligned; reusable-identity ready.
MiCA (Markets in Crypto-Assets), ready for crypto on-ramps, exchanges, and custodians.
DORA, Digital Operational Resilience Act, EU financial-services operational resilience.
BIPA, CUBI, Washington HB 1493, CCPA / CPRA, US biometric privacy (Illinois, Texas, Washington) and California consumer privacy.
UK Online Safety Act, age-gating and child-safety obligations.
FATF Travel Rule, originator and beneficiary data on crypto transfers, IVMS-101 interoperable.