欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

关于支付宝付款,商城系统中订单取消或者删除之后,如何阻止用户用之前创建的支付宝订单付款!

程序员文章站 2022-05-01 08:51:20
...
关于支付宝付款,以ECSHOP为例!
1,商城系统中的订单A,生成了一个支付宝交易订单,状态为等待付款。
2,此时取消或者删除订单,如何阻止用户从之前创建的支付宝交易订单付款?

我的想法是:
第一种,订单取消之后,回传支付宝,关闭支付宝交易(这种思路略麻烦,因为不是所有的订单都是采用的支付宝交易)
第二种,能不能在用户点击支付宝付款的时候判断该订单在我商城系统里面是否还合法,不合法则支付失败!个人倾向这种方法,但是不是知道支付宝有没有这种接口。

求有过类似经验的大侠,提点提点!


回复讨论(解决方案)

第三方支付一般都没有检查商户订单是否有效的接口。
所以我的做法是用户只能取消订单,而不能删除订单,订单的删除由系统自动删除(比如删除3天之前的已取消订单)
这样就会有3天的缓冲期。
这样及时用户支付了已取消的订单,在支付接口回调的时候,就可以把订单改为已支付,并执行支付业务处理。
而实际应用中,几乎是不会存在这种情况,这只是以防万一。

也可以建一个订单回收站的机制;这个回收站是只能系统调用的,而用户看不到也不能操作。

这种最好不要依赖于第三方,不然真正出现这种情况了就会很麻烦。

感谢回答!现在是实际中我这边会出现订单取消之后,用户还会付款的情况。