用户在小程序里,点击支付,在弹起微信支付界面时,取消支付,当他下一次要再次支付时,会提示:
201 商户订单号重复
社区有不少人问这个问题,答案不一,大部分人说重新创建一个 outTradeNo,但这样其实脱离了业务需求。
差点被带沟里去。
自测成功,正确解法是这样:
第一次调用 cloud.cloudPay.unifiedOrder 时,把返回的 payment [obj] 保存到订单里,下次再次支付,不需要请求 cloud.cloudPay.unifiedOrder,而是直接在小程序端调用 wx.requestPayment,把之前保存的 payment [obj] 传过去即可。
发表评论