现象描述
支付宝 mapi(1.0)版本的订单如需退款,流程有异于其他渠道的退款,以下为支付宝 1.0 接口退款流程的特别说明(支付宝 2.0 "openapi" 接口无需关注):
服务端调用 Server-SDK 封装的发起退款方法请求 Ping++ 。
Ping++ 响应你的服务端请求,返回 退款Refund 对象。 Refund 对象中的 failure_msg 字段包含支付宝退款链接。
截取退款链接并点击链接进入支付宝退款页面,需要商家输入支付宝支付密码完成退款。注意:支付宝退款链接当日有效,隔日作废,需要重新请求 退款查询 接口或者重新请求 创建退款 接口,均会返回新的链接。
在 Ping++ 管理平台配置 Webhooks 的 refund.succeeded 事件。退款完成时,Ping++ 会主动以 POST 方式向你配置在管理平台上的 Webhooks 通知地址发送退款结果。
在你服务端没有收到 Webhooks 的通知或退款失败时,你也可以调用 Server-SDK 封装的 退款查询 方法,主动向 Ping++ 发起请求来获得退款状态。
优化升级
1、如果想实现免密退款,你可以将 mapi 版本升级至 openapi,升级参考:https://help.pingxx.com/article/1179816
2、如果你不便升级支付宝版本但仍想免密退款,可参考:如何开通 “支付宝无密退款” 权限?