异步处理在支付环节的应用(7)

五、如何通过产品设计避免上述问题的发生?
方法一:交互方式的优化
这种方法更多的是针对网页端,在收银台中选择对应的渠道并开始支付后,有的电商平台会选择打开一个新网页界面,而原有的界面则会显示一个弹窗,引导用户在新打开的界面中进行支付。具体交互如下:

首先,在调用支付接口之前(例如用户在订单列表点击付款按钮或者进入收银台选择支付渠道后点击支付按钮),系统需要先确认该订单的支付状态,可以调用主动查询接口确认订单是否已经完成支付,若未完成支付,才允许进行支付,避免商户端重复提交支付订单给到第三方。不管是电商平台网页端或者是移动端,这样的一个校验动作都是不可缺少的。

然后,当用户在收银台点击“立即支付”按钮,若打开了新的网页界面,则原有界面显示付款提示弹窗,当用户点击“已完成付款”时,系统会再去第三方支付平台查询支付结果,如果支付成功,隐藏掉这个弹窗,展示支付成功界面。如果未查询到支付成功结果,则可以提示未检测到支付信息,然后关闭此弹窗或者可以返回订单详情页。

当然,有些电商平台也会采用在收银台点击支付时,直接刷新当前界面,进入付款界面,这样在一定程度上也是能够避免用户重复支付的问题。
全部评论

相关推荐

06-28 22:48
已编辑
广东金融学院 Java
小浪_Coding:学院本+这俩项目不是buff叠满了嘛
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务