Appearance
公证下单
POST /openapi/v1/notary/orders/create公证业务的入口接口。渠道用户先通过 订阅业务绑卡流程 在 cxh 完成绑卡,公证下单时传
bindOrderNo;cxh 按公证收费向用户扣款,扣款成功后启动公证出证。
请求
请求字段(扁平结构,无嵌套子对象):
| 字段 | 必填 | 说明 |
|---|---|---|
settlementMode | ✓ | 固定 CXH_DEDUCT(cxh 代扣模式) |
externalOrderNo | ✓ | 渠道侧订单号;同一渠道下 (channelId, externalOrderNo) 全局唯一 |
fileSha256 | ✓ | 待公证文件的 SHA-256 摘要,64 hex 小写字符串。渠道在本地对文件二进制原始字节计算(不上传文件本体)。常见命令:shasum -a 256 <file> / sha256sum <file> / openssl dgst -sha256 <file>;Node crypto.createHash('sha256');Java MessageDigest.getInstance("SHA-256") |
fileName | ✓ | 文件名(字符串) |
notaryFeeCent | ✓ | 公证收费(整数,单位分),> 0。cxh 据此向用户扣款 + 计算渠道分账;须在合同约定的最小 / 最大金额区间内,越界拒 451010 |
label | — | 业务标签(字符串) |
notifyUrl | — | 异步状态回调地址(当前不启用公证事件推送,渠道应主动调 公证查询 轮询状态) |
subjectType | ✓ | PERSON / COMPANY |
subjectName | ✓ | 签约方展示名(明文字符串) |
idCardEncrypted | △ | 身份证 AES-CBC 密文;subjectType=PERSON 必填,COMPANY 不传 |
phoneEncrypted | — | 手机号 AES-CBC 密文 |
companyCodeEncrypted | △ | 统一社会信用代码 AES-CBC 密文;subjectType=COMPANY 必填,PERSON 不传 |
bindOrderNo | ✓ | 已在 cxh 完成绑卡的协议单号 |
PII 加密详见 签名 + 字段加密;AES 密钥使用 channel
aesKey。
响应
json
{
"code": "0",
"message": "success",
"data": {
"notaryOrderNo": "<64 位 ID 字符串>",
"externalOrderNo": "<入参回显>",
"createTime": "yyyy-MM-dd HH:mm:ss",
"status": "<状态值,见下表>",
"settlementMode": "CXH_DEDUCT",
"settlementPriceCent": 0,
"certificateAccessUrl": null,
"failReason": null
},
"requestId": "...",
"timestamp": "yyyy-MM-dd HH:mm:ss",
"success": true
}订单状态
status 字段的取值与含义:
status | 含义 | 备注 |
|---|---|---|
CREATED | 已创建,待扣款 | 短暂中间态(罕见) |
CHARGING | 扣款中 | 扣款进行中,渠道可轮询 公证查询 等待结果 |
PAID | 已支付,待出证 | 短暂中间态 |
FULFILLING | 出证中 | 公证流程进行中,稍后查询可拿到结果 |
SUCCESS | 公证成功 | certificateAccessUrl 非空时可直接下载;若为空,公证函仍在生成,稍后调 公证查询 即可拿到 |
FAILED | 失败 | failReason 非空 |
幂等
(channelId, externalOrderNo) 首单命中直接返回首单,不重复建单。幂等命中且扣款仍在 WAIT 状态时,自动重驱扣款;若已进入 CHARGING / FAILED / SUCCESS 等状态,直接返回当前订单状态。
错误码
详见 错误码。常见:451010(公证收费超出区间) / 403001(渠道未授权) / 401xxx(鉴权失败) / 400001(参数错误)。
沙箱 happy path 示例
完整 curl 调用顺序示例参见 接入流程 § 首次成功调用示例;签名计算与 PII 加密详见 签名 + 字段加密。