收藏
回答

调用微信支付后,取消支付后处理?

订单号:1615712869534382755359596964

云开发:调用微信支付后,此时已经生成订单,进入微信支付输密码弹窗界面,如直接关闭弹窗,此时用CloudPay.queryOrder()可以查询到订单状态为“NOTPAY,未支付”,但在微信商户后台 交易订单-->批量订单查询中不显示此订单(如果是输错密码后再关闭弹窗,此时商户后台批量订单查询中显示出此订单),如果在商户后台 交易订单-->按订单号查询的话,又报错。坑的一B

问题:此时需要对这个未支付的订单要怎么处理,重新发起支付的话,会报“201 商户订单号重复”,

如果用新的订单号发起支付,相当于重新下单了,那之前的订单也没必要关闭或者不去处理它就行了?


回答关注问题邀请回答
收藏

2 个回答

  • Memory
    Memory
    2021-03-15

    关单处理

    2021-03-15
    有用
    回复
  • LT-阿里资产服务
    LT-阿里资产服务
    2021-03-14

    因为直接复制官方文档的代码过来,请求支付的时候报“201商户订单重复”,是因为云函数又调用了一次统一下单接口。 如果取消订单再重新对原订单支付的话, 可以在统一下单的时候,把返回的package在数据库中保存下, 再对这次订单支付的话,先调订单查询queryOrder接口,再请求支付

    wx.requestPayment({
    	nonceStr: result.nonceStr, //订单查询接口获取
         package: package,  //从数据库中获取
         paySign: result.sign,  //订单查询接口获取
         timeStamp: Date.parse(new Date())  //时间戳
    })
    


    以上是个人思路,如有问题,欢迎纠正(微信的开发文档写的是真的烂)

    2021-03-14
    有用
    回复
登录 后发表内容
问题标签