用户中断支付后如何继续支付?

2018-03-27 13:58:41 +08:00
 metrxqin

下午好,

遇到一个逻辑上的难题,我目前的情况是:

使用 App 支付 SDK,支付宝返回了一个 URL 参数串,客户端拼接此参数串发起支付,如果中途用户中断支付,之后又要支付,我应该重新创建新的订单还是继续此订单,如果继续我应该怎么做?

3036 次点击
所在节点    支付宝
7 条回复
ovear
2018-03-27 14:14:48 +08:00
偷懒的做法重新创建,防止过期。

一般不偷懒的做法,判断有没有过期,没过期以相同的 txid 发起给支 x 付 x 宝,否则创建
dong3580
2018-03-27 14:17:07 +08:00
我之前做的时候提交到数据库存起来,然后做了一个中间页面,拼参数跳转到支 x 宝支付,如果订单已经支付,则提示错误信息。然后不论有没有支付,都会把这个中间地址发邮件给用户。
所以支付失败,用户只需要打开这个中间页,就能继续支付了。
metrxqin
2018-03-27 15:36:08 +08:00
@ovear 什么是 txid ?
metrxqin
2018-03-27 15:42:09 +08:00
@dong3580 你这种方式相当于把支付参数缓存下来了。
ovear
2018-03-27 15:43:43 +08:00
@metrxqin #3 交易 ID
metrxqin
2018-03-27 15:57:04 +08:00
https://docs.open.alipay.com/204/105465/ 这是支付宝的 APP 支付文档,里面并没有提到 txid,只有回调接口传来的 trade_no
cysroad
2018-03-27 17:50:13 +08:00
数据库保存支付订单,服务器提供拼接支付串的接口,客户端调服务器的接口丢给支付宝。
支付成功后,支付宝会给一个异步的通知,服务器接到请求,修改订单状态。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/441780

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX