無料
月額$0。クレジットカード不要。
- 無料KYCバンドル(本人確認 + パッシブ・ライブネス + 顔照合 + デバイス&IP分析), 毎月500回まで
- ブロックリストユーザー
- 重複検出
- すべてのセッションで200以上の不正シグナル
- Diditネットワーク全体でのKYC再利用
- ケース管理プラットフォーム
- ワークフロービルダー
- 公開ドキュメント、サンドボックス、SDK、MCP (Model Context Protocol) サーバー
- コミュニティサポート


世界中の2,000以上の組織から信頼されています。

重複検出
ユーザーベース全体で繰り返される不正行為者を捕捉します。KYCバンドルの一部として無料で提供。 生体認証テンプレートのベクターインデックス、数百万件に対する2秒未満でのマッチング。
本人確認、生体認証、顔照合、制裁リスト、住所、年齢、電話番号、メールアドレス、カスタム質問など、必要なチェック項目を選択します。ダッシュボードでフローにドラッグ&ドロップするか、API経由で同じフローを投稿します。条件分岐やA/Bテストもコード不要で設定可能です。
Web、iOS、Android、React Native、Flutter SDKでネイティブに組み込むか、ホストされたページにリダイレクトします。または、メール、SMS、WhatsAppなど、どこからでもユーザーにリンクを送信するだけです。お使いのスタックに合った方法をお選びください。
Diditがカメラ、照明の指示、モバイル連携、アクセシビリティをホストします。ユーザーがフローを実行中に、200以上の不正信号をリアルタイムでスコアリングし、すべてのフィールドを信頼できるデータソースと照合して検証します。結果は2秒以内に返されます。
リアルタイムの署名付きWebhookにより、ユーザーが承認、拒否、またはレビューに送られた瞬間にデータベースが同期されます。必要に応じてAPIをポーリングすることも可能です。または、コンソールを開いてすべてのセッション、すべての信号を検査し、ケースを自由に管理できます。
すべてのライブネスチェック内で自動発火
FACE_IN_BLOCKLIST・自動拒否
参照ベクトル・100万分の1
similarity_threshold・デフォルト70
従量制なし・コミットメントなし
EU圏 · カテゴリー3データ
$ curl -X POST https://verification.didit.me/v3/session/ \
-H "x-api-key: $DIDIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workflow_id": "wf_liveness_dedupe",
"vendor_data": "user-42"
}'{ "session_url": "verify.didit.me/..." }$ curl -X POST https://verification.didit.me/v3/face-search/ \
-H "x-api-key: $DIDIT_API_KEY" \
-F "image=@reference.jpg" \
-F "similarity_threshold=80"{ "total_matches": 3, "status": "承認済み" }# Didit Face Search 1:N — integrate in 5 minutes
You are integrating Didit's Face Search 1:N (one-to-many biometric search)
module into my_stack. Follow these steps exactly. Every URL, header, and
enum value below is canonical — do not paraphrase or "improve" them.
Face Search 1:N searches a reference face against your entire database of
previously verified users to detect duplicate accounts, blocklisted faces,
and fraud rings. Free forever on every plan — no per-call fee, no minimum.
## 1. Provision an account
- Sign up: https://business.didit.me (no credit card required).
- Or provision programmatically: POST https://apx.didit.me/auth/v2/programmatic/register/
(returns an API key bound to the workspace + application).
## 2. Two integration paths — pick one
### Path A — Workflow Builder (automatic, inside every liveness check)
Best when you want Face Search to run automatically every time a user
verifies. Face Search 1:N is automatically performed during liveness
checks in verification sessions to detect duplicate users and check
against blocklisted faces. No extra wiring needed.
1. Create a workflow that contains the LIVENESS feature:
POST https://verification.didit.me/v3/workflows/
Authorization header: x-api-key: your-api-key
Body: workflow_label, features array with the single entry
the JSON object containing feature equal to "LIVENESS"
(UPPERCASE — strict enum). Face Search runs automatically.
2. Create a verification session for an end user:
POST https://verification.didit.me/v3/session/
Body: workflow_id (from step 1), vendor_data (your own user id).
Response: session_url — redirect the user to it.
3. Listen for the session webhook (see "Webhooks" below). The face_search
block is included in the session report under decision.face_search.
### Path B — Standalone server-to-server API
Best when you want to search a face on demand — fraud investigation,
manual review tooling, watchlist scan, identity re-auth.
POST https://verification.didit.me/v3/face-search/
Content-Type: multipart/form-data
Body fields:
- image (required, file — single reference face)
- vendor_data (optional string, your search id)
- similarity_threshold (optional int 0-100, default 70)
- allow_multiple_faces (optional bool, default false)
Response: JSON report with matches array, similarity percentages,
blocklist flags, and the standard warnings array.
## 3. Webhooks (Path A only — Path B returns synchronously)
- Register a webhook destination once via
POST https://verification.didit.me/v3/webhook/destinations/
Body: url, subscribed_events: ["session.verified", "session.review_started",
"session.declined"]
- Response includes secret_shared_key — store it.
- Every webhook delivery carries an X-Signature-V2 header you MUST verify
before trusting the payload. HMAC-SHA256 verification MUST run against the raw body bytes (the raw payload as Didit sent it) BEFORE any JSON parsing — re-serialising the parsed body changes whitespace and key order, which invalidates the signature.Algorithm:
1. sortKeys(payload) recursively
2. shortenFloats (truncate trailing zeros after the decimal point)
3. JSON.stringify the result
4. HMAC-SHA256 with the secret_shared_key
5. Hex-encode, compare to the X-Signature-V2 header.
## 4. Reading the report (both paths return the same shape)
The face_search object includes:
- status: "Approved" | "Declined" | "In Review"
- total_matches: integer (0 when no match crossed the threshold)
- matches: array of match objects, each with:
- session_id UUID of the matching session
- session_number integer
- similarity_percentage number 0-100
- vendor_data your reference data from the original verification
- verification_date ISO 8601 timestamp
- user_details name, document_type, document_number (masked)
- match_image_url signed URL, expires in 60 minutes
- status "Approved" | "Declined" | "In Review"
- is_blocklisted boolean
- user_image:
- entities array (bbox, confidence, age, gender per detected face)
- best_angle (0 | 90 | 180 | 270) if rotate_image enabled
- warnings: Array of risk, log_type, short_description, long_description
Similarity bands documented:
90+ Strong match — very likely the same person
70 – 89 Possible match — may require manual review
Below 70 Likely different individuals
Auto-decline risks (always enforced by Didit, not configurable):
- NO_FACE_DETECTED no face in the reference image
- FACE_IN_BLOCKLIST the reference face matches your face blocklist
Configurable warning:
- MULTIPLE_FACES_DETECTED tune allow_multiple_faces per application
## 5. Hard rules — do not change
- Base URL for /v3/* endpoints is verification.didit.me (NOT apx.didit.me).
- Feature enum is UPPERCASE: FACE_SEARCH, LIVENESS, ID_VERIFICATION, FACE_MATCH.
- Auth header is x-api-key (lowercase, hyphenated).
- Webhook signature header is X-Signature-V2 (NOT X-Signature).
- Always verify webhook signatures before trusting payload data.
- Status casing matches exactly: "Approved", "Declined", "In Review"
(title-cased, space-separated).
- match_image_url is signed and expires after 60 minutes — do not cache it,
re-fetch from the session if you need it again.
## 6. Pricing reference (public)
- Face Search 1:N is FREE FOREVER on every Didit plan.
- No per-call fee for the standalone POST /v3/face-search/ endpoint.
- No surcharge when bundled inside a LIVENESS workflow.
- 500 free Didit verifications every month on top of that.
- Templates only — your biometric index stores hashed embeddings, never raw
photos. Encrypted at rest in EU-region AWS.
## 7. Verify your integration
- Sandbox starts on signup at https://business.didit.me — no separate flag.
- Test images: deterministic synthetic faces returned in sandbox (Approved
by default; trigger Declined by sending a known-blocklisted test face).
- Switch to live: flip the application's environment toggle in console.
When in doubt: https://docs.didit.me/core-technology/face-search/overview
月額$0。クレジットカード不要。
使った分だけお支払い。25以上のモジュール。モジュールごとの公開価格、月額最低料金なし。
カスタムMSA & SLA。大量利用や規制対象プログラム向け。
無料で開始 → チェック実行時のみ支払い → カスタム契約、SLA、データレジデンシーが必要な場合はエンタープライズプランへ。
Diditは本人確認と不正対策のためのインフラです。私たちが自社でプロダクトを開発していたときに「こんなプラットフォームがあれば」と願ったものを実現しました。オープンで柔軟、そして開発者に優しいため、単なるブラックボックスとしてではなく、あなたのスタックの真の構成要素として機能します。
1つのAPIで、個人の本人確認(KYC、顧客確認)、企業の本人確認(KYB、企業確認)、暗号資産ウォレットのスクリーニング(KYT、取引確認)、およびリアルタイムでの取引監視をカバーします。このスタックは以下の特徴を備えています。
基盤となるフットプリント: 48以上の言語で14,000以上の書類タイプ、1,000以上のデータソース、そしてすべてのセッションで200以上の不正シグナル。Diditのインフラは、すべてのセッションから動的に学習し、日々改善されています。
imageマルチパートフィールドに加え、オプションでvendor_data、similarity_threshold(0-100、デフォルト70)、allow_multiple_faces(デフォルトfalse)を受け入れます。Livenessワークフロー内では、入力は一切不要です。ユーザーが撮影したセルフィーは、検証済みユーザーインデックスに対して自動的に検索されるため、重複やブロックリストとの一致は、Livenessの判定と同じセッションで検出されます。face_searchオブジェクトは、status(Approved、Declined、In Review)、total_matches、およびmatches配列を返します。各マッチには、session_id、session_number、similarity_percentage(0-100)、vendor_data、verification_date、user_details(名前、document_type、document_number, マスク済み)、60分で期限切れになる署名付きmatch_image_url、マッチしたセッション自体のstatus、およびis_blocklistedが含まれます。user_imageブロックは、検出された顔のエンティティ(bbox、confidence、age、gender)と適用された回転を報告します。warnings配列は、発生したリスクを表面化します。通常、エンドツーエンドの全フローは30秒未満で完了します, 本人確認書類を手に取り、書類を撮影し、セルフィーを撮影すれば完了です。これは市場最速です。従来のKYCプロバイダーでは、同じフローに90秒以上かかることが一般的です。
バックエンドでは、Diditはユーザーがセルフィーを完了した瞬間からWebhookが発火するまでの時間を測定し、p99で2秒未満で結果を返します。モバイルキャプチャは、低速なスマートフォンやネットワーク向けに最適化されています。プログレッシブ画像圧縮、遅延SDKロード、ユーザーがWebから開始した場合のQRコードによるデスクトップからスマートフォンへのワンタップ連携などが含まれます。
similarity_thresholdを調整し、オンボーディングを厳格にしつつ、レビューキューを柔軟に保つことができます。ワークフローオーケストレーターの分岐, 1:Nの判定をデバイスインテリジェンス、デバイス&IP分析、Livenessと組み合わせることで、盗まれた写真、再利用されたSIM、共有されたデバイスフィンガープリントを使用する不正グループは、単一のシグナルだけでは通過してしまう場合でも、複合的なチェックで失敗させることができます。すべてのセッションは7つの明確なステータスのいずれかに到達するため、お客様のコードは常に何をすべきかを知ることができます。
Approved, すべてのチェックに合格しました。ユーザーを次のステップに進めます。Declined, 1つ以上のチェックに失敗しました。ユーザーは、特定の失敗したステップ(例:セルフィーの再撮影)を再提出できます。その際、フロー全体を再実行する必要はありません。In Review, コンプライアンスレビューのためにフラグが立てられました。コンソールでケースを開き、すべてのシグナルを確認し、承認または拒否を決定します。In Progress, ユーザーはフローの途中にいます。Not Started, リンクは送信されましたが、ユーザーはまだ開いていません。長期間放置されている場合はリマインダーを送信します。Abandoned, ユーザーはリンクを開きましたが、時間内に完了しませんでした。再エンゲージするか、期限切れにします。Expired, セッションリンクの有効期限が切れました。新しいセッションを作成してください。ステータス変更ごとに署名付きWebhookが発火するため、お客様のデータベースは常に同期されます。中断および拒否されたセッションは無料です。
本番データは、デフォルトでAmazon Web Services上の欧州連合内で処理および保存されます。規制当局が要求する管轄区域向けに、エンタープライズ契約で代替リージョンをリクエストできます。
あらゆる場所で暗号化。 すべてのデータベース、オブジェクトストレージ、バックアップにおいて、保存データはAES-256で暗号化されます。すべてのAPIコール、Webhook、ビジネスコンソールセッションにおいて、転送データはTransport Layer Security 1.3で暗号化されます。生体認証データは、個別のカスタマーマスターキーで暗号化されます。
保持期間はお客様が管理できます。 デフォルトの保持期間は無期限(無制限)ですが、アプリケーションごとに30日から10年の間で短縮設定することも可能です。また、ダッシュボードまたはAPIからいつでも個々のセッションを削除できます。
認証:SOC 2 Type 1(Type 2監査進行中)、ISO/IEC 27001:2022、iBeta Level 1 PAD、およびスペインのTesoro / SEPBLAC / CNMVからの公式証明書により、Diditのリモート本人確認は対面での本人確認よりも安全であることが示されています。詳細レポートは/security-complianceをご覧ください。
Diditは、本人確認インフラストラクチャにとって重要な規制当局にデフォルトで準拠しています。
詳細なメモ、すべての証明書、すべての規制当局からの書簡は/security-complianceをご覧ください。
3つの統合パスがあります, お客様のスタックに最適なものをお選びください。
すべてのパスで同じダッシュボード、同じ請求、成功ごとの同じ料金体系です。ステップバイステップガイドはdocs.didit.me/integration/integration-promptをご覧ください。