跳转到主要内容
当企业验证会话开始时,Didit 会查询官方公司登记机构,以获取并核验公司信息。这一自动查询为整个企业验证流程奠定基础。

公司登记查询

Didit 连接支持的国家/地区的公司登记机构,获取官方数据。在托管流程中,用户选择注册国家/地区,并填写企业名称、注册号,或两者都填。两者至少需填其一。公司登记机构有要求时,注册号会做标准化处理(例如,英国公司编号会补零至八位)。同时提供两个标识符时,公司登记查询会将两者结合使用。

使用 expected_details 预填搜索

如果您已经知道目标企业,可在创建会话时传入 expected_details(company_name、registry_country、registration_number)。托管流程会预先选择并锁定国家/地区(对于 US-CA 这类按州划分的注册局,还会锁定州),预填对应的搜索字段,并自动执行该预设搜索,用户会直接看到该企业的查询结果。两个字段均可编辑,以便用户更正错误的预设信息。预填仅为辅助:若用户选择的企业与预设不同,不会产生警告。

搜索类型

公司登记搜索支持两种模式:

搜索流程

公司登记查询采用异步工作流:

搜索

Didit 使用所选国家/地区及所提供的标识符(企业名称、注册号,或两者结合)查询公司登记机构。响应中的 searched_by 字段会说明结果的匹配方式(name、registration_number 或 registration_number_and_name)。对于按注册号返回的结果,托管界面提供一键“改按企业名称搜索”的切换选项。搜索异步执行。

轮询结果

轮询搜索状态,直到结果处理完成。大型公司登记机构可能需要数秒才能返回结果。

选择企业

查看返回的企业列表,并选择正确的匹配项。Didit 会将所选企业关联到企业验证(KYB),并填充所有可用数据。

确认并继续

确认或更正企业信息,然后继续进入下一个已配置的步骤。 部分公司登记机构会在股权报告准备就绪前返回企业档案;该报告将在后台继续处理,同时申请人可以完成其他独立步骤,例如上传证件。 公司登记预填不会阻塞关键人员表单:申请人可以手动录入人员信息,公司登记机构数据中可用的人员信息会在报告返回时于提交前显示。 依赖报告的自定义决策仍会等待报告返回,而不会猜测结果。 报告返回时,您的更正内容会被保留。 待处理的报告不计为已完成的公司登记检查,也不构成自动通过。公司登记计费以实际交付的等级为准。

手动提交

如果公司登记机构中找不到该企业,请手动提交企业数据。会话将使用所提供的数据继续进行,并且 is_from_registry 会被设为 false。

返回的数据

企业状态

状态非“活跃”的企业可能会根据您的工作流配置被自动标记或拒绝。

数据来源指示器

每条公司记录都包含 is_from_registry 标志:
  • true:数据从官方公司登记获取
  • false:因公司未在公司登记中找到,数据由人工提交
fetch_status 字段用于跟踪登记查询已完成、已失败还是仍在进行中。

数据层级与定价

在托管流程中,选择公司即会产生登记查询费用,即使申请人在确认信息或完成验证之前离开。 如果选择公司时报告已就绪,则按交付的层级立即收费。 如果股权信息仍在处理中,则在选择公司时按 Lite 收费;当交付更高层级时,仅收取两者的差价。 如果股权信息不可用,则不收取股权信息附加费。 总费用按选择时报出的价格计算,且绝不会超过所请求层级的报价。 选择公司及之后的任何股权信息调整合计计为一次登记查询;查看已购买的报告或确认其中的信息不会再次收费。 现有固定费率合同在选择公司时计入一次登记查询,后续交付股权信息不再额外计入一个合同单位。 托管工作流中的查询不另收查询费。 单独调用 API 进行的查询,每次成功的请求可能产生 $0.50 费用;请参阅查询计费。完整的各国家/地区价格表请参阅 KYB 登记定价。 托管工作流会按国家/地区从 Workflows → KYB Registry Check → Countries 中选择层级。如果公司登记没有某公司的股权记录,则股东或实际受益人请求会按该国公司登记可提供的最高层级交付和计费,通常为 Lite。 未找到且手动录入的公司(is_from_registry: false)按固定的 $0.75 计费:即使未返回登记记录,查询仍已执行。
Lite 仅返回公司概况,不包含股东、实际受益人或股权结构:
股东层级会增加 ownership_structure 和股东条目,以及董事/高管信息。实际受益人层级还会解析出带有持股比例的实际受益人。请参阅 股权结构和 高管与董事。

登记数据与用户提供数据

Didit 将公司登记返回的数据与用户确认的数据分别保存为独立的审计记录,并提供合并后的标准视图供后续检查使用。每家公司都包含三个相关数据块: confirmed_by_user_at 时间戳记录终端用户确认或编辑登记数据的时间。在该时间戳为空且 is_editable 为 true 期间,终端用户可以继续在托管流程中修改字段。 对于手动录入的公司(is_from_registry: false),user_provided_data 是唯一来源,用户提交后 is_editable 变为 false。 分析人员可以在 Business Console 的会话审核中并排查看两种来源,比对公司登记的记录与用户确认的内容。

可配置的登记表单字段

您可以控制托管验证流程在登记确认步骤中要求用户填写哪些企业数据字段。请在 Business Console 中进行配置:打开工作流编辑器,选择 KYB Registry check 节点,然后切换到 字段 选项卡。 每个字段都有以下三种状态之一: 以下三个字段始终显示且始终为必填,因为它们用于标识企业,无法配置:company_name、country_code 和 region(州/地区,适用于按地区划分的登记库)。 共有 16 个可配置字段: registration_number, incorporation_date, legal_address, vat_number, alternative_names, tax_number, company_type, legal_entity_identifier, location_of_registration, nature_of_business, registered_capital_amount, registered_capital_currency, website, email, phone, control_scheme 默认情况下(对所有现有工作流也是如此),只有 incorporation_date 为 必填,其余可配置字段均为 可选,因此表单的行为与该设置出现之前完全一致。 必填性由服务端强制执行:若提交登记表单时某个必填字段为空,将返回 400 及各字段的错误信息。托管界面只会渲染已启用的字段。在工作流 API 中,该设置位于 KYB Registry 节点的 kyb_registry_fields_config 对象中,其结构请参阅 功能配置。
当 vat_number 被设为 必填 时,仅对在适用欧盟增值税的国家/地区注册成立的企业强制执行(见下文)。对于其他国家/地区的企业,即使该字段设为必填,也按可选处理,因为无需收集欧盟增值税号。其 tax_number 在提供时仍会进行验证。

VAT 号码与税号验证

提交注册核验步骤后,Didit 会将公司的 vat_number 与其所在国家/地区的官方来源进行核对。没有 vat_number 的公司,则改为验证其 tax_number。 号码可以带或不带国家前缀,也可以包含任意分隔符。对于德国公司而言,DE 123 456 789、DE123456789 和 123456789 是等效的。 官方登记册。 在以下国家/地区,号码会实时与政府或官方商业登记机构核对,登记机构同时返回注册名称(大多数还会返回注册地址): 若将法国 SIREN 或 SIRET、荷兰 RSIN,或完整的匈牙利税号作为 VAT 号码提交,系统会先将其转换为对应的 VAT 号码,然后再进行核对。 希腊的 VAT 号码会自动以 EL 前缀进行核对。 校验位规则。 在以下国家/地区,无法查询任何登记机构,因此号码将依据该国官方格式和校验位规则进行核对:阿尔巴尼亚、安道尔、阿根廷、澳大利亚、阿塞拜疆、白俄罗斯、加拿大、智利、中国、多米尼加共和国、埃及、萨尔瓦多、加纳、危地马拉、冰岛、印度、印度尼西亚、以色列、日本、肯尼亚、列支敦士登、墨西哥、摩尔多瓦、摩纳哥、黑山、摩洛哥、莫桑比克、新西兰、北马其顿、秘鲁、俄罗斯、圣马力诺、塞尔维亚、新加坡、南非、韩国、台湾、泰国、突尼斯、土耳其、乌克兰、英国、美国、乌拉圭、委内瑞拉和越南。 当 tax_number 是没有可核对 VAT 号码的国家税务识别号时(例如德国 Steuernummer),欧盟境内也适用这些规则。 tax_number 仅声明一个税务识别号,而非增值税登记。因此,当 VIES 未列出该号码时,结果会回落到这些规则,而不是 invalid。 来自其他任何国家/地区的公司会获得 vat_validation_status: "not_applicable"。 沙盒会话同样如此,因为沙盒会话从不联系税务登记机构。 结果会保存在公司记录上,并在 KYB 决策 payload 中返回: vat_validation_source 的取值为 eu_vies、pl_vat_white_list、no_brreg、ch_uid_register、br_receita_federal、co_rues、cr_hacienda、ec_sri、py_dnit 或 format_rules 之一。 一旦号码的状态为 valid、invalid、format_valid 或 invalid_format,该结果会在整个会话期间保留,除非号码发生变化,否则不会再次查询登记机构。 名称交叉核对。 当号码状态为 valid 且来源方披露了注册名称时,Didit 会将该名称与提交的公司名称进行模糊比对。 若存在有意义的差异,系统会触发 KYB_COMPANY_VAT_NAME_MISMATCH 警告,但不会更改会话状态。这只是供审核员参考的软性信号。 其 additional_data 包含 registry_name、registry_source 和 submitted_name;当来源为 VIES 时,还包含 vies_name。 部分欧盟成员国不披露名称或地址,相应字段将为空,并且不会进行比对。 可配置操作。 KYB 注册核验节点上的两项设置决定了核验未通过时对会话的影响(取值为 REVIEW、DECLINE、NO_ACTION): 状态为 invalid_format 的 tax_number 会在 payload 中返回,但不会触发任何操作,因为自由文本的税号字段通常包含其他公司标识符。 每种结果还会在注册核验中触发相应的警告(KYB_COMPANY_VAT_INVALID、KYB_COMPANY_VAT_COULD_NOT_VALIDATE)。参见 企业验证警告。

数据交叉比对

Didit 会自动将用户提供的数据/标准数据与登记机构返回的数据进行比对,并与从上传证件中提取的 OCR 数据进行比对:
  • 公司名称:采用模糊匹配,以兼容缩写和格式差异
  • 注册号:进行精确匹配验证
  • 国家:检查提供的国家与登记机构记录的国家是否一致
  • 地址:进行地理编码和标准化,以便比较
任何不一致之处都会在会话中标记为警告,并在控制台中对分析师可见。

财务摘要

在可获取的情况下,Didit 会从登记机构检索摘要财务数据:
  • 营业收入或营业额
  • 员工人数
  • SIC/NACE 行业代码
  • 申报日期和合规状态

其他登记字段

根据司法辖区的覆盖范围,登记机构的响应还可能包含以下内容:
  • alternative_names - 商号、DBA 名称、曾用法定名称
  • legal_entity_identifier(LEI)- 适用于金融机构和上市实体
  • website、email、phone - 登记机构存档的联系信息
  • nature_of_business - 简短的业务描述(使用登记机构的语言)
  • registered_capital - 核定资本或已发行资本,为 {amount, currency} 对象
所有字段都会写入 KYB 决策的 business 块中。

置信度与验证状态

每条登记响应都包含 verification_status: 结合 is_from_registry 使用,可驱动您自己的后续逻辑:

交叉比对输出

每项交叉比对按字段逐项运行,并返回以下结果之一:
  • MATCH:提供的数据与登记机构一致。
  • MISMATCH:存在实质性差异,将标记为警告。
  • NO_DATA:一方数据为空,无法进行比较。
不一致情况可在控制台的会话审查中按字段查看。

结果的决定因素

公司状态、注册成立国家、AML 结果以及与申报数据的匹配情况,会以警告标签的形式体现在登记检查和 AML 筛查中,作为决策的依据。您的工作流决定每个警告是通过、进入人工审核还是拒绝。相关信号以及控制这些信号的工作流键,请参阅风险评估。

支持的国家/地区

各国家/地区的覆盖范围有所不同,各地区的层级细分请参阅支持的国家/地区。

后续步骤

股权结构

UBO 识别与股权链。

响应结构

每个字段在 payload 中的位置。

支持的国家/地区

按地区查看覆盖范围。
最后修改于 2026年11月7日