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


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

なぜドキュメントではなくスキルなのか
Cursorにドキュメントタブを渡すと、エンドポイントを考案し、ステータス enumを小文字にします。Diditスキルを渡すと、すべての行が実際のAPIを指し、 ロックされたエンドポイント、ロックされたヘッダー、署名済みWebhookハンドラーが スキャフォールドされます。`npx`コマンド1つで。
プロジェクトで`npx skills add didit-protocol/skills`を実行します。CLIがCursor、Claude Code、Codex、OpenCodeを検出し、すべてのスキルを適切なフォルダーに配置します。`--skill didit-face-match`で特定のスキルのみをインストールすることも可能です。
[business.didit.me](https://business.didit.me)で60秒以内に取得し、`export DIDIT_API_KEY=…`とするか、エージェントにプログラムで登録させます, `POST /programmatic/register/`の後に`verify-email/`を実行すると、レスポンスでキーが返されます。ブラウザは不要です。
「Didit KYCをサインアップフローに追加して。」「このユーザーをAMLリストと照合して。」エージェントは関連スキルを読み込み、コードを書き、署名済みWebhookハンドラーを接続します。ドキュメントを切り替えることなく、初回で正確に動作します。
Diditがカメラ、書類キャプチャ、セルフィー、モバイル連携をホストします。ユーザーは30秒未満で完了。Webhookには2秒未満で結果が届き、`X-Signature-V2`で署名されているため信頼できます。
Didit · カタログ
Didit · npx install
Didit · ホスト
Didit · スキルロックとは
Didit · セットアップ
Didit · github.com/didit-protocol/skills
すべてのスキルで
3つのインストールパス
$ npx skills add didit-protocol/skills
✓ 12スキルをインストール済み
# or just one
$ npx skills add didit-protocol/skills \
--skill didit-face-match
# set the api key
$ export DIDIT_API_KEY="sk_live_..."Cursor、Claude Code、Codex、OpenCodeを自動検出。$ curl -X POST https://verification.didit.me/v3/session/ \
-H "x-api-key: $DIDIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workflow_id": "$DIDIT_WORKFLOW_ID",
"vendor_data": "user-42",
"callback_url": "https://app/cb"
}'{ "url": "verify.didit.me/..." }You are installing the Didit Agent Skills into this project and wiring the first verification session against the live https://verification.didit.me/v3/ API. After this prompt, the project should pass identity verification — Know Your Customer (KYC), Anti-Money Laundering (AML) screening, document Optical Character Recognition (OCR) — through Didit.
Didit ships twelve open-source Agent Skills at https://github.com/didit-protocol/skills and follows the open standard at https://agentskills.io. The CLI auto-detects whether you are running inside Cursor, Claude Code, Codex, or OpenCode and drops the skills into the right folder.
PRE-REQUISITES
- A Didit API key (DIDIT_API_KEY). Either issued from https://business.didit.me, or self-registered by the agent via POST /programmatic/register/ + POST /programmatic/verify-email/ (no browser needed).
- A workflow_id from the Workflow Builder that bundles ID Verification + Passive Liveness + Face Match + IP Analysis + AML — or just use the didit-kyc-onboarding skill below to create one programmatically.
- A webhook endpoint that verifies the X-Signature-V2 header with HMAC-SHA256 on the raw body bytes (do NOT re-serialise the parsed JSON; the signature will not match).
STEP 1 — Install the skills
Recommended:
npx skills add didit-protocol/skills
This installs all twelve skills. To install only one:
npx skills add didit-protocol/skills --skill didit-face-match
Or git clone the repo and copy what you need:
git clone https://github.com/didit-protocol/skills.git
cp -r skills/didit-kyc-onboarding .claude/skills/
cp -r skills/didit-id-document-verification .claude/skills/
The twelve skills:
- didit-verification-management : the hub. Account, sessions, workflows, billing, blocklist, webhook config. 45+ endpoints
- didit-kyc-onboarding : full KYC recipe (ID + selfie + face match) in one call
- didit-id-document-verification : passports, ID cards, driver's licences. OCR, MRZ, NFC. 4,000+ documents, 220+ countries
- didit-liveness-detection : 99.9%-accurate liveness from a single selfie
- didit-face-match : compare two faces, get a 0–100 score
- didit-face-search : 1:N face search for deduplication and blocklists
- didit-biometric-age-estimation : estimate age from a selfie
- didit-email-verification : email OTP, detects breached / disposable / undeliverable
- didit-phone-verification : phone OTP via SMS, WhatsApp, or Telegram. Catches VoIP
- didit-aml-screening : 1,300+ sanctions, PEP, adverse-media lists. Dual-score risk
- didit-proof-of-address : utility bills, bank statements. OCR + geocoding
- didit-database-validation : government databases across 18 countries
STEP 2 — Set the environment
Every skill reads DIDIT_API_KEY. Session-based skills also expect DIDIT_WORKFLOW_ID. Signed-webhook handlers expect DIDIT_WEBHOOK_SECRET.
export DIDIT_API_KEY="<your api key>"
export DIDIT_WORKFLOW_ID="<your workflow id>" # optional
export DIDIT_WEBHOOK_SECRET="<your secret>" # optional
Programmatic alternative (no browser):
curl -X POST https://apx.didit.me/auth/v2/programmatic/register/ \
-H "Content-Type: application/json" \
-d '{"email": "dev@example.com", "password": "MyStr0ng!Pass"}'
# check the email, get the 6-char code, then:
curl -X POST https://apx.didit.me/auth/v2/programmatic/verify-email/ \
-H "Content-Type: application/json" \
-d '{"email": "dev@example.com", "code": "<code>"}'
# response includes api_key — export it as DIDIT_API_KEY.
STEP 3 — Create a verification session
POST https://verification.didit.me/v3/session/
Headers:
x-api-key: $DIDIT_API_KEY
Content-Type: application/json
Body:
{
"workflow_id": "$DIDIT_WORKFLOW_ID",
"vendor_data": "<your user id, max 256 chars>",
"callback_url": "https://<your-app>/kyc/callback",
"metadata": { "source": "agent-skill" }
}
Response: 201 Created. The hosted session URL is on the `url` field. Redirect the user, or send them the link by email / SMS / WhatsApp. Sub-2-second p99 verdict on completion.
STEP 4 — Read the signed webhook
Didit POSTs to your callback. KYC session statuses are Title Case With Spaces.
Body (excerpted):
{
"session_id": "<uuid>",
"vendor_data": "<your user id>",
"status": "Approved",
"id_verification": { "status": "Approved" },
"liveness": { "status": "Approved" },
"face": { "status": "Approved", "similarity_score": 0.94 },
"aml": { "status": "Approved", "hits": [] }
}
Full enum:
Approved | Declined | In Review | In Progress | Not Started | Abandoned | Expired | Resubmitted | Awaiting User | Not Finished
Verify X-Signature-V2 BEFORE parsing the body — HMAC-SHA256 of the raw bytes with your webhook secret. Re-serialising the parsed body changes whitespace and key order and the signature will not match.
STEP 5 — Read the decision on demand
GET https://verification.didit.me/v3/session/{sessionId}/decision/
Headers:
x-api-key: $DIDIT_API_KEY
Returns the full decision payload — id_verification, liveness, face, ip_analysis, aml. Use this whenever the agent needs to confirm the user's status before allowing an action. Never trust client-supplied "I'm verified" flags.
STEP 6 — Branch on status
Approved → continue
Declined → block, surface decision_reason_code, allow resubmit of the failed step
In Review → wait for the analyst webhook; don't block forever
Resubmitted → user re-took a failed step; new verdict is coming
Awaiting User → user hasn't completed the flow; nudge with a reminder
Expired → create a new session
Abandoned and Declined sessions are NOT billed.
STEP 7 — Optional: ongoing AML monitoring
If AML monitoring is enabled on the workflow ($0.07 per user per year), Didit fires status.updated whenever the user lands on a new sanctions / PEP / adverse-media list. No extra endpoint to call.
WEBHOOK EVENT NAMES
- status.updated : KYC or KYB session status changed
- data.updated : session data corrected after creation
- user.status.updated : User entity changed status (Active, Flagged, Blocked)
- user.data.updated : User entity counters, metadata, or aggregate fields changed
- activity.created : timeline activity recorded
Verify X-Signature-V2 on every payload. The webhook secret is per-environment — sandbox is separate from production.
CONSTRAINTS
- KYC session statuses use Title Case With Spaces (Approved, In Review). Do NOT transform them to UPPER_SNAKE_CASE — that casing is for Know Your Business (KYB) sessions and Transaction Monitoring, not KYC.
- HMAC verification runs against the RAW request body bytes. Never re-serialise the parsed JSON.
- Bundle price is $0.30 (ID + Liveness + Face Match + IP Analysis). AML adds $0.20. 500 verifications free every month, forever.
- Default record retention is unlimited unless you configure it shorter (30 days to 10 years per application).
Read the docs:
- https://docs.didit.me/getting-started/agent-skills
- https://docs.didit.me/sessions-api/create-session
- https://docs.didit.me/sessions-api/retrieve-session
- https://docs.didit.me/integration/webhooks
Skills repo:
- https://github.com/didit-protocol/skills
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は本人確認と不正対策のためのインフラです。私たちが製品を開発していたときに「こんなプラットフォームがあれば」と願った、オープンで柔軟、そして開発者に優しいプラットフォームです。ブラックボックスとしてではなく、スタックの真の構成要素として機能します。
1つのAPIで、個人の本人確認(KYC、顧客確認)、企業の本人確認(KYB、企業確認)、暗号資産ウォレットのスクリーニング(KYT、取引確認)、およびリアルタイムでの取引監視をカバーします。このスタックは以下の特徴を備えています。
基盤となるフットプリント: 14,000以上の文書タイプを48以上の言語で、1,000以上のデータソース、そしてすべてのセッションで200以上の不正シグナルを検出します。Diditのインフラは、すべてのセッションから動的に学習し、日々改善されています。
AIエージェントにDiditのAPIの呼び出し方(エンドポイント、ヘッダー、ボディの形式、エラーケースなど)を教える小さなMarkdownファイルで、TypeScript、Python、cURLでの動作コードが含まれています。
一度インストールすれば、次にCursorやClaude Codeに「サインアップフローにKYCを追加して」と尋ねたとき、エージェントはスキルを読み込み、初回で正しいコードを生成します。ドキュメントにタブを切り替える必要も、架空のエンドポイントを生成することも、誤ったステータスケースになることもありません。
これはAgent Skillsオープンスタンダードです。Diditは12のスキルを無料でオープンソースとしてgithub.com/didit-protocol/skillsで提供しています。
Diditの機能ごとに1つのスキル、合計12のスキルで、51のエンドポイントがエンドツーエンドでテストされています。
すべてのスキルを1つのコマンドでインストール: npx skills add didit-protocol/skills。特定のスキルのみをインストール: npx skills add didit-protocol/skills --skill didit-face-match。
通常、エンドツーエンドの全フローは30秒未満で完了します, IDを手に取り、書類を撮影し、セルフィーを撮影すれば完了です。これは市場で最速です。従来のKYCプロバイダーでは、同じフローに90秒以上かかることがよくあります。
バックエンドでは、Diditはユーザーがセルフィーを完了した瞬間からWebhookが発火するまでのp99で2秒未満で結果を返します。モバイルでのキャプチャは、低速な電話やネットワーク向けに調整されています。プログレッシブ画像圧縮、遅延SDKロード、ユーザーがWebで開始した場合のQRコードによるデスクトップから電話へのワンタップハンドオフなどです。
Cursor、Claude Code、Codex、OpenCode, およびagentskills.ioオープンスタンダードに準拠するすべてのエージェントに対応しています。
npx CLIは、使用しているエージェントを検出し、スキルを適切な場所(.claude/skills/、.cursor/skills/など)に配置します。どこでも同じMarkdownファイルを使用し、ホスト固有のSDKは不要です。
すべてのスキルは、同じhttps://verification.didit.me/v3/* APIを指し、同じx-api-keyヘッダーと署名付きWebhookを使用しています。スキルは、エージェントがそれを読み取る方法に過ぎません。
すべてのセッションは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をご覧ください。
コマンド一つで完了します。
``bash
npx skills add didit-protocol/skills
``
CLIは、Cursor、Claude Code、Codex、またはOpenCodeのいずれを使用しているかを検出し、すべてのスキルを適切なフォルダに配置します。--skill didit-face-matchを使用すると、特定のスキルのみをインストールできます。
Gitがお好みですか?git clone https://github.com/didit-protocol/skillsでクローンし、必要なものをコピーしてください。ツールを使いたくないですか?リポジトリを開き、単一のSKILL.mdをエージェントのスキルディレクトリにコピーしてください, 各スキルは自己完結型です。
すべてのスキルが必要とする唯一の環境変数はDIDIT_API_KEYです。business.didit.meで60秒で取得するか、エージェントにPOST /programmatic/register/を介してプログラムで登録させることができます。
専門用語や定型文なしの平易な英語です。
エージェントは関連するスキルを読み取り、TypeScript、Python、またはBashで本番環境対応のコードを生成します。推測は不要です。スキルは正確なエンドポイント、ヘッダー、ボディ、ステータスenumを提供します。
ドキュメントは人間向けに書かれています。エージェントは同じ問題で何度もつまずきます。
/v3/transactions/内にあるにもかかわらず、POST /v3/wallet-screening/を作成してしまうApproved、KYBはAPPROVEDですが、エージェントはこれらを混同するスキルはこれらすべてをロックします。APIと同時にバージョン管理されるため、Diditが新しいエンドポイントをリリースすると、スキルも同日にリリースされます。リリースごとに51のエンドポイントがテストされます。