专栏名称: 数据分析与开发
伯乐在线旗下账号,分享数据库相关技术文章、教程和工具,另外还包括数据库相关的工作。偶尔也谈谈程序员人生 :)
目录
今天看啥  ›  专栏  ›  数据分析与开发

大厂是如何防止订单重复支付的?三分钟彻底搞懂!

数据分析与开发  · 公众号  · 数据库  · 2023-12-28 11:50
    

文章预览

来源 : cnblogs.com/cjsblog/p/14516909.html 如图是一个简化的下单流程,首先是提交订单,然后是支付。 支付的话,一般是走支付网关(支付中心),然后支付中心与第三方支付渠道(微信、支付宝、银联)交互。 支付成功以后,异步通知支付中心,支付中心更新自身支付订单状态,再通知业务应用,各业务再更新各自订单状态。 这个过程中经常可能遇到的问题是掉单,无论是超时未收到回调通知也好,还是程序自身报错也好。 总之由于各种各样的原因,没有如期收到通知并正确的处理后续逻辑等等,都会造成用户支付成功了,但是服务端这边订单状态没更新。 这个时候有可能产生投诉,或者用户重复支付。 由于③⑤造成的掉单称之为外部掉单,由④⑥造成的掉单我们称之为内部掉单 为了防止掉单,这里可以这样处理: 支付订单增加一个中间状态“ ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览