Vérifiez que chaque votant est une personne réelle et unique — et détectez la même personne essayant de voter deux fois. 0,33 $ par votant, les doublons sont détectés gratuitement. 500 vérifications gratuites chaque mois.
Approuvé par plus de 2000 organisations dans le monde entier.
Ce que la gouvernance doit
Les portefeuilles ne sont pas des personnes. Les personnes sont des personnes.
Un seul humain peut créer une centaine de portefeuilles, d'adresses e-mail ou de téléphones
jetables. Rien de tout cela ne prouve qu'il s'agit d'une centaine d'humains différents. Didit
lie le vote à un vrai visage et à un vrai document — et la recherche faciale 1:N (gratuite)
détecte la même personne qui essaie à nouveau. 500 vérifications gratuites chaque mois.
Comment ça marche
De l'inscription à l'utilisateur vérifié en quatre étapes.
Étape 01
Créer le flux de travail
Choisissez les vérifications que vous souhaitez — ID, vivacité, correspondance faciale, sanctions, adresse, âge, téléphone, e-mail, questions personnalisées. Faites-les glisser dans un flux dans le tableau de bord, ou publiez le même flux sur notre API. Créez des branches conditionnelles, exécutez des tests A/B, aucun code requis.
Étape 02
Intégrer
Intégrez nativement avec nos SDK Web, iOS, Android, React Native ou Flutter. Redirigez vers une page hébergée. Ou envoyez simplement un lien à votre utilisateur — par e-mail, SMS, WhatsApp, n'importe où. Choisissez ce qui convient à votre pile technologique.
Étape 03
L'utilisateur suit le flux
Didit héberge la caméra, les repères lumineux, le transfert mobile et l'accessibilité. Pendant que l'utilisateur est dans le flux, nous évaluons plus de 200 signaux de fraude en temps réel et vérifions chaque champ par rapport à des sources de données fiables. Résultat en moins de deux secondes.
Étape 04
Vous recevez les résultats
Les webhooks signés en temps réel maintiennent votre base de données synchronisée dès qu'un utilisateur est approuvé, refusé ou envoyé pour examen. Interrogez l'API à la demande. Ou ouvrez la console pour inspecter chaque session, chaque signal et gérer les cas à votre manière.
Conçu pour la gouvernance · Prix d'infrastructure
Six primitives. Une API. 0,33 $ par électeur.
L'identité anti-Sybil n'est pas une seule vérification — c'est une recette. KYC l'électeur, recherchez dans la cohorte, appliquez l'éligibilité, signez le pack d'audit, réutilisez pour le prochain tour.
Bundle KYC certifié anti-usurpation iBeta Niveau 1 — Vérification d'identité, vivacité passive, correspondance faciale 1:1, filtrage AML. Verdict en moins de deux secondes, plus de 14 000 documents dans plus de 220 pays.
Chaque inscription est comparée à chaque électeur précédemment inscrit. Au-dessus du seuil de similarité → blocage avant l'enregistrement du bulletin de vote. Gratuit, limité à votre ensemble de données uniquement.
Candidat votantCorrespondance de cohorteScoreAction
voter-12871voter-911297Bloquer
voter-12872voter-744084Examiner
voter-12873voter-632862Examiner
voter-12874no match9Passer
Gratuit par cohorte · limité à votre ensemble de données1:N
03 · Respect de la vie privée
Prouvez l'unicité. Ne révélez rien d'autre.
La plateforme de vote ne voit que `unique: true`, un PID pseudonyme (identifiant pseudonyme), une tranche d'âge et une région. Les documents et les données biométriques restent dans Didit, chiffrés au repos. Conforme au GDPR, ISO/IEC 27001, SOC 2 Type 1.
Le KYC réutilisable (gratuit, inclus) permet à un électeur vérifié de prouver son unicité à chaque vote ultérieur avec un simple selfie — aucune nouvelle capture de document. Fonctionne sur toutes les plateformes alimentées par Didit. Conforme à eIDAS2.
MultiplateformeMême identité, sur chaque plateforme Didit
Soulbound, optionnelAssocier avec des attestations on-chain
Conforme à eIDAS2. L'utilisateur est propriétaire de l'accréditation.
05 · Règles de juridiction
Éligibilité par région pour chaque électeur.
Liste blanche de pays, âge minimum, exclusion des sanctions / PEP, expiration des documents, seuil de similarité — tout est appliqué dans un seul flux de travail. Modifiez les règles dans le Workflow Builder sans code sans redéployer.
Pays d'émission · liste blancheES · FR · DE · ITPasser
Âge minimum≥ 18Passer
Sanctions / PEP détectéPlus de 1 300 listesBloquer
Expiration du documentValide le jour du voteExaminer
Recherche faciale 1:N · cohorte≥ 0,85 de similaritéBloquer
Modifier l'éligibilité dans le Workflow Builder sans code.
06 · Pack d'audit
Preuves cryptographiques d'intégrité du vote.
Reçus d'inscription signés (X-Signature-V2, HMAC SHA-256), PID d'électeur pseudonymes, journaux infalsifiables avec une rétention par défaut de 5 ans. Exportez vers votre portail de transparence ou le snapshot de votre DAO.
200OKstatut Approuvé · Refusé · En révision · Soumis à nouveau · Expiré
Correspondances non vides supérieures à 0,85 → doublon, bloquer.docs →
Intégration prête pour l'agent
Déployez le vote anti-Sybil en une seule invite.
Collez dans Claude Code, Cursor, Codex, Devin, Aider ou Replit Agent. Remplissez votre pile. L'agent construit le flux d'inscription, bloque les doublons, signe le verdict et prépare le tour suivant.
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.
Besoin de plus de contexte ? Consultez la documentation complète du module.docs.didit.me →
Conforme par conception
Ouvrez un nouveau pays en un clic. Nous faisons le gros du travail.
Nous ouvrons les filiales locales, obtenons les licences, effectuons les tests d'intrusion, obtenons les certifications et nous alignons sur chaque nouvelle réglementation. Pour effectuer des vérifications dans un nouveau pays, il suffit d'activer un interrupteur. Plus de 220 pays en direct, audités et testés par pénétration chaque trimestre — le seul fournisseur d'identité qu'un gouvernement d'un État membre de l'UE a formellement qualifié de plus sûr que la vérification en personne.
Par électeur — ensemble KYC complet, recherche faciale 1:N au sein de la cohorte incluse.
Free
KYC réutilisable — les tours suivants prouvent l'unicité avec un simple selfie.
<0s
Verdict d'inscription de bout en bout par électeur, sur Android d'entrée de gamme.
0
Vérifications gratuites chaque mois, sur chaque compte.
Trois niveaux, une seule liste de prix
Commencez gratuitement. Payez à l'usage. Passez à l'Entreprise.
500 vérifications gratuites chaque mois, pour toujours. Paiement à l'utilisation pour la production. Contrats personnalisés, résidence des données et SLA (Service Level Agreements) pour l'Entreprise.
Gratuit
Gratuit
0 $ / mois. Aucune carte de crédit requise.
Forfait KYC gratuit (Vérification d'identité + Vivacité passive + Correspondance faciale + Analyse d'appareil et IP) — 500 / mois, chaque mois
Commencez gratuitement → payez uniquement lorsqu'une vérification est effectuée → débloquez l'Entreprise pour un contrat personnalisé, un SLA ou une résidence des données.