跳转到主要内容

KYB · 企业验证

企业准入流程:企业信息、关联方、文件与表单。

企业客户入驻流程。使用 eventType: "KYB_EVENT"。

流程概览

  1. 公司信息
  2. 关联方采集
  3. 必传文件(主体 + 关联方)
  4. 选传文件
  5. 必填表单(主体 + 关联方)
  6. [AML/制裁筛查]
  7. 决策

KYB 节点路由表

nodeType API 描述
flow_action_corporate_particular workflow.kyb.particular.data 提交企业实体信息
flow_action_corporate_crp_collector workflow.kyb.crp.ind.particular / workflow.kyb.crp.corp.particular / workflow.kyb.crp.submit 提交董事、股东、UBO
flow_action_corporate_required_document workflow.kyb.corp.required.doc + .submit 上传主体及关联方文件
flow_action_corporate_nonrequired_document workflow.kyb.corp.non.required.doc + .submit 可选文件(可跳过)
flow_action_corporate_required_forms workflow.kyb.corp.required.form + .submit 提交主体及关联方表单

企业信息

接口: workflow.kyb.particular.data POST

{
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:corporate_particular:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001",
  "corporateData": "{\"name\":\"Acme Corp Pte Ltd\",\"industry\":\"INFORMATION TECHNOLOGY\",\"entityType\":\"PRIVATE LIMITED COMPANY\",\"countryOfIncorporation\":\"SG\",\"countryOfOperations\":\"SG\",\"email\":\"corp@acme.com\"}"
}
corporateData 是 JSON 编码的字符串,与 KYC 中的 personData 格式一致。

关联方采集

企业信息提交后,采集关联方(Connected Related Parties): 董事、股东、最终受益人 (UBO)。

关联方元数据

nextStep.metadata 指定需填充的角色:

{
  "totalRequiredRoles": 2,
  "requiredRoles": [
    { "roleId": "DIRECTOR", "allowIndividual": true, "allowCorporate": false },
    { "roleId": "SHAREHOLDER", "allowIndividual": true, "allowCorporate": true }
  ]
}
字段 描述
requiredRoles 必须填充的角色
allowIndividual 该角色是否可为个人?
allowCorporate 该角色是否可为企业?

提交个人关联方

接口: workflow.kyb.crp.ind.particular POST

{
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:crp_collector:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001",
  "personData": "{\"name\":\"Jane Director\",\"nationality\":\"SG\",\"date_of_birth\":\"1985-03-20\",\"sex\":\"FEMALE\",\"roles\":[{\"roleId\":\"DIRECTOR\",\"roleName\":\"Director\"}]}"
}

保存返回的 crpPid — 后续此关联方的活体检测、文件和表单提交均需使用。

提交个人关联方活体检测

接口: workflow.kyb.crp.ind.liveness POST

与 KYC 活体检测格式相同,额外传入 crpPid 字段:

{
  "provider": "SELF",
  "status": "PASS",
  "scores": "{\"qualityScore\":1.0,\"brightnessScore\":100,\"brightnessStatus\":\"normal\"}",
  "images": "{\"faceFull\":\"s3://workflow-kyc/.../jane_photo.jpg\"}",
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:crp_collector:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001",
  "crpPid": "acc45a86-f2e9-48c2-8fcd-2bf6563357a1"
}

提交企业关联方

接口: workflow.kyb.crp.corp.particular POST

{
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:crp_collector:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001",
  "corporateData": "{\"name\":\"CRP Holdings Pte Ltd\",\"entityType\":\"ASSOCIATION\",\"countryOfIncorporation\":\"SG\",\"roles\":[{\"roleId\":\"SHAREHOLDER\",\"roleName\":\"Shareholder\"}]}"
}

完成关联方提交

接口: workflow.kyb.crp.submit POST

{
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:crp_collector:exec-abc123def456:..."
}
必须调用 crp.submit 以推进工作流。仅提交各关联方不会触发流程流转。

KYB 必传文件

接口: workflow.kyb.corp.required.doc POST

为主体(crpPid: "")和各关联方(crpPid: "acc45...")上传文件。doc 字段结构与 KYC 相同。完成后调用 workflow.kyb.corp.required.doc.submit。

主体文件:

{
  "doc": "{\"front\":{\"url\":\"s3://workflow-kyc/.../cert.png\",\"filename\":\"cert.png\",\"content_type\":\"image/png\",\"size\":85618}}",
  "isRequired": true,
  "docType": "CERTIFICATE_OF_INCORPORATION",
  "extraData": "{\"issueDate\":\"2001-05-10\",\"expiryDate\":\"2030-10-10\"}",
  "crpPid": "",
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:corporate_document:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001"
}

个人关联方文件(双面):

{
  "doc": "{\"front\":{\"url\":\"s3://...front.png\",\"filename\":\"front.png\",\"content_type\":\"image/png\",\"size\":849092},\"back\":{\"url\":\"s3://...back.png\",\"filename\":\"back.png\",\"content_type\":\"image/png\",\"size\":950146}}",
  "isRequired": true,
  "docType": "NATIONAL_ID",
  "extraData": "{\"documentNumber\":\"12034\"}",
  "crpPid": "acc45a86-f2e9-48c2-8fcd-2bf6563357a1",
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:corporate_document:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001"
}

KYB 可选文件

请求体与必传文件相同。使用 workflow.kyb.corp.non.required.doc 上传。无论是否上传,均需调用 workflow.kyb.corp.non.required.doc.submit 以推进。

KYB 必填表单

接口: workflow.kyb.corp.required.form POST

元数据字段 填写方
mainForm 主体企业
crpIndividualForm 每个个人关联方
crpCorporateForm 每个企业关联方
crpBothForm 每个股东关联方

主体表单:

{
  "formId": "CorporateForm",
  "formData": "{\"field_firm_size_level\":\"small_5_19\",\"field_has_branch\":\"no\"}",
  "crpPid": "",
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:corporate_form:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001"
}

个人关联方表单:

{
  "formId": "IndividualCRPForm",
  "formData": "{\"field_0_0\":\"test\",\"field_0_1\":\"Singapore\"}",
  "crpPid": "acc45a86-f2e9-48c2-8fcd-2bf6563357a1",
  "executionId": "exec-abc123def456",
  "callbackKey": "kyb:corporate_form:exec-abc123def456:...",
  "referenceId": "onboarding-uuid-001"
}

提交所有表单(主体 + 各关联方)后,调用 workflow.kyb.corp.required.form.submit。

请根据工作流返回的 nextStep 元数据确定所需的关联方角色、活体检测、文件与表单。保存每个关联方的 crpPid;仅对上方主体企业示例使用空的 crpPid。