支付中心:调用第三方支付,第三方已经处理成功,但是调用方显示支付失败,是什么原因造成的?
2024-10-28
NEW个对象
先说下支付流程:
支付中心调用第三方,第三方将支付结果通过异步的方式返回给支付中心,支付中心做后续的处理。
从流程中来看:
网络问题
支付中心调用第三方是通过接口的形式调用,如果网络超时,就会认为是支付失败,但是请求可能已经请求到了,并且支付成功了。
回调处理错误
第三方会将结果返回给支付中心,如果回调结果是成功,但是订单被修改为支付失败,这就是程序的bug。
第三方接口的问题
有的时候支付成功的,但是回调的结果是支付失败,这种情况也是存在的
开启一个定时任务,实时同步第三方状态,可以解决以上问题的。
相关文章
-
支付中心 - 订单同步
整个支付中心的运转规则: 业务系统请求支付中心,支付中心请求第三方。 第三方将请求结果返回给支付中心,支付中心再将结果同步到业务系统。
NEW个对象 2024-10-26
-
支付中心:数据与第三方不一致该如何处理
这样的情况是存在。 遇到这样的情况,会通过定时任务进行数据同步。 当然并不是所有数据进行同步,而是同步那些异常数据。
NEW个对象 2024-10-28
-
订单是否会存在超时了,但是支付成功了的情况?
存在。订单状态:未支付、支付成功、已退款、支付关闭,如果订单超时,不可能更新为支付成功,如果订单成功,也不可能更新为超时。 订单状态流转:未支付 -> 支付成功 -> 已退款,或者 未支付 -> 支付关闭。
NEW个对象 2024-10-27