跳转到主要内容
POST /api/actions/refund-ticket/resubmit-ticket 认证: 商户 API Key(服务端到服务端)。 Resubmit 复用 创建退款工单 的请求结构,额外需要 ticketId 标识被修订的工单。原始 paymentId 绑定在工单上,不可更改。

请求体

字段类型必填描述
ticketIdstring被修订的退款工单 Short ID,例如 TKT_3bVzrkD0FJjFdZNLk8Ualx
reasonstring修订后的退款原因
requestedAmount.amountstring修订后的退款金额(显示格式,必须 > 0≤ payment.amount
requestedAmount.currencystringISO 4217 代码,必须与支付货币一致
create 时写入的 refundTicketMerchantExternalId 在 resubmit 中不可变 — 工单创建后不能改。

成功响应 (200)

{
  "data": {
    "ticket": {
      "id": "TKT_3bVzrkD0FJjFdZNLk8Ualx",
      "status": "pending",
      "subjectId": "PAY_6eYCunG3IMmIgcQOnaXdoA",
      "versionNumber": 2,
      "refundTicketMerchantExternalId": "REF-2026-00891"
    }
  }
}
工单追加新版本;versionNumber 递增。工单重新进入审核队列(buyer 发起为 pending,merchant 发起为 processing)。

错误响应

重试策略:4xx 一律不要重试 — 修正请求后重发。5xx 指数退避重试(起步 5s,最多 3 次)。
状态码errors[0].message含义推荐处理
400Missing required field: ticketId未提供 ticketId添加 ticketId 后重发
400Expected format: TKT_xxx, got "..."ticketId Short ID 解码失败修正 ticketId 格式后重发
400Invalid requestedAmount.amount format金额字符串无法解析使用显示格式如 "10.50"
401UnauthorizedAPI Key 签名无效检查认证请求头
403Submitter is not the original ticket owner调用者不是工单创建者只有原始提交者可以 resubmit
404Ticket not found工单不存在或不属于调用者验证 ticketId
409Ticket status is X, only rejected/failed can be resubmitted工单不在可 resubmit 状态等待 rejected / failed,或新建工单
409Requested amount exceeds payment amount修订金额超过 payment.amount修正金额
500Internal server error服务端意外失败指数退避重试(起步 5s,最多 3 次)