一、确认接入回调类型#
1.1 回调类型#
根据自身业务确定需要对接的回调类型,现支持回调类型如下:| 回调业务类型(businessType) | 描述 |
|---|
| OPEN_CORP_AUTHORIZATION_AUDIT_RESULT | 企业授权书审批结果通知 |
| OPEN_PSN_FACE_RECOGNITION_RESULT | 个人人脸核身结果通知 |
| OPEN_PSN_CERT_RESULT | 个人认证结果通知,通过个人认证页面完成认证、或临时用户完成认证 |
| OPEN_CORP_CERT_RESULT | 企业认证结果通知 |
| OPEN_CONTRACT_STATUS_CHANGED | 合同状态变更 |
| OPEN_CONTRACT_SIGNED | 签署结果回调通知 |
| OPEN_CONTRACT_AUTO_SIGN_SEAL_AUTH | 合同静默签印章授权生效通知 |
| OPEN_GET_SEAL_POSITION | 获取拖章定位通知 |
1.2 回调接入时序图#
以“OPEN_CONTRACT_STATUS_CHANGED签署结果回调通知”为例:3.OPEN_CONTRACT_STATUS_CHANGED通知:根据"企业控制台-应用管理-回调配置"中开启此项,回调内容见3.2内容。
4.获取回调信息接口:根据3中的transactionId 调用获取回调信息
5.回调成功确认:成功处理回调信息后调用此接口 回调成功确认(新)二、回调接入#
如需要接收回调信息,请访问"签盾官网-开放平台-进入控制台-应用列表-回调配置"页面中进行回调地址配置2.1 环境准备#
2.1.1 接口准备#
2.1.1.1 回调接收接口#
协议:https/http
method:Post
contentType: application/json;charset=UTF-8
2.1.1.2 回调连通性测试接口#
回调测试接口与回调接收接口地址相同,但请求方法不同,为"GET"请求。
回调测试接口不需要接收任何请求参数,也无需特定的结果返回。
请不要在回调测试接口中处理任何业务逻辑,连通性测试的超时时间较短,需在请求到达时立即返回。
协议:https/http
method:Get
contentType: application/json;charset=UTF-8
2.1.2 配置白名单信息#
如果系统采取了IP白名单校验,请根据“回调配置”页面提示引导,配置白名单过滤。
2.2 接入准备#
2.2.1 配置应用回调接口#
请在“回调配置”页面,初始化相应应用的回调接口配置,并通过接口测试确保服务间可正常调用。
2.2.1 回调接收流程#
需要在“回调配置页面”中的“订阅事件”中订阅相关的回调事件
1. 接口获取到的回调信息只是简单的基础信息,详见“回调基础信息格式”
2. 获取详细信息需要使用回调中的“transactionId”(Long),通过“获取回调信息”(详见获取回调信息接口返回)接口来获取详细信息。
3. 根据回调基础信息中“callbackRequired”(Boolean),判断此回调信息是否需要确认,“true”则表示需要调用“回调成功确认”(详见回调成功确认返回)接口进行消息确认。否则回调消息会延迟再次发送,详见“回调重试间隔”。
三、回调详细内容#
3.1 回调重试间隔#
目前回调重试间隔(单位:秒)
10, 30,60,120,180,600,1200,1800,3600,7200,14400,28800
3.2 回调基础内容#
回调基础信息格式
{
"transactionId":1663393434595627008, ## 流水id
"businessType":"OPEN_CONTRACT_STATUS_CHANGED",## 回调业务类型,详细见最上表格
"callbackRequired":true, ## 是否需要确认
"ts":1685448086106 ## 发送时间戳
}
3.3 回调详细内容#
3.3.1回调详细内容需要根据“3.2回调基础内容”中的transactionId 根据获取回调信息接口查询获取回调信息接口返回
{
"code": "200", ## 状态码
"msg": "", ## 状态信息
"result": "string", ## 回调详细内容JSON格式
"success": true ## 是否成功
}
result 内容
{
"transactionId": 1663393434595627008, ## 流水id
"businessType": "OPEN_CONTRACT_STATUS_CHANGED", ## 业务类型
"callbackRequired": true, ## 是否需要确认
"data": "XXX" ## json信息
}
企业授权书审批结果通知(OPEN_CORP_AUTHORIZATION_AUDIT_RESULT)
{
"ts": "1746714687604", ## 时间戳
"appId": "301", ## 应用id
"appKey": "204843736", ## 应用appKey
"serviceId": "2505095BA6UHUZ5W", ## 本次服务流程Id
"flowNo": "OPFN142339gUPgPdSrWDyg", ## 认证流水号
"verifyStatus": "passed", ## 验证状态(passed:通过、un_passed:未通过)
"failReason":"测试" ## 未通过原因
}
个人人脸核身结果通知(OPEN_PSN_FACE_RECOGNITION_RESULT)
{
"ts": "1746805650325", ## 时间戳
"appId": "301", ## 应用id
"appKey": "204843736", ## 应用appKey
"flowNo": "OPFN154711iqPOGrnjGkXd", ## 认证流水号
"serviceId": "2505095BA6UHUZ5W", ## 本次服务流程Id
"businessCode": "12311123441", ## 业务id
"verifyStatus": "passed" ## 验证结果(passed:通过、un_passed:未通过)
}
个人认证结果通知(OPEN_PSN_CERT_RESULT)
{
"flowNo": "1868843602865557504", ## 认证流程号
"businessCode": "TEST0522", ## 业务id
"accountId": "1868843602865557504", ## 认证账号
"psnName": "张三", ## 个人姓名
"psnIDCardNum":"360360200001011234", ## 个人证件号
"certStatus": "certified", ## 认证结果(wait_cert:待认证、certified:已认证)
"appId": "99", ## 应用id
"appKey": "65557504", ## 应用appKey
"ts":"1685448086106" ## 时间戳
}
企业认证结果通知(OPEN_CORP_CERT_RESULT)
{
"flowNo": "1868843602865557504", ## 认证流程编号
"businessCode": "TEST0522", ## 业务id
"accountId": "1868843602865557504", ## 认证账号
"corpName": "浙江签盾科技有限公司", ## 企业名称
"corpIDCardNum":"91330381MA2CN1L466", ## 企业证件号
"psnName": "张三", ## 操作人姓名
"psnIDCardNum":"123456202011118888", ## 操作人证件号
"certStatus": "certified", ## 认证结果(wait_cert:待认证、certified:已认证)
"appId": "99", ## 应用id
"appKey": "65557504", ## 应用appKey
"ts":"1685448086106" ## 时间戳
}
合同状态变更回调通知(OPEN_CONTRACT_STATUS_CHANGED)
{
"contractId": "1868843602865557504", ## 合同id
"businessCode": "TEST0522", ## 第三方签署流程业务id
"statusCode": "wait_sign", ## 合同状态(wait_sign:签署中;finished:已完成;timeout:已过期;rejected: 已拒签)
"statusDescription": "签署中", ## 合同状态描述
"contractName": "API-TEST0522", ## 合同名称
"ts":"1685448086106", ## 时间戳
"appId": "99", ## 应用id
"appKey": "65557504" ## 授权应用appKey
}
签署结果回调通知(OPEN_CONTRACT_SIGNED)
{
"contractId": "1868843602865557504", ## 合同id
"businessCode": "TEST0522", ## 第三方签署流程业务id
"statusCode": "finished", ## 签署结果(finished:已签署;rejected: 已拒签)
"statusDescription": "已签署", ## 签署结果状态码描述
"contractName": "API-TEST0522", ## 合同名称
"accountId": "PSN-TEST-001", ## 签署人accountId
"appId": "99", ## 应用id
"appKey": "65557504", ## 授权应用appKey
"ts":"1685448086106" ## 时间戳
}
合同静默签印章授权生效通知(OPEN_CONTRACT_AUTO_SIGN_SEAL_AUTH)
{
"appKey": "65557504", ## 授权应用appKey
"accountId": "TEST0522", ## 授权用户accountId
"authorizeSeals": [
{
"sealId":18688436028, ## 印章id
"authorizeCode":"adsdawdadsadawdawwadaw" ## 授权码
},
{
"sealId":18688436029, ## 印章id
"authorizeCode":"dawdsadawdwadawsdad1465aw" ## 授权码
}
], ## 授权印章信息
"ts":"1685448086106" ## 时间戳
}
获取拖章定位通知(OPEN_GET_SEAL_POSITION)
{
"businessCode": "TEST_CODE", ## 三方业务id
"serviceId": "TEST_SERVICE_ID", ## 服务id
"components": [ ## 拖章定位信息组件
{
"fileCode":"TEST_FILE_CODE_001", ## 文件代码
"signerRole":"测试角色1", ## 角色
"componentPosition" : ## 组件坐标
{
"positionPage":1, ## 页码
"positionX":110, ## X坐标
"positionY":120 ## Y坐标
},
"signFieldsConfig": ## 签署区域限制
{
"dateFormat":"YYYY年MM月DD日" ## 日期格式
}
},
{
"fileCode":"TEST_FILE_CODE_002", ## 文件代码
"signerRole":"测试角色2", ## 角色
"componentPosition" : ## 组件坐标
{
"positionPage":2, ## 页码
"positionX":119, ## X坐标
"positionY":114 ## Y坐标
},
"signFieldsConfig": ## 签署区域限制
{
"dateFormat":"YYYY/MM/DD" ## 日期格式
}
}
], ## 授权印章信息
"ts":"1685448086106", ## 时间戳
"appKey":"APP_KEY" ## 应用key
}
3.4 回调确认#
回调成功确认返回
{
"code": "200", ## 状态码
"msg": "", ## 状态信息
"result": null, ## 返回信息,为null
"success": true ## 是否成功
}