订单状态推送

API文档最后更新: 2026-08-23

9.2 订单状态推送

订单扣款并创建成功后的初始 pending 不发送。订单进入 processing、取消等后续状态时发送;充值结果和退款结果也使用本消息:

{
  "eventId": "order.changed:status:10001:1753776100",
  "eventType": "order.changed",
  "occurredAt": 1785216001,
  "clientOrderRef": "PO-20260728-0001",
  "platformOrderRef": "D202607290001",
  "orderState": "success",
  "rechargeResult": "充值成功,到账100元"
}

字段

JSON 类型

必填

含义

eventId

string

是

本次消息编号;第三方按该编号防止重复处理

eventType

string

是

固定为 order.changed

occurredAt

integer

是

消息产生时间,10 位 Unix 秒级时间戳

clientOrderRef

string

是

第三方订单号

platformOrderRef

string

是

平台订单号

orderState

string

是

平台订单状态:pending、processing、success、canceled、partially_refunded 或 refunded

rechargeResult

string

充值商品是

本次状态变化时最新的充值返回信息,最多 100 个字符;没有内容时为空字符串,卡密商品不返回

refundRef

string

退款时是

平台退款编号;与两个退款金额字段同时返回

refundAmount

number

退款时是

本次退款金额,单位为人民币元,最多保留两位小数

cumulativeRefundedAmount

number

退款时是

订单累计已退款金额,单位为人民币元,最多保留两位小数

充值商品每次产生新的处理结果时,order.changed 会同时携带当前 orderState 和可直接展示给用户的最新 rechargeResult。即使处理前后的订单状态值相同,只要本次产生了新的充值返回信息,也会发送一条新的 Webhook;充值成功发送 order.changed(success)。

退款完成时仍发送 order.changed,并额外返回本次退款编号、本次退款金额和累计退款金额:

{
  "eventId": "order.changed:refund:10001:RF202607290001",
  "eventType": "order.changed",
  "occurredAt": 1785216010,
  "clientOrderRef": "PO-20260728-0001",
  "platformOrderRef": "D202607290001",
  "orderState": "partially_refunded",
  "refundRef": "RF202607290001",
  "refundAmount": 50.00,
  "cumulativeRefundedAmount": 50.00
}

同一次退款只发送一条 order.changed。再次部分退款时,即使订单状态仍为 partially_refunded,也会使用新的 refundRef 发送新消息。没有收到通知时,可以调用 GET /orders/{clientOrderRef} 查询最新结果。卡密订单成功只发送 order.credentials.ready,其中的 orderState 为 success,不会再重复发送 order.changed(success)。