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


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

パスワード不要・フィッシング耐性
パスワードリセットはリピーターの約30%を失い、Short Message Service (SMS) コードは最大90秒かかることがあります。ユーザーの登録済み顔画像に対するセルフィー認証は、約2秒で完了します。既存のOAuth / OpenID Connectフローに対応するドロップインコールバック契約です。再認証あたり$0.10。毎月500回まで無料で認証できます。
本人確認、生体認証、顔照合、制裁リスト、住所、年齢、電話番号、メールアドレス、カスタム質問など、必要なチェック項目を選択します。ダッシュボードでフローにドラッグ&ドロップするか、同じフローをAPIにポストするだけ。条件分岐やA/Bテストもコード不要で実行できます。
Web、iOS、Android、React Native、Flutter SDKでネイティブに組み込むか、ホストされたページにリダイレクトします。または、メール、SMS、WhatsAppなど、どこからでもユーザーにリンクを送信するだけ。あなたのスタックに合った方法を選んでください。
Diditがカメラ、ライティングの指示、モバイル連携、アクセシビリティをホストします。ユーザーがフローを実行している間、200以上の不正シグナルをリアルタイムでスコアリングし、すべてのフィールドを信頼できるデータソースと照合して検証します。2秒以内に結果が出ます。
リアルタイムの署名付きWebhookにより、ユーザーが承認、拒否、またはレビューに送られた瞬間にデータベースが同期されます。必要に応じてAPIをポーリングすることも可能。または、コンソールを開いてすべてのセッション、すべてのシグナルを検査し、ケースを管理することもできます。
Didit · 既存ユーザーの再認証
おかえりなさい
セルフィー1枚でサインイン
Didit · メソッドマトリックス
Didit · 既存ユーザーのコンバージョン
Didit · 再利用可能なKYC
Didit · デバイス&IP分析
Didit · 公開価格
$ curl -X POST https://verification.didit.me/v3/session/ \
-H "x-api-key: $DIDIT_API_KEY" \
-d '{
"workflow_id": "wf_reauth",
"workflow_type": "biometric_authentication",
"vendor_data": "user-42",
// base64 enrolment selfie, ≤ 1MB (omit for liveness-only)
"portrait_image": "/9j/4AAQSkZJRgABAQE..."
}'{ "session_url": "verify.didit.me/..." }$ curl https://verification.didit.me/v3/session/<id>/decision/ \
-H "x-api-key: $DIDIT_API_KEY"
# Returns the re-auth verdict
{
"status": "承認済み",
"face": { "similarity_score": 0.96 }
}ステータス:承認済み・審査中・却下・未完了You are integrating Didit's selfie-only re-authentication into <my_stack>. Replace password, SMS one-time-password, or magic-link on returning-user surfaces with a sub-2-second face match against the enrolled portrait. Phishing-resistant, no carrier dependency, no SIM-swap surface, no email-delivery delay.
1. Enrol the user's portrait ONCE at sign-up (standard Know Your Customer (KYC) session).
2. On every returning-user sign-in, open a re-auth session that runs Passive Liveness + Face Match 1:1 against the stored portrait. ~2 seconds end-to-end.
Pricing (public):
- Selfie re-auth: $0.10 per authentication (Sessions API)
- 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 Hash-based Message Authentication Code (HMAC) SHA-256 verification using the X-Signature-V2 header.
- The user has previously enrolled via a Didit KYC session (the portrait captured during the liveness step is stored automatically, bound to vendor_data).
- A workflow_id from the Workflow Builder. The workflow MUST contain LIVENESS, and the session is opened with workflow_type = "biometric_authentication".
STEP 1 — Open a re-auth session
POST https://verification.didit.me/v3/session/
Headers:
x-api-key: <your api key>
Content-Type: application/json
Body:
{
"workflow_id": "<your biometric_authentication workflow>",
"workflow_type": "biometric_authentication",
"vendor_data": "<the same user id used at enrolment>",
"callback": "https://<your-app>/reauth/callback",
"metadata": {
"purpose": "returning_user_signin",
"device_id": "<optional, your device fingerprint>",
"from_ip": "<optional, the request IP>"
},
"portrait_image": "<base64 JPEG of the user's enrolment selfie, ≤ 1 MB — REQUIRED when the workflow has FACE_MATCH active; OMIT for liveness-only mode>"
}
Response: 201 Created with the hosted session_url. Redirect the user. The hosted UI opens the front camera, captures one passive frame, runs Liveness + Face Match 1:1 against the user's enrolled portrait, returns the verdict in sub-2-seconds.
STEP 2 — Read the signed verdict on the webhook
Body (excerpted for a passing re-auth):
{
"session_id": "<uuid>",
"vendor_data": "<your user id>",
"status": "Approved",
"liveness": {
"status": "Approved",
"method": "PASSIVE",
"score": 96
},
"face": {
"status": "Approved",
"similarity_score": 0.96
}
}
Verify X-Signature-V2 BEFORE trusting the body — HMAC SHA-256 of the raw bytes with your webhook secret.
Session status enum (exact case): Approved | Declined | In Review | Resubmitted | Expired | Not Finished | Kyc Expired | Abandoned.
STEP 3 — Branch your sign-in logic on the verdict
Approved → mint your session token, sign the user in.
Declined → block sign-in; fall back to a higher-friction recovery (support contact / full KYC re-do).
In Review → hold; route to your operations queue.
Not Finished → user abandoned the capture; safe to re-prompt or fall back to a backup factor.
STEP 4 — Adaptive step-up (recommended)
Pair the selfie with Device & IP Analysis (bundled into the 200+ fraud-signal stack at no extra cost). Adaptive rules to consider:
Known device + known Internet Protocol (IP) → skip the selfie, mint a session token.
Known device + new IP → run the selfie (passive).
New device + new IP → run the selfie (passive).
Tor / Virtual Private Network (VPN) exit +
new device → escalate to ACTIVE_3D method (motion challenge).
Implement the branching in your application or in the Workflow Builder via per-session overrides.
CONSTRAINTS
- Base URL for /v3/* endpoints is verification.didit.me (NOT apx.didit.me).
- Feature enum is UPPERCASE: LIVENESS, FACE_MATCH, IP_ANALYSIS, ID_VERIFICATION, AML, AGE_ESTIMATION.
- Method enum is UPPERCASE: PASSIVE, FLASHING, ACTIVE_3D.
- Auth header is x-api-key (lowercase, hyphenated).
- Webhook signature header is X-Signature-V2 (NOT X-Signature).
- Status casing matches exactly: Approved, Declined, In Review, Expired, Not Finished, Resubmitted, Kyc Expired, Abandoned.
- The face template is irreversible (a one-way hash). The user can request deletion via the standard data-subject-request path.
PRO TIPS
- Bind a Reusable Credential to each enrolled user. The next Didit-powered surface that needs the same gate consumes the credential at zero cost.
- Keep a fallback factor (password, magic link, support recovery) for users who cannot complete the selfie — accessibility, device camera failure, religious head covering, etc.
Read the docs:
- https://docs.didit.me/core-technology/biometric-auth/overview
- https://docs.didit.me/sessions-api/create-session
- https://docs.didit.me/integration/webhooks
Start free at https://business.didit.me — sandbox key in 60 seconds, 500 verifications free every month, no credit card.月額$0。クレジットカード不要。
使った分だけお支払い。25以上のモジュール。モジュールごとの公開価格、月額最低料金なし。
カスタムMSA & SLA。大量利用や規制対象プログラム向け。
無料で開始 → チェック実行時のみ支払い → カスタム契約、SLA、データレジデンシーが必要な場合はエンタープライズプランへ。
Diditは、本人確認と不正対策のためのインフラです。私たちが自社でプロダクトを開発していたときに「こんなプラットフォームがあれば」と願ったものを実現しました。オープンで柔軟、そして開発者に優しいため、ブラックボックスのように統合するのではなく、スタックの真の構成要素として機能します。
単一のAPIで、個人の確認(KYC、顧客確認)、企業の確認(KYB、企業確認)、暗号資産ウォレットのスクリーニング(KYT、取引確認)、およびリアルタイムでの取引監視をカバーします。このスタックは、以下の特徴を備えています。
基盤となるフットプリント:48以上の言語に対応する14,000以上のドキュメントタイプ、1,000以上のデータソース、そしてすべてのセッションで200以上の不正シグナル。Diditのインフラは、すべてのセッションから動的に学習し、日々進化しています。
改善されていない3つの理由があります。
通常、エンドツーエンドの全フローは30秒未満で完了します, 身分証明書を手に取り、書類を撮影し、セルフィーを撮れば完了です。これは市場で最速です。従来のKYCプロバイダーでは、同じフローに90秒以上かかることがよくあります。
バックエンドでは、Diditはユーザーがセルフィーを完了した瞬間からウェブフックが発火するまでの時間をp99で2秒未満で結果を返します。モバイルキャプチャは、低速なスマートフォンやネットワーク向けに最適化されています。プログレッシブ画像圧縮、遅延ソフトウェア開発キットのロード、そしてユーザーがウェブから開始した場合でもQRコードを介してデスクトップからスマートフォンへワンタップで引き継ぎが可能です。
SMSワンタイムパスワードは、キャリア、国、時間帯によって配信に5秒から90秒かかります。最良の場合でも、ユーザーは待ち、アプリを切り替え、6桁の数字をコピーし、アプリに戻って貼り付け、送信します。サインインまでの合計時間は15秒から120秒です。
セルフィーはワンタップ、ワンカメラフレーム、ワン判定で、アプリの切り替え、コピー/ペースト、メッセージが届かないといった問題もなく、エンドツーエンドで約2秒で完了します。
すべてのセッションは7つの明確なステータスのいずれかに分類されるため、お客様のコードは常に何をすべきかを知ることができます。
Approved, すべてのチェックに合格しました。ユーザーを次のステップに進めます。Declined, 1つ以上のチェックに失敗しました。ユーザーは、フロー全体を再実行することなく、特定の失敗したステップ(例:セルフィーの再撮影)を再提出できます。In Review, コンプライアンスレビューのためにフラグが立てられました。コンソールでケースを開き、すべてのシグナルを確認し、承認または拒否を決定します。In Progress, ユーザーはフローの途中にいます。Not Started, リンクは送信されましたが、ユーザーはまだ開いていません。長時間放置されている場合はリマインダーを送信します。Abandoned, ユーザーはリンクを開きましたが、時間内に完了しませんでした。再エンゲージするか、期限切れにします。Expired, セッションリンクの有効期限が切れました。新しいセッションを作成します。ステータス変更ごとに署名付きウェブフックが発火するため、お客様のデータベースは常に同期されます。AbandonedおよびDeclinedセッションは無料です。
本番データは、デフォルトで欧州連合内のAmazon Web Servicesで処理および保存されます。エンタープライズ契約では、規制当局が要求する管轄区域のために代替リージョンを要求できます。
あらゆる場所で暗号化。すべてのデータベース、オブジェクトストレージ、バックアップでAES-256による保存時暗号化。すべてのAPIコール、ウェブフック、ビジネスコンソールセッションで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つの統合パス, お客様のスタックに合うものをお選びください。
同じダッシュボード、同じ請求、3つすべてで成功ごとの料金です。ステップバイステップガイドはdocs.didit.me/integration/integration-promptをご覧ください。
既存のリピーターコールバック契約にドロップインする形です。
workflow_type: "biometric_authentication"と、登録時に使用したvendor_dataを指定してPOST /v3/session/を実行します。session_urlにユーザーをリダイレクトします。X-Signature-V2 Hash-based Message Authentication Code (HMAC)ヘッダーを検証します。statusに基づいて分岐します, Approvedはトークンを発行し、Declinedはブロックしてフォールバックし、In Reviewは運用チームにルーティングし、Not Finishedは再プロンプトを表示します。ほとんどのチームは週末でこれを実装しています。完全なエージェント貼り付け可能なプロンプトは上記にあります。Model Context Protocol (MCP)サーバーは両方のインターフェースに対応しています。
デフォルトでデータ最小化。セルフィーはメモリ内で処理され、判定と類似性スコアは保持されますが、保持が明示的に有効になっていない限り、元の画像は削除されます。登録された顔画像は、元の顔を再構築できない一方向ハッシュである不可逆的な顔テンプレートとして保存されます。
お客様の生体認証データを販売、共有、または第三者モデルのトレーニングに使用することはありません。エンドユーザーは、標準のデータ主体要求パスを通じて、いつでもテンプレートの削除を要求できます。
Face Match 1:1は、ある程度の容姿の変化(髪型、ひげ、眼鏡、照明、メイク、わずかな加齢)に対して堅牢です。再認証ごとに返される類似性スコアは、モデルの信頼度を反映しています。
自動承認のしきい値から外れるユーザー(大幅な体重変化、手術、更新なしでの数年間の加齢など)の場合、判定はIn Reviewとなり、お客様の運用キューにルーティングされます。10秒間の再登録セッションでテンプレートが更新され、次回の再認証では新しい顔画像が使用されます。