Verifique se cada eleitor é uma pessoa real e única — e detete a mesma pessoa a tentar votar duas vezes. $0.33 por eleitor, duplicados detetados gratuitamente. 500 verificações gratuitas todos os meses.
Confiado por mais de 2.000 organizações em todo o mundo.
O que a governação deve
Carteiras não são pessoas. Pessoas são pessoas.
Um único ser humano pode criar uma centena de carteiras, endereços de e-mail ou telemóveis descartáveis.
Nada disso prova que são cem seres humanos diferentes. A Didit
vincula o voto a um rosto real e a um documento real — e a Pesquisa Facial 1:N (gratuita)
deteta a mesma pessoa a tentar novamente. 500 verificações gratuitas todos os meses.
Como funciona
Do registo ao utilizador verificado em quatro passos.
Passo 01
Criar o fluxo de trabalho
Escolha as verificações que pretende — ID, prova de vida, correspondência facial, sanções, endereço, idade, telefone, e-mail, perguntas personalizadas. Arraste-as para um fluxo no painel de controlo, ou publique o mesmo fluxo na nossa API. Ramifique em condições, execute testes A/B, sem necessidade de código.
Passo 02
Integrar
Incorpore nativamente com o nosso SDK Web, iOS, Android, React Native ou Flutter. Redirecione para uma página alojada. Ou simplesmente envie ao seu utilizador um link — por e-mail, SMS, WhatsApp, em qualquer lugar. Escolha o que se adapta à sua stack.
Passo 03
O utilizador passa pelo fluxo
A Didit aloja a câmara, as indicações de iluminação, a transferência móvel e a acessibilidade. Enquanto o utilizador 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
Recebe os resultados
Webhooks assinados em tempo real mantêm a sua base de dados sincronizada no momento em que um utilizador é aprovado, recusado ou enviado para revisão. Consulte a API a pedido. Ou abra a consola para inspecionar cada sessão, cada sinal e gerir os casos à sua maneira.
Construído para a governação · Preço de infraestrutura
Seis primitivos. Uma API. $0.33 por eleitor.
A identidade anti-Sybil não é uma verificação — é uma receita. KYC do eleitor, pesquisa contra a coorte, aplicação da elegibilidade, assinatura do pacote de auditoria, reutilização na próxima ronda.
Pacote KYC certificado iBeta Nível 1 anti-spoof — Verificação de ID, Prova de Vida Passiva, Correspondência Facial 1:1, Rastreio AML. Veredito em menos de dois segundos, mais de 14.000 documentos em mais de 220 países.
Cada registo é comparado com todos os eleitores previamente registados. Acima do limiar de similaridade → bloqueio antes do registo do voto. Gratuito, limitado apenas ao seu conjunto de dados.
Candidato a eleitorCorrespondência de coortePontuaçãoAção
voter-12871voter-911297Bloquear
voter-12872voter-744084Rever
voter-12873voter-632862Rever
voter-12874no match9Aprovar
Gratuito por coorte · limitado ao seu conjunto de dados1:N
03 · Preservação da privacidade
Prove 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 dados biométricos permanecem dentro da Didit, encriptados em repouso. Em conformidade com o RGPD, ISO/IEC 27001, SOC 2 Tipo 1.
O KYC reutilizável (gratuito, incluído) permite que um eleitor verificado prove a sua 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 o eIDAS2.
Próximo voto · apenas selfieGratuito · KYC reutilizável
MultiplataformaMesma identidade, em todas as plataformas Didit
Soulbound, opcionalEmparelhar com atestações on-chain
Alinhado com eIDAS2. O utilizador é o proprietário da credencial.
05 · Regras de jurisdição
Elegibilidade por região em cada eleitor.
Lista branca de países, idade mínima, exclusão de sanções / PEP, validade do documento, limiar de similaridade — tudo aplicado num único fluxo de trabalho. Edite as regras no Construtor de Fluxos de Trabalho sem código, sem necessidade de reimplementação.
País de emissão · lista de permissõesES · FR · DE · ITAprovar
Idade mínima≥ 18Aprovar
Sanções / PEP atingidoMais de 1.300 listasBloquear
Validade do documentoVálido no dia da votaçãoRever
Pesquisa Facial 1:N · coorte≥ 0.85 de similaridadeBloquear
Edite a elegibilidade no Construtor de Fluxos de Trabalho sem código.
06 · Pacote de auditoria
Provas criptográficas de integridade de voto.
Recibos de registo assinados (X-Signature-V2, HMAC SHA-256), PIDs de eleitor pseudónimos, registos à prova de adulteração com retenção padrão de 5 anos. Exporte para o seu portal de transparência ou para o snapshot da sua DAO.
Correspondências não vazias acima de 0.85 → duplicado, bloquear.documentos →
Integração pronta para agente
Envie votação anti-Sybil num só prompt.
Cole no Claude Code, Cursor, Codex, Devin, Aider ou Replit Agent. Preencha a sua stack. O agente constrói o fluxo de trabalho de registo, bloqueia duplicados, assina o veredito e prepara a próxima ronda.
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 alinhamos com cada nova regulamentação. Para enviar verificações num novo país, basta ativar um botão. Mais de 220 países em funcionamento, auditados e testados trimestralmente — o único fornecedor 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, Pesquisa Facial 1:N dentro da coorte incluída.
Free
KYC reutilizável — rondas subsequentes provam a unicidade apenas com uma selfie.
<0s
Veredito de registo de ponta a ponta por eleitor, em Android de nível de entrada.
0
Verificações gratuitas todos os meses, em todas as contas.
Três níveis, uma lista de preços
Comece gratuitamente. Pague por uso. Escale para Enterprise.
500 verificações gratuitas todos os meses, para sempre. Pagamento 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 gratuitamente → pague apenas quando uma verificação for executada → desbloqueie o Enterprise para um contrato personalizado, SLA ou residência de dados.