兄弟拟解决了吗,我也按照文档给的python代码转换为java代码测试过了,签名都是一样的,但是一去使用就是签名错误
b2b支付fail invalid signature 702002?加密算法按照微信官方文档的验证过了,是正确的; 加密使用的sessionkey也用微信的checksession接口检查过了,是有效的; 但是就是一直都是报errMsg: "requestCommonPayment:fail webapi wxa createmidasorder:fail invalid signature" errno: 702002 签名无效的问题
08-06哥,你这个解决了吗,解决了的话是怎么解决的,可以说一下吗
wx.requestCommonPayment 用户态签名校验失败?public static String calcSignature(String postBody, String sessionKey) { // 输入验证 if (postBody == null || postBody.isEmpty() || sessionKey == null || sessionKey.isEmpty()) { return null; } try { // 准备签名消息 byte[] needSignMsg = postBody.getBytes("UTF-8"); // 创建HMAC-SHA256实例 Mac sha256Hmac = Mac.getInstance("HmacSHA256"); SecretKeySpec secretKey = new SecretKeySpec(sessionKey.getBytes("UTF-8"), "HmacSHA256"); sha256Hmac.init(secretKey); // 生成签名 byte[] hash = sha256Hmac.doFinal(needSignMsg); // 将字节数组转换为十六进制字符串 StringBuilder hexString = new StringBuilder(); for (byte b : hash) { String hex = Integer.toHexString(0xFF & b); if (hex.length() == 1) { hexString.append('0'); } hexString.append(hex); } // 返回签名 return hexString.toString(); } catch (NoSuchAlgorithmException | InvalidKeyException | java.io.UnsupportedEncodingException e) { System.err.println("生成签名时发生错误: " + e.getMessage()); return null; } } String signature = calcSignature(JSON.toJSONString(signData), sessionKey); 为什么还是签名校验失败,返回requestCommonPayment:fail webapi_wxa_createmidasorder:fail invalid signature" 702002。 哪里需要修改呢?
08-06兄弟你这个成功了吗,我的错误和你一样
b2b下单接口 fail invalid signature 702002 问题?wx.requestCommonPayment 报错:fail invalid signature 702002(env: Windows,mp,1.06.2409140; lib: 3.6.5);根据官方的"参考的python脚本"给的示例数据,得到的签名数据没有问题;使用自己的sessionKey,以及appKey出现上面的报错,uri参数值为requestCommonPayment; 经检查,sessionKey未过期,因为签名前调用了checksession接口验证sessionKey有效;appKey也与env=0(正式环境对应); 唯一不确定的是uri参数,官方文档没找到wx.requestCommonPayment对应的uri是什么,只是看有人回复说是"requestCommonPayment", 想问下问题出在哪里? 参数: mode: "retail_pay_goods" paySig: "3023cf440a89f4dae2cca7b2c0c71d69e5259b77b12f1aa7b3b115e1e2c53aaf" signature: "fd173447c69402adae043382905075a7d8ca22e4883f4af66f504c3e0538f1ab" signData: {"mchid":"1702994659","out_trade_no":"test1244","description":"测试测试","amount":{"order_amount":1,"currency":"CNY"},"attach":"test_attach","product_info":{"product_list":[{"spu_id":"spu123456","sku_id":"sku123","title":"QQ长鹅","path":"pages/index","head_img":"https://mp.weixin.qq.com/123","category":"玩偶","sku_attr":"50cm","org_price":5000,"sale_price":4000,"quantity":5}]},"delivery_type":2,"env":0}
08-06求求大佬们帮帮孩子吧,催了好久了,从一个是的普通支付(jsp支付)不行,说是小程序这边必须添加类目的操作,添加之后那个支付就不行了,只能用这个b2b支付了,但是这个支付的文档没有怎么看懂啊!
b2b支付的调用,这个后端怎么调用啊,没有接口吗,还是说只能前端去调用呢?[图片]
08-042025-07-07 15:15:30.418 ERROR 8900 --- [nio-8086-exec-3] c.szeastroc.mall.base.utils.WxPayCommon : 合单支付失败 status=403 body={"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 2025-07-07 15:15:30.418 INFO 8900 --- [nio-8086-exec-3] c.wpt.common.exception.ExceptionAspect : ------------------------------------------ 2025-07-07 15:15:30.419 INFO 8900 --- [nio-8086-exec-3] c.wpt.common.exception.ExceptionAspect : 系统开小差了,请稍后重试,错误信息为:合单支付请求异常:{"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 2025-07-07 15:15:30.419 INFO 8900 --- [nio-8086-exec-3] c.wpt.common.exception.ExceptionAspect : 合单支付请求异常:{"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 2025-07-07 15:15:30.419 INFO 8900 --- [nio-8086-exec-3] c.wpt.common.exception.ExceptionAspect : ------------------------------------------ java.lang.RuntimeException: 合单支付请求异常:{"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 我最新的,访问时间也是一样的
调用微信支付合并下单API(JSPAPI)提示没有权限,问题是商户已经开通了权限?[图片] 商户号是:1711353377 2025-07-07 15:03:18.880 ERROR 8900 --- [nio-8086-exec-2] c.szeastroc.mall.base.utils.WxPayCommon : 合单支付失败 status=403 body={"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 2025-07-07 15:03:18.881 INFO 8900 --- [nio-8086-exec-2] c.wpt.common.exception.ExceptionAspect : ------------------------------------------ 2025-07-07 15:03:18.881 INFO 8900 --- [nio-8086-exec-2] c.wpt.common.exception.ExceptionAspect : 系统开小差了,请稍后重试,错误信息为:合单支付请求异常:{"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 2025-07-07 15:03:18.881 INFO 8900 --- [nio-8086-exec-2] c.wpt.common.exception.ExceptionAspect : 合单支付请求异常:{"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 2025-07-07 15:03:18.881 INFO 8900 --- [nio-8086-exec-2] c.wpt.common.exception.ExceptionAspect : ------------------------------------------ java.lang.RuntimeException: 合单支付请求异常:{"code":"NO_AUTH","message":"商户号该产品权限未开通,请前往商户平台>产品中心检查后重试"} 这是错误信息说是没有权限,这是为什么,这个是在小程序中调用的JSPAPI 求大佬帮助一下吧!
07-07