跳到主要内容
Didit 融资200万美元并加入 Y Combinator (W26)
Didit
年龄验证

年龄门控无需上传身份证件。通过自拍验证。仅在需要时回退。

通过被动自拍估算年龄,费用为 $0.10。文档回退仅在临界情况下触发。符合英国《在线安全法案》和法国 SREN。每月免费提供 500 次验证。

支持者
Y Combinator
GBTC Finance
Bondex
Crnogorski Telekom
UCSF Neuroscape
Shiply
Adelantos

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

深色电影风格的年龄验证合规堆栈——在纯黑色背景上,四个半透明玻璃面板以 3D 透视浮动,由发光的 Didit 蓝色线条穿插,并由发光的扫描仪支架框住。每个面板都带有一个代表年龄曲线、日历、英国 Ofcom 盾牌和法国三色旗的小型浅白色图案。

英国 Ofcom · 法国 SREN · 欧盟 DSA

1 秒内验证年龄。仅在需要时提供文件。

强制每位访客通过文档上传会使完成率下降 25-40%。 Didit 的自适应流程首先运行年龄估算,并且仅将 临界情况路由到文档回退。自拍验证结果在 2 秒内得出,每次检查费用为 $0.10, 每位用户的综合成本接近 $0.115。每月免费提供 500 次验证。

工作原理

从注册到验证用户,仅需四步。

  1. 步骤 01

    创建工作流程

    选择您想要的检查项——身份、活体、人脸匹配、制裁、地址、年龄、电话、电子邮件、自定义问题。将它们拖入仪表板中的流程,或将相同的流程发布到我们的 API。根据条件进行分支,运行 A/B 测试,无需代码。

  2. 步骤 02

    集成

    使用我们的 Web、iOS、Android、React Native 或 Flutter SDK 进行原生嵌入。重定向到托管页面。或者直接通过电子邮件、短信、WhatsApp 等任何方式向您的用户发送链接。选择适合您技术栈的方式。

  3. 步骤 03

    用户完成流程

    Didit 负责托管摄像头、灯光提示、移动设备切换和辅助功能。当用户在流程中时,我们实时评估 200 多个欺诈信号,并根据权威数据源验证每个字段。结果在两秒内得出。

  4. 步骤 04

    您收到结果

    实时签名 Webhook 可在用户获得批准、拒绝或发送审核时立即同步您的数据库。按需轮询 API。或者打开控制台检查每个会话、每个信号,并以您的方式管理案例。

专为年龄门控而构建 · 定价如基础设施

六项功能。每位用户混合费用$0.115

一个自适应工作流程运行自拍优先的级联,并且只升级临界少数。根据工作流程调整临界范围,叠加各国年龄规则,让 Didit 完成路由。
01 · 仅自拍初审

通过一张被动自拍估算年龄。

一帧,无动作挑战,无需上传文档。入门级 Android 设备上 2 秒内出结果,每次检查 $0.10。符合英国《在线安全法案》和法国 SREN 的最小数据解决方案。
年龄估算模块
02 · 临界范围路由

调整范围。Didit处理其余部分。

为每个工作流程设置临界范围。明确通过和明确失败在自拍阶段完成;临界范围升级到文档回退。在无代码工作流程构建器中编辑截止点,无需重新部署。
工作流编排器
03 · 文档回退

14,000+份文件。220+个国家。

只有临界情况的用户才需要上传文档。护照、国民身份证、驾驶执照、居留许可,支持完整的光学字符识别 (OCR) 和机器可读区 (MRZ) 解析。大约 10% 的典型流量会触及此步骤。
身份验证模块
04 · 各国年龄规则

在美国21岁饮酒。在欧盟18岁。在韩国19岁。

根据国家设置最低年龄,并在需要时进行州级覆盖(密西西比州21岁,阿拉巴马州19岁,美国默认18岁)。文件回退会自动根据签发国的规定验证出生日期。
国家参考
05 · 监管就绪

英国Ofcom,法国CNIL,欧盟DSA,德国JuSchG。

专为高效的年龄验证而构建。西班牙的Tesoro和SEPBLAC已正式证明Didit的远程流程比现场验证更安全——目前是欧盟成员国政府唯一此类证明。审计包包括iBeta Level 1 PAD、ISO/IEC 27001、SOC 2 Type 1。
合规文件
06 · 公开定价

$0.10 selfie. $0.15 document. Only when needed.

年龄估算费用为$0.10,覆盖了通过自拍验证的约90%的用户。文件检查费用为$0.15,仅针对约10%的临界少数用户。综合成本接近每位用户$0.115。每月免费提供500次验证,永久有效。
查看定价
集成

一个工作流程。一个会话。一个 Webhook。

针对自适应工作流程开启一个会话。Didit 运行级联。签名结果将发送到您的回调。
POST /v3/session/自适应
$ 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_age_gate_uk_fr",
    "vendor_data": "user-42",
    "callback": "https://app/age-gate/cb"
  }'
201已创建{ "session_url": "verify.didit.me/..." }
工作流链在临界情况下执行AGE_ESTIMATION,然后执行ID_VERIFICATION文档 →
GET /v3/session/{sessionId}/decision/裁决
$ curl https://verification.didit.me/v3/session/<id>/decision/ \
  -H "x-api-key: $DIDIT_API_KEY"

# Returns the path taken
{
  "status": "Approved",
  "liveness": { "age_estimation": 27.3 }
}
200OK状态 已批准 · 审核中 · 已拒绝 · 未完成
签名 webhook 上的形状相同。首先验证 X-Signature-V2文档 →
代理就绪集成

通过一个提示实现年龄验证。

粘贴到 Claude Code、Cursor、Codex、Devin、Aider 或 Replit Agent 中。填写您的技术栈。代理会构建自适应工作流,打开会话,连接 webhook,并在五分钟内完成部署。
didit-integration-prompt.md
You are integrating Didit's Age Verification recipe into <my_stack>. Selfie-first age estimation with an adaptive document fallback for the borderline tail. One Didit workflow. Two real endpoints.

  1. Verify age on a selfie. ONE call to the Sessions API runs Age Estimation + Passive Liveness on the same passive frame.
  2. Fall back to a document check ONLY when the estimate sits in the borderline band you define. Same Sessions API workflow handles the fallback automatically.

Bundle pricing (public):
  - Age Estimation: $0.10 per check (Sessions API or standalone)
  - ID Verification fallback: $0.15 per check, only when triggered
  - Typical blended cost lands near $0.115 per user (~90% finish on the selfie, ~10% touch the document fallback)
  - 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 and your webhook secret.
  - A workflow_id from the Workflow Builder. The workflow must contain the AGE_ESTIMATION feature, and (recommended) the ID_VERIFICATION feature with adaptive_id_verification enabled so the borderline tail routes through automatically.

STEP 1 — Build the adaptive workflow once

  POST https://verification.didit.me/v3/workflows/
  Headers:
    x-api-key: <your api key>
    Content-Type: application/json
  Body:
    {
      "workflow_label": "age_gate_uk_fr",
      "features": [
        { "feature": "AGE_ESTIMATION" },
        { "feature": "ID_VERIFICATION" }
      ],
      "age_estimation_decline_threshold": 18,
      "face_liveness_score_decline_threshold": 30,
      "adaptive_id_verification": true
    }

  Notes:
    - "AGE_ESTIMATION" and "ID_VERIFICATION" are exact, case-sensitive feature names.
    - age_estimation_decline_threshold defaults to 18; set 21 for US alcohol, 19 for South Korea, etc.
    - adaptive_id_verification = true tells Didit to invoke the document fallback automatically when the estimate sits inside the borderline band.

STEP 2 — Open an age-verification session per user

  POST https://verification.didit.me/v3/session/
  Headers:
    x-api-key: <your api key>
    Content-Type: application/json
  Body:
    {
      "workflow_id": "<the workflow_id from step 1>",
      "vendor_data": "<your internal user id>",
      "callback": "https://<your-app>/age-gate/callback",
      "metadata": {
        "purpose": "age_gate",
        "surface": "<the page or feature being gated>"
      }
    }

  Response: 201 Created with the hosted session_url. Redirect the user to it. The hosted flow opens the front camera, captures one passive frame, runs Age Estimation + Passive Liveness in sub-2-seconds, and either returns a verdict or routes the user into the document fallback automatically.

STEP 3 — Read the signed webhook on session completion

  Didit POSTs to your callback. Session statuses are exact Title Case With Spaces.

  Body (excerpted for an Age Estimation only finish):
    {
      "session_id": "<uuid>",
      "vendor_data": "<your user id>",
      "status": "Approved",
      "liveness": {
        "status": "Approved",
        "method": "PASSIVE",
        "score": 92,
        "age_estimation": 27.3,
        "warnings": []
      }
    }

  Body (excerpted when the document fallback fired):
    {
      "session_id": "<uuid>",
      "vendor_data": "<your user id>",
      "status": "Approved",
      "liveness": { "status": "Approved", "age_estimation": 17.9, "warnings": [{ "code": "AGE_NOT_DETECTED" }] },
      "id_verification": {
        "status": "Approved",
        "date_of_birth": "1998-03-21",
        "age": 27,
        "document_type": "Passport",
        "issuing_state": "GBR"
      }
    }

  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.

  Warning catalog:
    - AGE_BELOW_MINIMUM        estimated or computed age below the threshold
    - AGE_NOT_DETECTED         unable to estimate age (lighting / quality)
    - LOW_LIVENESS_SCORE       passive-liveness score below threshold
    - NO_FACE_DETECTED         no face in the capture
    - LIVENESS_FACE_ATTACK     presentation attack suspected
    - POSSIBLE_DUPLICATED_FACE same face previously verified

STEP 4 — Branch your surface on the final verdict

  Approved      → grant access to the gated surface.
  Declined      → render the regulator-required age-gate notice.
  In Review     → hold; an analyst case is open in the Business Console.
  Not Finished  → user abandoned; safe to re-prompt.

STEP 5 — Alternate path (server-to-server, when you already have the selfie)

  POST https://verification.didit.me/v3/age-estimation/
  Headers:
    x-api-key: <your api key>
  Body (multipart/form-data):
    user_image                              <single passive selfie>
    age_estimation_decline_threshold        18    (optional, integer)
    face_liveness_score_decline_threshold   30    (optional, integer)

  Branch on the borderline band yourself, then optionally call:

  POST https://verification.didit.me/v3/id-verification/
  Body (multipart/form-data):
    front_image  <required>
    back_image   <optional>
    vendor_data  <optional, your user id>

  This path is useful for native onboarding apps that capture the selfie locally.

CONSTRAINTS
  - Base URL for /v3/* endpoints is verification.didit.me (NOT apx.didit.me).
  - Feature enum is UPPERCASE: AGE_ESTIMATION, ID_VERIFICATION, LIVENESS, FACE_MATCH, AML, IP_ANALYSIS.
  - 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.
  - Reference image URLs are signed and expire in 60 minutes. Store only the verdict + score; never the biometric media unless retention is explicitly enabled for fraud defence.
  - 200+ fraud signals are evaluated on every session at no extra cost — surface the score via the session decision payload, do not re-query.

WEBHOOK EVENT NAMES
  - Sessions: status changes flow through the standard session webhook.
  - Verify X-Signature-V2 on every payload.

Read the docs:
  - https://docs.didit.me/core-technology/age-estimation/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.
需要更多上下文?请参阅完整的模块文档。docs.didit.me →
合规设计

一键开辟新国家市场。 我们承担繁重的工作。

我们设立当地子公司,获得许可证,进行渗透测试,取得认证,并与每一项新法规保持一致。要在新国家/地区发布验证,只需切换一个开关。220多个国家/地区已上线,每个季度都经过审计和渗透测试——唯一一家被欧盟成员国政府正式认定比面对面验证更安全的身份提供商。
阅读安全与合规档案
欧盟金融沙盒
Tesoro · SEPBLAC · BdE
ISO/IEC 27001
信息安全 · 2026
SOC 2 · Type I
AICPA · 2026
iBeta Level 1 PAD
NIST / NIAP · 2026
GDPR
EU 2016/679
DORA
EU 2022/2554
MiCA
EU 2023/1114
AMLD6 · eIDAS 2.0
按欧盟标准设计

证明数字

证明数字
  • $0.000
    每位用户的综合成本 — 自拍加上 10% 的边缘文档回退。
  • ~90%
    用户仅通过被动自拍完成 — 无需上传证件。
  • <0s
    入门级 Android 设备上每次会话返回的年龄段。
  • 0
    每月免费验证,永久有效。
三个层级,一个价目表

免费开始。按使用量付费。扩展到企业版。

每月永久免费500次验证。生产环境按使用量付费。企业版提供定制合同、数据驻留和SLA(服务水平协议)。
免费

免费

每月$0。无需信用卡。

  • 免费KYC捆绑包(身份验证 + 被动活体检测 + 人脸匹配 + 设备和IP分析)——每月500次,永久有效
  • 黑名单用户
  • 重复检测
  • 每次会话200+欺诈信号
  • Didit网络中可重复使用的KYC
  • 案例管理平台
  • 工作流程构建器
  • 公开文档、沙盒、SDK、MCP(模型上下文协议)服务器
  • 社区支持
最受欢迎
按使用量付费

按使用量付费

只为您使用的付费。25+ 模块。公开的按模块定价,无每月最低费用。

  • 全套 KYC,价格 $0.33(身份证明 + 生物识别 + IP / 设备)
  • 10,000+ AML 数据集 — 制裁、PEP、负面媒体
  • 1,000+ 政府数据源用于数据库验证
  • 交易监控,每笔交易 $0.02
  • 实时 KYB,每个企业 $2.00
  • 钱包筛选,每次检查 $0.15
  • 白标验证流程 — 您的品牌,我们的基础设施
企业版

企业版

定制 MSA 和 SLA。适用于大批量和受监管的项目。

  • 年度合同
  • 定制 MSA、DPA 和 SLA
  • 专用 Slack 和 WhatsApp 频道
  • 按需人工审核员
  • 经销商和白标条款
  • 独家功能和合作伙伴集成
  • 指定 CSM、安全审查、合规支持

免费开始 → 仅在运行检查时付费 → 解锁企业版以获取定制合同、SLA或数据驻留。

FAQ

常见问题

身份和欺诈基础设施。

一个用于 KYC、KYB、交易监控和钱包筛选的 API。5 分钟内即可集成。

让 AI 总结此页面