t***@163.com
t***@163.com
  • 发布:2023-11-28 12:38
  • 更新:2023-11-28 16:55
  • 阅读:270

#插件讨论# 【 uni-pay - DCloud前端团队 】微信小程序uni-pay-co通过组件调用支付,201 商户订单号重复

分类:uniCloud
关联插件: uni-pay

微信小程序端 :uni-pay-co通过组件调用支付,payRef.value.open之后提示fail Error: errCode: INVALID_REQUEST | errMsg: 201 商户订单号重复

在第一次支付成功后不跳页的情况下,继续二次支付就会提示fail Error: errCode: INVALID_REQUEST | errMsg: 201 商户订单号重复
order_no都是我动态生成的,不会出现重复

payRef.value.open({
total_fee: res.data.amount, // 支付金额,单位分 100 = 1元
type: "recharge", // 支付回调类型
order_no: res.data.id, // 业务系统订单号
description: ${res.data.createTime}充值, // 支付描述
});

而且成功支付或者取消之后不会触发success和cancel事件

2023-11-28 12:38 负责人:无 分享
已邀请:
t***@163.com

t***@163.com (作者)

在emit('success'),emit('fail'),emit('cancel') 后加入this.res = {}便可

t***@163.com

t***@163.com (作者)

success等不触是因为this.$emit之前关闭弹窗实例导致传值失败

DCloud_uniCloud_VK

DCloud_uniCloud_VK

可以直接将

order_no: options.order_no || this.res.order_no,  
out_trade_no: options.out_trade_no || this.res.out_trade_no,

改成

order_no: options.order_no,  
out_trade_no: options.out_trade_no,

要回复问题请先登录注册