免费
每月 $0。无需信用卡。
- 免费 KYC 套件(身份验证 + 被动活体检测 + 人脸匹配 + 设备与 IP 分析), 每月 500 次,永久有效
- 黑名单用户
- 重复检测
- 每次会话 200+ 欺诈信号
- Didit 网络中可重复使用的 KYC
- 案件管理平台
- 工作流构建器
- 公开文档、沙盒、SDK、MCP(模型上下文协议)服务器
- 社区支持


全球2,000多家组织信赖。

为何是技能,而非文档
给 Cursor 一个文档标签,它会自行创建端点并小写状态枚举。而给它一个 Didit 技能,每一行都指向真实的 API, 锁定端点、锁定请求头、签名 webhook 处理程序已搭建。只需一个 `npx` 命令。
在您的项目中运行 `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
每项技能中
三种安装路径
$ 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 是身份和欺诈基础设施, 这是我们自己构建产品时所希望拥有的平台:开放、灵活且对开发者友好,因此它能真正融入您的技术栈,而不是一个需要您围绕其进行集成的黑盒。
一个 API 即可覆盖人员验证 (KYC,了解您的客户)、企业验证 (KYB,了解您的业务)、加密钱包筛选 (KYT,了解您的交易) 以及实时交易监控, 构建在以下技术栈之上:
底层支持:14,000 多种文档类型,支持 48 种以上语言,1,000 多个数据源,以及每个会话的 200 多个欺诈信号。Didit 基础设施从每个会话中动态学习,并日益完善。
一个小的 Markdown 文件,用于教您的 AI 代理如何调用 Didit 的某个 API, 包括端点、请求头、请求体结构、错误情况, 并附带 TypeScript、Python 和 cURL 的工作代码。
只需安装一次。下次您问 Cursor 或 Claude Code “将 KYC 添加到我的注册流程中” 时,代理会读取该技能并一次性编写出正确的代码。无需切换到文档。没有凭空捏造的端点。没有错误的状态大小写。
这是 Agent Skills 开放标准。Didit 提供了十二个,免费且开源,可在 github.com/didit-protocol/skills 获取。
每个 Didit 功能一个技能,共十二个,51 个端点经过端到端测试:
一个命令即可安装所有技能:npx skills add didit-protocol/skills。只安装一个:npx skills add didit-protocol/skills --skill didit-face-match。
整个流程通常在 30 秒内完成, 拿起身份证,拍摄证件,拍摄自拍,完成。这是市场上最快的速度。传统的 KYC 提供商完成相同流程通常需要90 秒以上。
在后端,Didit 在用户完成自拍到您的 webhook 触发的两秒内(p99)返回结果。移动端捕获针对慢速手机和慢速网络进行了优化:渐进式图像压缩、延迟加载 SDK,以及如果用户从网页端开始,可通过二维码一键从桌面端切换到手机端。
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。技能只是代理读取它的方式。
每个会话都会落入七种明确状态之一,因此您的代码始终知道该怎么做:
Approved, 所有检查通过。让用户继续。Declined, 一项或多项检查失败。您可以允许用户重新提交特定的失败步骤(例如,重新拍摄自拍),而无需重新运行整个流程。In Review, 标记为合规审查。在控制台中打开案例,查看所有信号,决定批准或拒绝。In Progress, 用户正在进行中。Not Started, 链接已发送,用户尚未打开。如果长时间未打开,发送提醒。Abandoned, 用户打开了链接但未及时完成。重新激活或使其过期。Expired, 会话链接已过期。创建新会话。每次状态更改都会触发签名 webhook,因此您的数据库始终保持同步。放弃和拒绝的会话是免费的。
生产数据默认在欧盟的 Amazon Web Services 上处理和存储。企业合同可根据监管机构要求,申请在其他区域存储。
全面加密。 所有数据库、对象存储和备份均采用 AES-256 静态加密。所有 API 调用、webhook 和业务控制台会话均采用传输层安全协议 1.3 (TLS 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。
三种集成路径, 选择最适合您技术栈的方式:
所有三种方式均使用相同的仪表板、相同的计费和相同的按成功付费价格。分步指南请访问 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 编写生产就绪的代码。无需猜测, 技能会提供确切的端点、请求头、请求体和状态枚举。
文档是为人类编写的。代理会反复遇到同样的问题:
POST /v3/wallet-screening/,而实际路径在 /v3/transactions/ 中Approved,KYB 是 APPROVED,代理会混淆它们技能可以锁定所有这些问题。它与 API 版本同步:当 Didit 发布新端点时,技能会在同一天发布。每次发布都会测试 51 个端点。