跳转到主要内容
身份证件验证(ID Verification)是一项包含三种方式的功能。您可以选择某个国家/地区可以使用哪些方式;终端用户会看到适用于其所选国家/地区的方式,会话则会记录实际生成结果的方式。 拍摄证件方式保持不变。您之前通过 documents_allowed 配置的所有内容(支持的类型、子类型、拍摄规则、阈值、警告)均一如既往地正常工作,未指定任何方式的工作流仍仅使用拍摄证件方式。

各种方式的工作原理

拍摄证件

本节其余部分所介绍的内容:用户拍摄证件,Didit 读取证件、检查其真实性并返回提取的字段。适用于 Didit 支持的每个国家/地区,费用为每次核验 $0.15。请从身份证件验证概述开始了解。

无证件核验

用户输入其国民身份证号和少量个人信息,Didit 对照该国家/地区的权威数据源进行核验。整个过程无需拍摄证件照片。 在大多数国家/地区,该数据源是政府登记记录,但并非全部如此:在加拿大、法国、印度尼西亚、荷兰、挪威、新加坡、英国和美国,该数据源是征信机构记录、金融服务记录、公用事业记录或居民登记记录档案。由于数据来源以及适用的同意机制各不相同,具体数据源已在下表以及无证件核验中按国家/地区分别列出,绝无泛化。 如果数据源返回头像照片(目前包括南非、尼日利亚、阿根廷和巴拿马,四者均为政府登记记录),系统还会要求用户拍摄一张自拍照。系统会对该自拍照执行被动活体检测,并将其与登记记录中的头像进行人脸比对,所有这些均在核验内部完成,且包含在核验价格中。如果数据源仅返回数据,则没有可供人脸比对的对象,因此不会采集自拍照;如果您需要这些功能,请将活体检测和人脸比对作为独立的工作流步骤运行。 各国家/地区完整的请求字段、格式规则和同意机制,请参阅无证件核验。

钱包

用户使用其已有的数字身份登录,例如国民电子身份(eID)或银行身份。 钱包对用户进行身份认证,然后与 Didit 共享经过签名的身份属性。 根据所用钱包的不同,用户可能会输入个人身份识别码或电话号码;钱包核验无需证件照片。 登录体验取决于钱包本身:应用跳转、二维码或在用户手机上确认比对码。 Smart-ID 和 Mobile-ID 使用比对码。 各钱包支持的属性、生产环境可用性及失败处理方式,请参阅数字 ID 钱包。

保证等级

每个身份证件验证结果都带有一个源自生成该结果的方式的保证等级。该等级是对实际证明内容的如实描述,而非优劣排名:
保证等级是面向管理员的标识。它们会显示在会话 payload、控制台以及导出数据中。终端用户绝不会看到保证等级、价格或所查询数据源的名称。

按国家/地区配置核验方式

核验方式位于身份证件验证(OCR)功能配置的 methods 键下,以 ISO 3166-1 alpha-3 国家/地区代码作为键名。若省略该键、省略某个国家/地区,或省略国家/地区内的某种方式,则该国家/地区仅使用拍摄证件。
上述两个国家/地区均已在已发布的目录中标记为可进行无证件核验的 available 状态。 该示例未启用钱包,因此不依赖于您的环境中是否已启用钱包。 若工作流启用了标记为即将推出的钱包,该工作流将被拒绝,本次保存中的其他配置也将一并被拒绝。 目录将某个国家/地区的钱包标记为 available 后,该国家/地区的钱包配置块如下所示:
发送配置前请检查目录。前提条件:该钱包在该国家/地区显示为可用,具体列于数字 ID 钱包。 API 在保存时强制执行两条规则:
  • 可用性由服务端控制。如果能力目录未将某种方式或某个钱包标记为针对该国家/地区 available,则会被拒绝。请先查阅目录:可以通过控制台的国家选项卡,或使用 didit_workflow_get_id_verification_methods_catalog MCP 工具。
  • 钱包是准入名单,绝非优先级排序。providers 指定了某个国家/地区可以提供哪些钱包。您发送的顺序没有任何意义,会被标准化处理而不保留;由终端用户自行选择。
完整的逐字段参考(包括默认值和验证),请参阅工作流功能配置。

回退: 非证件方式未成功时的处理机制

有四个开关用于决定后续操作。每个开关均可设为 fallback_to_document(引导用户进入证件采集)或 decline(以身份证件验证已拒绝的状态结束会话);wallet.on_failure 还支持 retry(下文详述)。这四个开关的默认值均为 fallback_to_document。 对于仅支持钱包(已关闭证件采集)的国家/地区,wallet.on_failure 还接受第三个值 retry: retry 仅适用于钱包:查验开关仅接受 fallback_to_document 或 decline,因为返回“无匹配”的登记数据库没有可重试的内容。 该值不能与 document.fallback_only 同时配置,因为后者需要在失败后流转至证件采集。 如果钱包已成功登录并返回数据,但该数据未能通过工作流的检查(如年龄、姓名比对等),这仍属于已核验的登录:此时由工作流的规则进行决策,wallet.on_failure 并不适用。 若登录所使用的 token 真实有效但不可接受(保障级别错误、签名无效、缺失必要声明),则计为失败,并遵循 wallet.on_failure 的逻辑。 id_lookup.max_attempts(1 到 5,默认值为 1)表示在开关触发前,用户可获得的已响应查验次数。未能通过客户端格式校验的号码绝不会发送至登记数据库,因此不会消耗尝试次数,系统只会提示用户进行更正。 钱包或查验仅在该国家/地区已启用证件采集且至少接受一种证件类型时,才能回退至证件采集。 若证件采集处于关闭状态,或该国家/地区不接受任何证件类型,即使开关设置为 fallback_to_document,失败的登录或未匹配的查验也会拒绝该会话。唯一的例外是 wallet.on_failure: retry,它绝不会拒绝:用户将停留在钱包步骤。 这是因为此时没有可回退的目标。 哪种方式生成了结果: fallback_from verification_method 始终指示生成已验证结果的具体方式:wallet、id_lookup 或 document。 fallback_from 则用于在这两种结果中解释为何非证件方式未能结束身份证件验证步骤:
  • 已执行回退。 用户被引导至证件采集。随后的证件验证将包含 verification_method: "document",并在 fallback_from 中指明失败的方式,例如 { "method": "wallet", "reason": "cancelled", "action": "fallback_to_document" }。通过钱包完成核验的会话具有 verification_method: "wallet" 和 fallback_from: null。
  • 拒绝。 开关设置为 decline,或者没有可供回退的证件。已被拒绝的身份证件验证在 fallback_from 中包含 "action": "decline"。
method 为 wallet 或 id_lookup,而 reason 是导致其终止的结果(cancelled、timeout、no_match、provider_error 等)。 相同的字段会出现在会话决策以及 status.updated Webhook 中。 未响应的登记数据库(超时或服务中断)属于特例:它本身绝不会直接拒绝用户。 该查验不会计费,也不会消耗尝试次数;系统会提示用户重试。 在该步骤出现三次未响应的查验后,将应用 id_lookup.on_provider_error:若为 decline 则拒绝,若为 fallback_to_document 则引导用户进入证件采集。 当该开关为 fallback_to_document 但该国家/地区没有可供回退的证件时,查验将保持开启状态,用户可以继续尝试;会话不会被拒绝。

仅将证件采集作为回退选项

默认情况下,同时提供钱包或身份查验与证件采集的国家/地区会在首屏并排展示这些选项。 将 document.fallback_only 设为 true 可以在为该国家/地区保持启用证件采集的同时,不在初始界面展示该选项。 用户将从该国家/地区的钱包或身份查验开始。 如果仅配置了单个钱包,用户将直接进入该钱包。 只有钱包登录失败、已取消或超时,或者查验不匹配的用户,才会被引导至证件采集。 哪些结果会导致流转至证件采集仍由上述开关决定,因此其中至少必须有一个开关设为 fallback_to_document。
fallback_only 为选填项,默认值为 false。 除非 document.enabled 为 true 且该国家/地区中至少有一个钱包或身份查验配置了回退至证件采集,否则该设置会被拒绝。 请在 documents_allowed 中启用回退时应提供的证件类型,例如芬兰的护照和身份证。

每种方法的费用

这些是标价:您的套餐折扣同时适用于这两种方法。查询根据其运行的服务采用公开的数据库核验零售费率;一次尝试可能涉及多个服务。尼日利亚会选择 NIN 或 BVN 之一。国家/地区表格显示了完整的已配置尝试价格,每次收到响应的重试都会单独计费。

计费规则

  • 已响应的登记库会为查询计费。完全匹配、部分匹配和未匹配均计费:查询已执行,返回的结果即为服务产品。
  • 未响应的登记库不计费。提供商错误不会产生任何费用。
  • 未通过客户端格式检查的号码绝不计费,且绝不会计入 max_attempts,因为它从未到达登记库。
  • 当用户回退时,证件采集会额外计费。已响应查询后回退到证件的情况会收取两次费用,因为共运行了两次检查。

覆盖范围

证件采集在 Didit 支持的每个国家/地区均可用,费用为每次核验 $0.15,以下不再重复列出。本表仅列出存在非证件方式的国家/地区。未列出的国家/地区,或显示为“暂无计划”的单元格,仅支持证件采集。
支持范围由后端提供的功能目录生成,因此该表格与控制台和 API 验证所依据的来源完全一致。即将推出表示该条目在控制台中可见但尚无法启用;它不是已上线的功能,也不附带承诺的上线日期。

会话中包含的内容

每个身份证件验证结果都会包含生成该结果的方法、其担保等级,以及在运行非证件核验方法时针对该方法的佐证数据块。证件会话的数据结构与以往完全一致,新字段的值为 null。 这三种方法的逐字段类型和示例请参见身份证件验证数据模型,且相同的键也会通过 status.updated Webhook 发送。

相关内容

最后修改于 2026年11月7日