Skip to main content
  • 方式一:Sumsub Share Token —— 用户已在接入机构自建的 Sumsub 完成认证,直接把 Share Token 交给 DCS,免传证件文件;
  • 方式二:证件文件上传 —— 由接入机构自行收集证件并上传给 DCS。
两种方式创建同一种 KYC 工单,状态机与查询/回调完全一致。

📄 正文

无论您是交易所、钱包还是平台方,都可以通过一次 API 调用把用户 KYC 信息提交给 DCS——这是为该用户开卡前的必要一步。DCS 作为新加坡 MAS 持牌发卡机构,会安全接收资料、按反洗钱(AML)规则评估风险,并通过 Webhook 回传认证结果。

谁做什么

前置条件

  • 已持有企业(Enterprise)的 ApiKey / SecretKey,参见鉴权指南
  • 已创建用户,拿到 customerId,参见创建用户
  • 使用 Sumsub:已在自建 Sumsub 与 DCS 建立 Sharing Partner 关系(参见 KYC 服务商说明),并已取得该用户的 Share Token。
  • 走上传路径:已备好用户证件文件(身份证、护照或驾照等),如涉及地址证明请一并备好。

两种方式怎么选

区分逻辑:证件文件字段(identifyProofList / addressProofList)留空时,DCS 跳过相关校验;提交后则按枚举与长度校验。DCS 使用 sumsubShareToken 获取用户已在 Sumsub 完成认证的资料。证件文件与 Share Token 可以同时提交,具体处理方式以接入时确认的 KYC 配置为准。两种方式都需要提交职业信息kycCareerInfo)。

方式一:Sumsub Share Token

最小请求

POST /open-api/kyc-ticket/v1/apply-kyc
使用 Sumsub 路径时,identifyProofList / addressProofList 可留空;DCS 会使用 sumsubShareToken 获取用户已认证的证件资料。

方式二:证件文件上传

步骤 1:上传证件文件

身份/地址证明文件不是把图片直接塞进申请请求,而是先换取 S3 预上传链接、把文件 PUT 上去,再在申请时引用返回的 objectKey 调用 POST /open-api/intent-ticket/v1/generate-pre-upload-urlbusinessTypeCREATE_CARD_KYC
接口返回每个文件对应的临时上传 URL 与 objectKey。把文件 PUT 到该 URL 后,记下 objectKey——下一步的 identityProofUrl / addressProofUrl 字段填的就是这个 objectKey,而不是完整 URL。

步骤 2:提交 KYC 申请

POST /open-api/kyc-ticket/v1/apply-kyc

请求字段总览

通用字段(两种方式都适用)

方式一专用字段

方式二相关字段

字段拼写注意:外层列表字段名为 identifyProofList(identify),其内层字段以 identityProof*(identity)开头,两者前缀不同,请严格按本表拼写传参。
identifyProofList 及其内层的 identityProofType / identityProofIssuedCountry 在接口层面均为非必填——这是为了让 Sumsub 路径可以只传 sumsubShareToken。但走自行上传证件的路径时,这三项业务上必须提供,否则无法完成认证。
identifyProofList[] 身份证明文件 addressProofList[] 地址证明文件

kycCareerInfo 职业信息(两种方式共同必填)

职业信息为敏感数据。若需端到端加密,把 kycCareerInfo 序列化为 JSON 后用 AES-GCM 加密,密文放入 kycCareerInfoEncryption、IV 放入 encryptionIV,此时可不传明文 kycCareerInfo。 上述字段由服务端枚举校验,并非任意字符串。完整取值见 KYC 申请参数字典

响应

所有 /open-api/ 接口共用统一响应结构 { code, message, messageDetail, data }。成功时 data 返回新建的 KYC 工单:
响应结构说明:业务成败以 code(如 SYS_SUCCESS)为准,message 为简要文案;messageDetail 是可选的展示对象(含 message / title / type / icon / action / linkTitle / linkUrl),用于前端引导,不应作为判断成败的依据。
请注意:HTTP 200 + code=SYS_SUCCESS 仅代表申请已受理,不代表 KYC 通过。提交成功后 status 通常为 INIT,最终结果需经查询接口或 Webhook 获取。

跟进认证结果

提交后,KYC 工单会在以下状态间流转(两种方式共用同一状态机): status=REJECTED 时,查询 KYC 接口与 KYC_TICKET Webhook 会返回 errorCodeerrorMessage 表示拒绝原因,对应处置见 KYC 拒绝错误码 状态更新建议通过 Webhook 订阅获取,避免轮询;详见 Webhook 数据结构

下一步

KYC 通过(status=PASSED)后,即可前往 开卡流程 为该用户开卡。若状态停在 NEED_VERIFY,先到 人脸引导页 引导用户完成人脸认证。