Verifique se cada eleitor é uma pessoa real e única — e detecte a mesma pessoa tentando votar duas vezes. $0.33 por eleitor, duplicatas detectadas gratuitamente. 500 verificações gratuitas todos os meses.
Confiado por mais de 2.000 organizações em todo o mundo.
O que a governança deve
Carteiras não são pessoas. Pessoas são pessoas.
Um único humano pode criar cem carteiras, endereços de e-mail ou telefones
descartáveis. Nada disso prova que são cem humanos diferentes. A Didit
vincula o voto a um rosto real e a um documento real — e a Pesquisa Facial 1:N (gratuita)
detecta a mesma pessoa tentando novamente. 500 verificações gratuitas por mês.
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, correspondência 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 nosso SDK 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, 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 transferência 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 em relação a 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 governança · Preço de infraestrutura
Seis primitivos. Uma API. $0.33 por eleitor.
A identidade anti-Sybil não é uma única verificação — é uma receita. KYC do eleitor, pesquisa contra a coorte, aplicação de elegibilidade, assinatura do pacote de auditoria, reutilização na próxima rodada.
Pacote KYC certificado iBeta Nível 1 anti-spoof — Verificação de ID, Prova de Vida Passiva, Correspondência Facial 1:1, Triagem AML. Veredito em menos de dois segundos, mais de 14.000 documentos em mais de 220 países.
Cada cadastro é comparado com todos os eleitores previamente cadastrados. Acima do limite de similaridade → bloqueio antes que o voto seja registrado. Gratuito, restrito apenas ao seu conjunto de dados.
Candidato a eleitorCorrespondência de coortePontuaçãoAção
voter-12871voter-911297Bloquear
voter-12872voter-744084Revisar
voter-12873voter-632862Revisar
voter-12874no match9Aprovar
Gratuito por coorte · limitado ao seu conjunto de dados1:N
03 · Preservação da privacidade
Comprove a unicidade. Não revele mais nada.
A plataforma de votação vê apenas `unique: true`, um PID pseudônimo (Identificador Pseudônimo), uma faixa etária e uma região. Documentos e biometria permanecem dentro da Didit, criptografados em repouso. Em conformidade com GDPR, ISO/IEC 27001, SOC 2 Tipo 1.
Em conformidade com GDPR · ISO/IEC 27001 · SOC 2 Tipo 1.
04 · Credencial reutilizável
Verifique uma vez. Vote em qualquer lugar.
O KYC reutilizável (gratuito, incluído) permite que um eleitor verificado comprove a unicidade em cada voto subsequente apenas com uma selfie — sem nova captura de documento. Funciona em todas as plataformas alimentadas pela Didit. Em conformidade com eIDAS2.
Próxima votação · apenas selfieGrátis · KYC reutilizável
MultiplataformaMesma identidade, em todas as plataformas Didit
Soulbound, opcionalEmparelhe com atestados on-chain
Alinhado com eIDAS2. O usuário é o proprietário da credencial.
05 · Regras de jurisdição
Elegibilidade por região para cada eleitor.
Lista branca de países, idade mínima, exclusão de sanções/PEP, validade do documento, limite de similaridade — tudo aplicado em um único fluxo de trabalho. Edite as regras no Construtor de Fluxos de Trabalho sem código, sem precisar reimplantar.
País de emissão · lista de permissõesES · FR · DE · ITAprovar
Idade mínima≥ 18Aprovar
Sanções / PEP atingidoMais de 1.300 listasBloquear
Expiração do documentoVálido no dia da votaçãoRevisar
Pesquisa Facial 1:N · coorte≥ 0,85 de similaridadeBloquear
Edite a elegibilidade no Workflow Builder sem código.
06 · Pacote de auditoria
Provas criptográficas de integridade de voto.
Recibos de cadastro assinados (X-Signature-V2, HMAC SHA-256), PIDs de eleitor pseudônimos, logs à prova de adulteração com retenção padrão de 5 anos. Exporte para seu portal de transparência ou para o snapshot de sua DAO.
Correspondências não vazias acima de 0.85 → duplicado, bloquear.documentos →
Integração pronta para agente
Envie votação anti-Sybil em um prompt.
Cole no Claude Code, Cursor, Codex, Devin, Aider ou Replit Agent. Preencha sua pilha. O agente constrói o fluxo de trabalho de inscrição, bloqueia duplicatas, assina o veredito e prepara a próxima rodada.
didit-integration-prompt.md
You are integrating Didit anti-Sybil identity into a voting / governance / survey / airdrop / quadratic-funding platform. The recipe ensures each real human can be counted exactly once — no duplicates, no bots, no farmed accounts.
Two pillars:
1. Verify the voter is a real human with a real identity. ONE call to POST /v3/session/ with ID Verification + Liveness + Face Match.
2. Check the voter has not already been enrolled in this cohort. Face Search 1:N runs the voter's face against every previously-enrolled voter and returns a similarity score. Above threshold → duplicate, block.
Cost:
- Voter Know Your Customer (KYC) bundle: $0.33 per voter (Sessions API)
- Face Search 1:N: free (included)
- Re-vote / next round with Reusable KYC: free (the user proves uniqueness without re-doing KYC)
- First 500 verifications free every month, forever
PRE-REQUISITES
- Production API key from https://business.didit.me (sandbox key in 60s, no card).
- Webhook endpoint with HMAC SHA-256 verification using the X-Signature-V2 header and your webhook secret.
- A workflow_id from the Workflow Builder that bundles ID Verification + Passive Liveness + Face Match 1:1 + Face Search 1:N + your jurisdiction rules (age, country, sanctions).
STEP 1 — Enrol the voter with the Sessions API
POST https://verification.didit.me/v3/session/
Headers:
x-api-key: <your api key>
Content-Type: application/json
Body:
{
"workflow_id": "<wf id with KYC + Face Search 1:N>",
"vendor_data": "<your voter id, max 256 chars>",
"callback": "https://<your-app>/vote/enrolment/callback",
"metadata": {
"purpose": "vote_enrolment",
"cohort_id": "<your election / round / airdrop id>"
}
}
Response: 201 Created with the hosted session URL. Redirect the voter to it. Sub-2-second median verdict on completion.
STEP 2 — Read the signed webhook on enrolment completion
Didit POSTs to your callback. Session statuses are Title Case With Spaces:
Body (excerpted):
{
"session_id": "<uuid>",
"vendor_data": "<your voter id>",
"status": "Approved",
"id_verification": { "status": "Approved" },
"liveness": { "status": "Approved" },
"face": { "status": "Approved", "similarity_score": 0.94 },
"face_search": { "status": "Approved", "matches": [] }
}
Status enum (exact case): Approved | Declined | In Review | Resubmitted | Expired | Not Finished | Kyc Expired | Abandoned.
Verify the X-Signature-V2 header BEFORE reading the body — HMAC SHA-256 of the raw bytes with your webhook secret.
STEP 3 — Block duplicates
When face_search.matches is non-empty AND the top match's similarity is above your threshold (typical: 0.85), DO NOT add the voter to the cohort. The voter has likely been enrolled already, possibly under a different document or alias.
Recommended handling:
similarity ≥ 0.95 → block automatically, log the match
similarity 0.85–0.95 → route to manual review
similarity < 0.85 → enrol normally
STEP 4 — Privacy-preserving storage
The platform stores ONLY:
- voter_pid (pseudonymous identifier — a UUID, NOT the raw document number)
- unique (boolean)
- age_band (e.g. "18+", "25-34") — never the raw birth date unless your eligibility rule needs it
- region (e.g. "EU", "ES") — never the raw address
Documents, biometrics, and full names stay inside Didit, encrypted at rest. Default retention 5 years post-relationship; configurable per workflow.
STEP 5 — Read the decision on demand
GET https://verification.didit.me/v3/session/{sessionId}/decision/
Headers:
x-api-key: <your api key>
Returns the full decision JSON. Use this when the tally service needs to confirm a voter is still eligible at vote time.
STEP 6 — Reusable KYC for subsequent rounds
Once a voter is verified, the next vote / round / airdrop can reuse the verification at no extra cost. The user proves uniqueness with a selfie only — no document re-capture. Same workflow, different cohort id.
WEBHOOK EVENT NAMES
- Sessions: status changes flow through the standard session webhook.
- Verify X-Signature-V2 on every payload.
CONSTRAINTS
- Session statuses use Title Case With Spaces (Approved, In Review). Don't transform them.
- Face Search 1:N is scoped to YOUR cohort by default — Didit doesn't share faces across customers.
- Always check the duplicate score BEFORE recording the ballot, never after.
- The platform never sees the raw ID document or the raw face template — only the verdict and the pseudonymous PID.
- Default record retention is 5 years post-relationship per the EU AML package; extend per your governing body's rules.
Read the docs:
- https://docs.didit.me/sessions-api/create-session
- https://docs.didit.me/sessions-api/retrieve-session
- https://docs.didit.me/integration/webhooks
- https://docs.didit.me/core-technology/reusable-kyc/overview
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.
Por eleitor — pacote KYC completo, Face Search 1:N dentro da coorte incluído.
Free
KYC reutilizável — rodadas subsequentes provam a unicidade apenas com uma selfie.
<0s
Veredito de inscrição de ponta a ponta por eleitor, em Android de nível básico.
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.