收藏
回答

新产生的out_trade_no 在什么情况下会出现201 商户订单号重复?

商户号
1711264426
云托管程序调用统一下单接口http://api.weixin.qq.com/_/pay/unifiedorder 
的时候搜到错误提示:
支付请求:
request:{"body":"******(这里做了隐藏)","openid":"olTdj7DUBelSm1hDVCjAK0Fb2SUo","out_trade_no":"29","spbill_create_ip":"11.163.0.80","env_id":"prod-4gyuy2g2d8dc9e78","sub_mch_id":"1711264426","total_fee":10,"callback_type":2,"container":{"service":"dotnet-3e7f","path":"/notify/wxPay"}}
response:{ "errcode":0, "errmsg":"ok", "respdata": {"return_code":"SUCCESS","return_msg":"OK","appid":"wxd2d16a504f24665e","mch_id":"1800008281","sub_appid":"wx3384418b46d90ce4","sub_mch_id":"1711264426","nonce_str":"1pgWeahjn7WBEWAf","sign":"417CCF5979D90A0F9E2D6B06C8E09A1E","result_code":"FAIL","err_code":"INVALID_REQUEST","err_code_des":"201 商户订单号重复","payment":{"appId":"wx3384418b46d90ce4","timeStamp":"1745131798","nonceStr":"1pgWeahjn7WBEWAf","package":"prepay_id=","signType":"MD5","paySign":"3AC72DEAEE5005874A87D29F63DB28B5"}} }
开始觉得是代码错误,尝试了几次新生成的out_trade_no 还是同样的错误,于是,在下单之前先查询订单,收到的提示是这样的:
查询订单:
request:{"out_trade_no":"29","sub_mch_id":"1711264426"}
response:{ "errcode":0, "errmsg":"ok", "respdata": {"return_code":"SUCCESS","return_msg":"OK","appid":"wxd2d16a504f24665e","mch_id":"1800008281","sub_appid":"wx3384418b46d90ce4","sub_mch_id":"1711264426","nonce_str":"lgnUuWcrlEVYXfUT","sign":"1B1052EF3B36E997281541F7CE9091EE","result_code":"FAIL","err_code":"PARAM_ERROR","err_code_des":"子商户号和订单信息不匹配","coupon_id_list":[],"coupon_type_list":[],"coupon_fee_list":[]} }
这里提示“子商户号和订单信息不匹配”,说明商户号下不存在这个单,打算重新更换单号的拼接格式,但没法确定哪些单号会出现这样的问题,难说某一天产生的新单号又出现重复了,然后支付流程就走不下去了。
回答关注问题邀请回答
收藏

1 个回答

  • 北望沣渭
    北望沣渭
    04-20
    "out_trade_no":"29"
    

    你这商户订单号长度太短了,出现重复概率及其大,建议16字节以上

    04-20
    有用
    回复 2
    • 黑蝙蝠中队^_^
      黑蝙蝠中队^_^
      04-20
      我已经换了更长的单号格式了,但不知道是哪里的订单跟我的订单重复,担心的是新的格式万一哪一天有和这个不知道哪里的单号重复了
      04-20
      回复
    • 北望沣渭
      北望沣渭
      04-20回复黑蝙蝠中队^_^
      官方「重复」的计算方法是 sub_mch_id + out_trade_no 联合类型,你只要保证在你的商户号下订单号是唯一的就不用考虑其他可能性了
      04-20
      回复
登录 后发表内容
问题标签