Didit
Sign upGet a Demo

Phone Verification

Verify phone numbers and understand the risk behind them

Didit Phone Verification confirms phone number ownership using one-time passcodes (OTP) and performs advanced phone risk analysis to detect disposable, virtual, duplicated, and high-risk numbers in real time.

Trusted by +1000 companies worldwide

GBTC Finance
Bondex
Crnogorski Telekom
CrediDemo
Shiply
Adelantos
Multi-channel

OTP delivery

(SMS, WhatsApp, Viber, Telegram, Voice)

Advanced

Risk assessment

(Disposable, VoIP, duplicates)

Flexible

Integration

(Workflow or API)

HOW IT WORKS

How Phone Verification works

WHY DIDIT PHONE VERIFICATION

Why teams choose Didit for Phone Verification

RISK-AWARE

More than OTP delivery

Didit combines OTP verification with deep phone number risk analysis to detect disposable, virtual, duplicated, and abused numbers.

CONFIGURABLE

Control decisions with rules

Define how your application handles risky phone numbers — approve, review, or decline — based on configurable risk categories.

GLOBAL & RELIABLE

Optimized delivery worldwide

Multiple delivery channels and carrier-aware routing ensure high delivery and completion rates across regions.

DEVELOPER-FIRST

Clean APIs and full visibility

Simple REST APIs, structured JSON reports, webhook support, and transparent pay-per-use pricing with no lock-in.

Developer-First

PER-MESSAGE PRICING

Message apps rates by country

Transparent pricing per message. Select a country to see channel-specific rates.

THE EASIEST TO INTEGRATE

Integrate Didit your way

Use Didit with no code or with a single API call. Go live in minutes.

No-code

Use prebuilt verification links to run the full KYC flow instantly — no engineering work needed.

Just share a link and receive results via webhooks or in the console.

Key points

  • Zero development required
  • Prebuilt, mobile-optimized flow
  • Controlled in the Console
  • Real-time decisions + webhooks
View documentation
Didit Console

BUILT FOR AI AGENTS

Integrate with just one prompt

The only identity platform your AI coding agent can fully integrate — credentials, workflows, webhooks, and production code — without opening a browser.

Claude CodeClaude Code
CursorCursor
GitHub CopilotGitHub Copilot
DevinDevin
OpenHandsOpenHands

One prompt. Full integration.

Paste this into Claude Code, Cursor, or Copilot. Your agent registers for API credentials, creates verification workflows, sets up webhooks, and writes integration code — end to end, from a single copy-paste.

Key points

  • Full API reference with every endpoint
  • Programmatic registration — no browser needed
  • All 5 SDK install commands included
  • 12 standalone APIs for granular control
View documentation
didit-integration.md
Integrate Didit identity verification into this project.

Didit is an all-in-one identity platform. Docs: https://docs.didit.me
Base URL: https://verification.didit.me/v3
Auth API: https://apx.didit.me/auth/v2


## Step 1: Get API credentials (no browser needed)

Register programmatically — 2 API calls:

POST https://apx.didit.me/auth/v2/programmatic/register/
Body: { "email": "dev@yourapp.com", "password": "SecurePass123!" }
→ Sends 6-char OTP to email

POST https://apx.didit.me/auth/v2/programmatic/verify-email/
Body: { "email": "dev@yourapp.com", "code": "ABC123" }
→ Returns { api_key, organization, application }

Or login if already registered:
POST https://apx.didit.me/auth/v2/programmatic/login/
Body: { "email": "...", "password": "..." }
→ Returns { access_token, refresh_token }

All subsequent API calls use: x-api-key: YOUR_API_KEY


## Step 2: Create a verification workflow

POST https://verification.didit.me/v3/workflows/
Headers: { "x-api-key": "YOUR_API_KEY", "content-type": "application/json" }
Body: {
  "name": "KYC Flow",
  "features": {
    "id_verification": true,
    "passive_liveness": true,
    "face_match": true,
    "aml_screening": false,
    "nfc": false,
    "ip_analysis": true,
    "phone_verification": false,
    "email_verification": false,
    "proof_of_address": false,
    "age_estimation": false,
    "database_validation": false,
    "questionnaire": false
  }
}
→ Returns { uuid: "workflow_id", ... }

Or list existing workflows: GET /v3/workflows/


## Step 3: Create verification sessions

POST https://verification.didit.me/v3/sessions/
Body: {
  "workflow_id": "WORKFLOW_ID",
  "vendor_data": "your-internal-user-id",
  "callback": "https://yourapp.com/api/didit/webhook"
}
→ Returns {
    session_id, session_token, session_number,
    url: "https://verify.didit.me/session/TOKEN"
  }

Redirect users to the url, or embed via SDK:
- Web: npm install @didit-protocol/sdk-web
- React Native: npx expo install @didit-protocol/sdk-react-native
- iOS: SPM github.com/didit-protocol/sdk-ios
- Android: me.didit:didit-sdk:3.2.0
- Flutter: flutter pub add didit_sdk


## Step 4: Get results

Option A — Webhook (recommended):
Configure callback URL. Didit sends POST with session data when status changes.
Verify webhook signature using your webhook secret (GET /v3/webhook/).

Option B — Poll:
GET https://verification.didit.me/v3/sessions/{session_id}/

Session statuses: Pending → In Progress → Approved | Declined | In Review | Expired

You can also: update status (PATCH /v3/sessions/{id}/status/),
generate PDF reports (POST /v3/sessions/{id}/generate-pdf/),
or delete sessions (DELETE /v3/sessions/{id}/).


## Standalone APIs (call individually without sessions)

POST /v3/id-verification/ — Submit document images, get OCR + authenticity
POST /v3/passive-liveness/ — Verify person is real from selfie
POST /v3/face-match/ — Compare two faces (similarity 0-100)
POST /v3/face-search/ — 1:N search against all approved sessions
POST /v3/age-estimation/ — Estimate age from face
POST /v3/aml-screening/ — Screen against 1,300+ watchlists
POST /v3/proof-of-address/ — Extract + validate address documents
POST /v3/database-validation/ — Government DB checks (18+ countries)
POST /v3/email/send/ + /v3/email/check/ — Email OTP
POST /v3/phone/send/ + /v3/phone/check/ — Phone OTP (SMS/WhatsApp)


## Pricing

Free core KYC: ID Verification + Passive Liveness + Face Match + IP Analysis (500 free/month)
Premium checks: Prepaid credits, no contracts, no minimums, credits never expire.
Details: https://didit.me/pricing


## Rate Limits

300 req/min per method, 600 session creations/min.
On 429: check Retry-After header.

CERTIFICATIONS

Certified for enterprise trust

Our platform meets the highest international standards for information security, data privacy, and biometric accuracy.

translation_v21.securityCompliance.certifications.items.gdpr.title

GDPR Compliant

Full EU data protection compliance

ISO 27001

ISO 27001

Information security management

translation_v21.securityCompliance.certifications.items.ibeta.title

iBeta Level 1

PAD (liveness + face match)

TRUSTED WORLDWIDE

What our customers say

Join thousands of companies that trust Didit for their verification needs

Logo

Didit’s NFC + active biometrics technology blocks the most advanced fraud scenarios, offering a level of security equivalent to or superior to in-person verification.

Spanish Financial Sandbox

CNMV, SEPBLAC & Spanish Treasury — Conclusions Report

Logo

Didit is an exceptionally valuable partner, delivering a stable and highly adaptable solution”.

Vuk Adžić

Head of the E-Business Department at Crnogorski Telekom

Logo

Didit offered us a robust technology with a simple implementation and adaptability to different markets”.

Fernando Pinto

CEO & CoFounder at TucanPay

Logo

Thanks to Didit we have been able to reduce manual processes and improve data extraction accuracy”.

Diana Garcia

Trust & Safety Executive at Shiply

Logo

Didit’s integration slashed verification times and costs, freeing resources for other projects”.

Guillem Medina

COO at GBTC Finance

Logo

Didit removed KYC costs, enabling faster scaling with high verification standards and less fraud.”

Paul Martin

VP Marketing & Growth at Bondex

Logo

Didit’s secure, user-friendly verification boosts customer trust and optimizes our process.”

Cristofer Montenegro

Executive assistant to the CEO at Adelantos

Logo

Didit ensures a precise, secure digital onboarding without slowing negotiations or client time.”

Ernesto Betancourth

Gerente de riesgos at CrediDemo

PHONE VERIFICATION FAQ

Questions about Phone Verification

Phone Verification confirms that a phone number is real, reachable, and controlled by the user using one-time passcodes (OTP). It is commonly used for onboarding, account recovery, step-up verification, and fraud prevention.

Start verifying users in minutes

Get a free account, instant sandbox, and full access to every feature. No contracts. No sales calls. No credit card required.