取消订阅
接口说明
适用场景:【商户主动取消】用户主动取消订阅
请求方式:【POST】/v1/subscription/cancel
请求域名:【主域名】https://api.baofu.com
请求参数
Header HTTP头参数
| Header | 必填 | 说明 |
|---|---|---|
Authorization |
是 | 统一网关鉴权;签名算法与签名参数见下表(须在一行内,勿换行) |
Content-Type |
是 | 固定 application/json |
宝付要求请求通过HTTP Authorization头来传递签名。Authorization由认证类型和签名信息两个部分组成。
Authorization: 认证类型 签名信息
具体组成为:
- 认证类型,取值 RSA/SM2
签名信息
| 参数名 | 说明 |
|---|---|
| mch_id | 宝付分配的唯一商编 |
| app_id | 宝付终端号,选填,若传值,则使用宝付4.0证书 |
| nonce_str | 请求随机串,和上面构造签名串的随机串要保持一致 |
| timestamp | 时间戳 和上面构造签名串的时间戳要保持一致 |
| serial_no | 商户API证书序列号,用于声明所使用的证书 |
| baofu_serial_no | 宝付证书序列号, 联系技术支持提供 |
| dgtl_envlp | 数字信封(非必填),16位密钥,用宝付公钥加密后传输 |
| signature | 签名值,上面算出来的签名值 |
注意:以上七项签名信息,无顺序要求。数字信封参数可以为空
Authorization头的示例如下:(注意,示例因为排版可能存在换行,实际数据应在一行)
Authorization: RSA mch_id="128308",app_id="128308",nonce_str="P7X2R9Z1M5W6Q4V3B8C0D2E1F7G9H2J4",signature="DKLJASKLFGHQWJFPWQJLFKGDKSLGJPQJPFWQJLGKNDLSKJGLDSJLKFSJAKL",timestamp="1507488238",serial_no="123821002",baofu_serial_no="123822342",dgtl_envlp="GLKUIOWQGKDLSNGLKQWJPRQ"
body 包体参数
subscriptionNo 必填 string(32)
【订阅号】
merchantNo 选填 string(32)
【商户号】有值时须与订阅一致
cancelReason 选填 string(256)
【取消原因】
响应参数
成功时 data 为取消结果对象:
subscriptionNo string
【订阅号】
outTradeNo string
【商户签约订单号】
status string
【订阅状态】通常为 CANCELLED;幂等场景可能为 FAILED,见数据字典与枚举说明1.1
cancelTime string
【取消时间】FAILED 幂等场景为 null
错误码
| 状态码 | 错误码 | 描述 | 说明 |
|---|---|---|---|
| 400 | PARAM_ERROR |
参数校验失败 | 必填参数缺失或格式不合法 |
| 404 | RESOURCE_NOT_EXISTS |
订阅不存在 | 订阅号对应记录不存在 |
| 200 | ORDER_CLOSED |
订阅状态不合法 | 订阅当前状态不允许取消 |
| 404 | MCH_NOT_EXISTS |
商户号不匹配 | 传入的 merchantNo 与订阅归属不一致 |
| 500 | SYSTEM_ERROR |
系统异常 | 内部系统错误 |