微信支付相关疑问

孤丶狼丶 发布于 2017/10/28 15:10
阅读 96
收藏 0

        微信文档里面的流程是:用户下单后,后台会调用统一支付api,获取到prepay_id等参数,然后签名,返回相关数据给微信端,然后微信端发起支付    。
        现在我做的是,用户下单后。点击确认支付,然后付款。我不确定统一下单这一步放在哪儿。
    
       如果是放在用户点击确认支付这一步,那么用户在微信端发起付款后,可以取消支付,或者余额不足等等。然后当他再次点击确认支付的时候,后台会重复提交统一下单。这样会报错,因为订单号重复。
        如果实在用户下单的时候,就请求了统一支付。这个时候还没到用户付款这一步,那这样做prepay_id这些信息就需要保存下来,放到数据库?或者redis?之后支付的时候直接取出来发给微信端,然后微信端付款。
    
        不知以上哪种流程合理一点?请大家指点指点。

加载中
0
夕阳视界
夕阳视界

订单号后面追加-1 -2 .... 可以一直发起支付

0
SpringHgui
SpringHgui
可以放在唤起支付之前,也就是点击付款后,订单号中加入时间戳,订单表一定要有一个字段表示订单状态,先插插入一条状态为未付款的订单,支付成功的回调再更新订单状态
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部