# 取消变更预约

商户业务系统通过取消变更预约接口,取消订阅下所有待生效(PENDING)的变更预约,清理待生效计划字段,并关闭关联的孤儿补付订单。

# 接口说明

接口

请求API: /api/subscription/change/cancel

请求方式: POST

请求类型:application/jsonapplication/x-www-form-urlencoded

# 请求参数

字段名 变量名 必填 类型 示例值 描述
商户号 mchNo String(30) M1621873433953 商户号
应用ID appId String(24) 60cc09bce4b0f1c0b83761c9 应用ID
订阅ID subscriptionId String(32) SUB_20210618164232 订阅ID
请求时间 reqTime long 1622016572190 请求接口时间,13位时间戳
接口版本 version String(3) 1.0 接口版本号,固定:1.0
签名 sign String(32) C380BEC2BFD727A4B6845133519F3AD6 签名值,详见签名算法
签名类型 signType String(32) MD5 签名类型,目前只支持MD5方式

# 请求示例数据

{
  "mchNo": "M1623984572",
  "appId": "60cc09bce4b0f1c0b83761c9",
  "subscriptionId": "SUB_20210618164232",
  "reqTime": "1622016572190",
  "version": "1.0",
  "signType": "MD5",
  "sign": "84F606FA25A6EC4783BECC08D4FDC681"
}

# 返回参数

字段名 变量名 必填 类型 示例值 描述
返回状态 code int 0 0-处理成功,其他-处理有误,详见错误码
返回信息 msg String(128) 签名失败 具体错误原因
签名信息 sign String(32) CCD9083A6DAD9A2DA9F668C3D4517A84 对data内数据签名
返回数据 data Object 取消成功时 data 为空

# 返回示例数据

{
  "code": 0,
  "msg": "SUCCESS",
  "data": null
}

# 业务规则

注意

  • 本接口取消订阅下所有待生效(PENDING)的变更预约,将关联的变更日志状态更新为已取消,并清理订阅的待生效计划字段(pendingPlanId/pendingPlanCode 等)。
  • 补付订单联动:若存在关联的补付支付订单,按其状态分别处理:
    • 待支付(INIT):直接关闭订单。
    • 支付中(ING):拒绝取消,提示"补付订单支付中,请等待支付结果后再取消"。
    • 支付成功(SUCCESS):拒绝取消,提示"补付订单已支付成功,无法取消,变更即将生效"。
  • 取消成功后,对每条被取消的变更发送 SUBSCRIPTION_CHANGE_CANCELED 通知(通知携带 changeId,按变更维度去重)。
  • 与收银台取消的区别:商户取消按订阅维度清理所有 PENDING 变更;收银台取消(/cancelForCheckout)按 changeId 取消单条且仅限未确认变更。
Last Updated: 2026/8/25 下午10:44:13