API 参考

English

退款接口

创建退款与查询退款。卡类退款为全额退款,且需审核后完成。

创建退款

POST/api/v1/refunds/create

请求字段

字段类型必填说明
original_order_nostring二选一原 HansaPay 系统支付订单号
original_merchant_order_nostring二选一原商户支付订单号
merchant_refund_nostring是商户退款单号,最长 64 个字符
refund_amountstring是退款金额,币种与原订单一致
reasonstring否退款原因
notify_urlstring否退款通知地址。不传则不发送退款通知
metadatastring否商户透传参数,在退款通知中回传

说明:

  • 卡、Apple Pay 与 Google Pay 支付仅支持一次全额退款。部分金额会被拒绝,返回 This payment channel does not support partial refunds; only full refunds are allowed
  • 此类退款初始为 PENDING,审核后才完成;HansaPay 每隔几分钟检查一次,完成后发送 refund.updated。30 分钟后上游仍无记录的退款会变为 FAILED
  • Cash App 退款即时完成,且支持部分退款
  • 退款处理中时,退款金额与退款手续费会从可用余额中冻结,失败则解冻。余额不足以覆盖时,退款会被拒绝
  • 被拒绝的退款同样占用其 merchant_refund_no;被拒绝的退款记录为 FAILED
  • 退款状态:PENDING / SUCCESS / FAILED

成功 data

字段类型说明
refund_nostringHansaPay 系统退款单号
merchant_refund_nostring商户退款单号
original_order_nostring原 HansaPay 系统订单号
original_merchant_order_nostring原商户订单号
statusstring退款状态
refund_amountobject退款金额
created_atstring创建时间

完整成功响应示例

JSON
{
  "code": 0,
  "msg": "success",
  "data": {
    "refund_no": "R202406240001",
    "merchant_refund_no": "MR202406240001",
    "original_order_no": "O202406240001",
    "original_merchant_order_no": "M202406240001",
    "status": "PENDING",
    "refund_amount": {
      "currency": "USD",
      "value": "99.99"
    },
    "created_at": "2026-06-24T11:00:00+08:00"
  }
}

查询退款

POST/api/v1/refunds/query

请求字段

字段类型必填说明
refund_nostring二选一HansaPay 系统退款单号
merchant_refund_nostring二选一商户退款单号

成功 data

字段类型说明
refund_nostringHansaPay 系统退款单号
merchant_refund_nostring商户退款单号
original_order_nostring原 HansaPay 系统订单号
original_merchant_order_nostring原商户订单号
statusstring退款状态
refund_amountobject退款金额
reasonstring退款原因
created_atstring创建时间
updated_atstring更新时间

完整成功响应示例

JSON
{
  "code": 0,
  "msg": "success",
  "data": {
    "refund_no": "R202406240001",
    "merchant_refund_no": "MR202406240001",
    "original_order_no": "O202406240001",
    "original_merchant_order_no": "M202406240001",
    "status": "SUCCESS",
    "refund_amount": {
      "currency": "USD",
      "value": "99.99"
    },
    "reason": "customer requested",
    "created_at": "2026-06-24T11:00:00+08:00",
    "updated_at": "2026-06-24T11:00:05+08:00"
  }
}