跳到主要内容
Didit 融资 750 万美元,打造身份与欺诈基础设施
Didit
返回博客
博客 · 2026年5月21日

KYB会话生命周期:状态与网络钩子 (ZH)

端到端追踪KYB验证——会话状态、各功能状态、业务实体状态,以及保持记录同步的网络钩子——每家公司仅需2.00美元。.

作者:Didit更新于
kyb-session-lifecycle-webhooks.png

KYB验证并非简单的“是/否”答案,它是一个包含多个动态环节的流程。注册查询可能即时通过,而文档验证可能需要重新提交,实体反洗钱(AML)则可能需要分析师审查。为了清晰地集成KYB,您需要确切地了解验证的每个部分所处的状态,并且您的系统需要在任何状态改变时立即更新。这就是会话生命周期和网络钩子(webhook)的作用。

Didit的商业验证API公开了完整的状态机:整体会话状态、每个功能的状态、一旦进入管理后的业务实体的独立状态集,以及在每次变更时触发的网络钩子。完整的公司验证费用为2.00美元,本指南将详细介绍整个生命周期——包括所有状态、所有网络钩子以及将它们连接起来的管理API。

关键要点

  • 三层状态。KYB验证包括会话状态、各功能状态,以及(一旦被管理)业务实体状态。
  • 八种会话状态。NOT_STARTED(未开始)、IN_PROGRESS(进行中)、APPROVED(已批准)、DECLINED(已拒绝)、IN_REVIEW(审核中)、RESUBMITTED(已重新提交)、ABANDONED(已放弃)、EXPIRED(已过期)。
  • 每个KYB功能的六种功能状态NOT_FINISHED(未完成)、APPROVED(已批准)、DECLINED(已拒绝)、IN_REVIEW(审核中)、RESUB_REQUESTED(请求重新提交)、AWAITING_USER(等待用户)。
  • 受管理下的三种实体状态ACTIVE(活跃)、FLAGGED(已标记)、BLOCKED(已阻止)。
  • 所有变动均通过网络钩子通知。会话的status.updateddata.updated(带有session_kind: business);受管理实体的business.status.updatedbusiness.data.updated
  • 完整的管理APIPOST /v3/businesses/create/GET /v3/businesses/GET /v3/businesses/{vendor_data}/PATCH .../update-status/

KYB生命周期涵盖的内容

KYB验证会产生三层状态,每一层都回答一个不同的问题:

  • 会话回答“整体验证进展如何?”
  • 每个功能回答“注册局/公司反洗钱/文件/关键人物检查进展如何?”
  • 业务实体回答“该公司目前在我们系统中的运营状况如何?”

您需要读取这三层状态,并通过网络钩子而不是轮询来保持它们同步。验证从会话开始,解决其功能,得出整体结果,然后——一旦您开始管理公司——携带一个您可以根据情况变化来控制的业务实体状态。

重要性

如果没有细粒度的状态,KYB集成就会退化为猜测:一个单一的“待处理”标志无法告诉您是哪个检查导致了延迟,也无法说明采取什么行动可以解除阻塞。通过按功能划分的状态,您可以精确地进行路由——要求申请人重新提交文件,将实体反洗钱匹配排队等待分析师审查,提示UBO完成其KYC——而不是使整个验证失败。

网络钩子之所以重要,是因为KYB是异步的。注册数据、文档OCR和筛选结果会在不同时间到达,人工审查所需时间更长。轮询变更既浪费资源又缓慢;网络钩子会在变更发生的那一刻推送信息,因此您的记录无需通过定时任务(cron job)频繁访问API即可反映真实情况。

技术细节

KYB会话通过统一的/v3/ API创建,并报告其生命周期状态。

curl -X POST https://verification.didit.me/v3/session/ \
  -H "x-api-key: $DIDIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "workflow_id": "your_kyb_workflow_id",
    "vendor_data": "merchant_6601",
    "callback": "https://yourapp.com/kyb/callback"
  }'

status.updated 网络钩子包含会话状态和各功能状态:

{
  "event": "status.updated",
  "session_kind": "business",
  "session_id": "kyb_3a90f1c2",
  "vendor_data": "merchant_6601",
  "status": "IN_REVIEW",
  "features": {
    "kyb_registry": "APPROVED",
    "kyb_company_aml": "IN_REVIEW",
    "kyb_documents": "RESUB_REQUESTED",
    "kyb_key_people": "APPROVED"
  }
}

会话状态。 NOT_STARTED, IN_PROGRESS, APPROVED, DECLINED, IN_REVIEW, RESUBMITTED, ABANDONED, EXPIRED

功能状态。 kyb_registrykyb_company_amlkyb_documentskyb_key_people 各自报告以下状态之一:NOT_FINISHEDAPPROVEDDECLINEDIN_REVIEWRESUB_REQUESTEDAWAITING_USER

网络钩子。 对于会话:status.updated(生命周期变更)和data.updated(丰富数据),两者都带有session_kind: "business"。对于受管理的实体:business.status.updatedbusiness.data.updated

价格。 每家公司验证费用为2.00美元。

管理业务实体

一旦公司通过验证,它就成为您通过业务API进行管理的实体:

  • POST /v3/businesses/create/ — 注册一个业务实体。
  • GET /v3/businesses/ — 列出受管理的业务。
  • GET /v3/businesses/{vendor_data}/ — 通过其vendor_data引用获取某个业务。
  • PATCH .../update-status/ — 更改实体状态。

该实体拥有独立于验证会话的状态:ACTIVE(良好状态)、FLAGGED(因风险信号正在审查中)或BLOCKED(已暂停)。这是操作层面——一家公司可能完成了APPROVED的会话,但随后因监控发现问题而被FLAGGED。实体的变更会触发business.status.updatedbusiness.data.updated,以便下游系统保持最新。

端到端的生命周期

典型的验证过程按顺序逐层进行。会话从NOT_STARTED开始,随着功能运行进入IN_PROGRESS,每个功能都会解析——注册局APPROVED,文档可能需要RESUB_REQUESTED直到上传干净的文件,公司反洗钱(AML)IN_REVIEW直到分析师清除匹配项,关键人物APPROVED。当所有功能都稳定后,会话最终变为APPROVEDDECLINEDIN_REVIEW。从那时起,公司作为ACTIVE实体进入管理,其状态随后可能根据持续的监督要求变为FLAGGEDBLOCKED——每次状态转换都会通过网络钩子推送到您。

用例

  • 市场平台精确路由卖家:重新提交文件、完成UBO的KYC,或处理实体反洗钱匹配——而无需导致整个入驻失败。
  • 金融科技和银行平台通过网络钩子而非轮询保持公司账户记录同步,并根据风险变化标记或阻止实体。
  • 贷款提供商跟踪每个承保检查的状态,并通过管理API更新借款人状况。
  • 加密B2B平台维护从验证到持续状态的每个交易对手实体的可审计生命周期。

如何与Didit集成

  1. 构建工作流程。在业务控制台(Business Console)中,创建包含所需功能的KYB工作流程。
  2. 创建会话。使用您的KYB workflow_idvendor_data 引用POST /v3/session/
  3. 订阅网络钩子。处理会话的status.updateddata.updatedsession_kind: business),以及受管理实体的business.status.updated / business.data.updated
  4. 管理实体。使用POST /v3/businesses/create/GET /v3/businesses/GET /v3/businesses/{vendor_data}/PATCH .../update-status/来保持每家公司处于ACTIVEFLAGGEDBLOCKED状态。

由于所有这些都基于统一的/v3/ API,同样的生命周期模型也适用于KYC、监控和KYB——为整个身份和欺诈平台提供了一致的状态机。

常见问题

KYB会话状态有哪些?

NOT_STARTED(未开始)、IN_PROGRESS(进行中)、APPROVED(已批准)、DECLINED(已拒绝)、IN_REVIEW(审核中)、RESUBMITTED(已重新提交)、ABANDONED(已放弃)和EXPIRED(已过期)。

各个功能报告哪些状态?

kyb_registrykyb_company_amlkyb_documentskyb_key_people各自报告NOT_FINISHED(未完成)、APPROVED(已批准)、DECLINED(已拒绝)、IN_REVIEW(审核中)、RESUB_REQUESTED(请求重新提交)或AWAITING_USER(等待用户)状态。

我应该订阅哪些网络钩子?

对于会话,是status.updateddata.updated(带有session_kind: business)。对于受管理的业务实体,是business.status.updatedbusiness.data.updated

验证后如何更改公司的状态?

使用管理API——PATCH .../update-status/——将实体状态设置为ACTIVEFLAGGEDBLOCKED

KYB验证的费用是多少?

每家公司2.00美元,用于完整的验证——包括注册、UBO、高级职员和实体反洗钱(AML)。

准备好开始了吗?

阅读文档中的业务验证概述,了解它如何与平台其他部分结合在业务验证产品页面,并在定价页面查看透明的按调用计费价格。准备好后,免费开始——每月500次免费KYC检查,以及每家公司2.00美元的业务验证。

身份与欺诈基础设施。

一个 API 即可实现 KYC、KYB、交易监控和钱包筛选。5 分钟即可集成。

让 AI 总结此页面
KYB会话生命周期:状态与网络钩子 | Didit.