Alipay, China's leading third-party online payment solutionAlipay, China's leading third-party online payment solution

退款

您可以通过本文了解 Antom 的退款规则及如何对成功的交易发起退款。

退款规则

退款的相关规则如下:

  • 手续费:退款是否退回支付手续费,以及退款是否额外收费,依照双方合约执行。
  • 退款结算汇率:当结算币种和支付币种不一致时,退款结算汇率按照发起退款请求当日 Antom 汇率进行结算。
  • 退款限制:不同的支付方式存在不同的限制差异,具体包括以下几种情况:
    • 完全不支持退款
    • 不支持部分退款
    • 从支付成功的时间开始,在超出一定时间后不允许退款

以上具体信息详见 Refund capabilities of payment methods.

  • 退款退票:指在极端情况下,由于用户在银行侧的账户状态不正常等原因,导致发生调用 退款 接口后返回退款成功,但是用户未能成功收到资金的情况。此时,Antom 会结算相应的资金,并通过结算账单的方式发送通知,需要您自行决定如何处理这一笔资金。

退款方法

在支付成功后,您可以通过以下两种方法发起退款:

退款流程

image.png

图1:退款流程图

【说明】

  • 调用 退款 接口后,可能返回以下3种情况:
    • 同步退款请求返回退款失败:如果请求参数错误,请根据返回的错误码信息尝试调整退款的参数并换号重试,其他情况可联系 Antom 技术支持寻求帮助。各错误码建议处理方式详见 Error codes.
    • 同步退款请求返回退款受理成功:此时结果代码返回REFUND_IN_PROCESS,请使用 退款查询 接口获取最终的退款结果,或者等待退款结果通知。
    • 同步退款请求返回退款未知异常:此时一般为网络原因,可尝试不换号重试。
  • 退款通知:如果退款成功则一定会发送退款通知。在退款失败的情况下,如果是退款请求非法导致受理异常,则不会有退款通知。

集成步骤

根据以下步骤开始集成:

  1. 发起退款请求
  2. 处理退款响应

Step 1:发起退款请求

使用 退款 接口发起退款时若不满足以下退款要求,将收到 Antom 返回的对应错误码:

错误码

说明

ORDER_STATUS_INVALID

支付未成功。

REFUND_WINDOW_EXCEED

退款日期超出了退款有效期。

PAYMENT_METHOD_NOT_SUPPORTED

支付所使用的支付方式不支持退款。

PARTIAL_REFUND_NOT_SUPPORTED

支付所使用的支付方式不支持部分退款。

MERCHANT_BALANCE_NOT_ENOUGH

账户余额不足。

表1: 错误码

以下是退款请求的关键参数:

字段名

是否为必填?

说明

refundRequestId

在商家侧唯一的退款 ID。

paymentId

该笔退款所对应的 Antom 分配的原始交易的 ID。

refundAmount

退款金额。需要大于等于最小退款金额(通常为最小支付金额),且小于等于交易剩余可退金额。

退款金额的币种须和 支付 接口中的支付金额的币种(paymentAmount.currency)保持一致。

refundNotifyUrl

Antom 向您发送退款异步通知地址。

表2: 退款请求的关键参数

Step 2:处理退款响应

在您调用 退款 接口后,Antom 会返回该次退款的受理结果。响应中的 resultStatus 字段代表该笔交易的退款状态,resultStatus 的值解释如下:

  • S:表示退款成功。
  • F如果你已排除 Step 1 提到的错误码,返回 F 一般是请求中存在非法参数。请参考 Error codes 做相应处理,或联系 Antom 技术支持排查问题。
  • U:可能存在以下两种情况:
    • REFUND_IN_PROCESS:表示退款正在受理中,你可选择主动调用 退款查询 接口获取退款结果,或者等待退款结果通知。
    • UNKNOWN_EXCEPTION/REQUEST_TRAFFIC_EXCEED_LIMIT:这种情况一般是 Antom 系统或者网络原因导致,你可以调用 退款 接口进行重试。
  • ORDER_IS_CLOSED:通常在 退款查询 响应、重试 退款 调用、退款结果通知 请求中会返回此错误码信息。这种情况一般是某种原因导致这笔退款无法在 Antom 继续处理,此时可以尝试换号重试。