Skip to main content
1

Create your Didit account

  1. Go to business.didit.me
  2. Sign up with SSO or email and password
  3. Create your Organization — this is where your team manages workflows, API keys, and verification activity
2

Build a verification workflow

Navigate to Workflows in the sidebar and click Create New. Choose a workflow type:
TypeDescription
Simple WorkflowSteps run in a defined order — ideal for standard onboarding flows
Node-Based WorkflowFlexible branching logic — build conditional paths based on verification results
Pick a template to get started:
TemplateUse case
KYCStandard user onboarding
Adaptive Age VerificationSelfie age check with ID fallback
Biometric AuthenticationPasswordless selfie re-auth
Address VerificationProof of address flow
Customize by toggling blocks: Liveness, Face Match, AML, NFC, Phone, Email, and more.
3

Configure webhook and copy API key

Go to API & Webhooks in the sidebar:
  1. Add your Webhook URL — Didit sends status updates here
  2. Copy your API Key — keep it server-side only, never expose in frontend code
You can test webhooks directly from this page with different data and statuses — no need to run a full verification. This lets you validate your integration is working correctly before going live.
4

Start a verification session

Option A — Hosted sessions (recommended)Our preferred integration method. Hosted sessions are optimized with A/B testing for onboarding rate, speed, and security — plus AI-powered UX, charge optimization, and more.In the Console, click ”+” → select a workflow → generate a link or QR code. Or create sessions programmatically:
curl -X POST https://verification.didit.me/v3/session/ \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"workflow_id": "your-workflow-id"}'
Find your workflow_id under Workflows in the sidebar.
Option B — Standalone APIs (advanced)Call endpoints directly from your backend — no session required. Best for server-to-server or custom flows:
EndpointPurpose
POST /v3/id-verification/Document check
POST /v3/face-match/Selfie vs ID
POST /v3/aml/Sanctions & PEP
POST /v3/passive-liveness/Deepfake detection
See the full list in API Reference.
5

Receive real-time results

Didit sends webhook events to your endpoint — no polling needed.
EventTrigger
status.updatedVerification status changes (e.g., Not StartedApproved)
data.updatedKYC/POA data is manually updated by a reviewer
See Webhooks for payload format and signature verification.
6

Manage and monitor

Use the Console to:
  • View session progress in real time
  • Download PDF/CSV reports for compliance
  • Blocklist suspicious IDs or faces
  • Manually update or reject sessions

Need help?