1.待签名字符串及参数顺序如下:
signStr = 'appId=' + appId + '&nonceStr=' + nonceStr + '&package=' + pack + '&signType=MD5&timeStamp=' + timeStamp + '&key=XXXXXXXX';
2.得到的签名字符串跟官方的签名工具做比对是一样的(工具地址:https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1)
3.支付唤起微信提示:支付验证签名失败
求指点:谢谢
请按照以下几点进行排查:
1、使用签名检查工具选自定义参数校验签名算法是否有误;
2、确认秘钥是否有误,要使用发券商户号的秘钥,秘钥是在商户平台配置,如果不确定密钥是否正确,可以尝试设置与原先设置的一样的密钥,密钥设置指引;
3、确认接口实际的请求参数与生成签名原串的参数一致,不能增加或缺少参数(可通过打印签名原串进行排查);
4、确认参数的大小写,参数名与接口文档一致;
5、签名原串的参数值使用原始值,不需要encode;
6、接口需要使用UTF-8编码。
签名工具不会校验密钥是否正确