开发者社区> 问答> 正文

#支付宝 异步通知如何区分全额退款和部分退款?

异步通知如何区分全额退款和部分退款?

展开
收起
保持可爱mmm 2020-05-05 17:13:43 1963 0
1 条回答
写回答
取消 提交回答
  • 在交易过程中,商家收到异步通知,但是不清楚这个是由于全额退款导致触发的异步通知,还是部分退款导致触发的异步通知。本文主要以2者的不同点进行区分: 部分退款异步通知

    部分退款至退交易资金中的部分金额,并未将全部资金退还给买家,买家的交易仍然处于成功状态。

    部分退款的交易状态是TRADE_SUCCESS(交易成功),异步通知中有退款订单参数等信息。

    全额退款异步通知

    全额退款成功的交易状态是TRADE_CLOSED(交易关闭),异步通知中有退款订单参数,并且含有交易结束时间。

    如何区分

    1、根据异步通知中是否有refund_fee(总退款金额)、gmt_refund(交易退款时间)等参数,判断是否是退款触发的异步。

    含有refund_fee(总退款金额)、gmt_refund(交易退款时间)等信息的为退款触发的异步通知。

    2、根据交易状态和交易结束时间(gmt_close)判断是全额退款的异步通知还是部分退款的异步通知。

    交易状态为TRADE_SUCCESS(交易成功)的为部分退款的异步通知。

    交易状态为TRADE_CLOSED(交易关闭),且含有交易结束时间(gmt_close)的为全额退款的异步通知。

    注意事项

    1、app支付和手机网站支付是默认交易状态为TRADE_CLOSED(交易关闭)会触发异步通知,可注意全额退款和部分退款的不同点。

    2、当面付和电脑网站支付交易状态为TRADE_CLOSED(交易关闭)不会触发异步通知,只有在交易成功时才会触发异步,因此可以不用在意。只要了解到异步通知中含有refund_fee(总退款金额)、gmt_refund(交易退款时间)等参数,判断是否是退款触发的异步,若是没有就表示是买家支付成功的异步通知。

    2020-05-05 17:13:51
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载