{"errcode":272758293,"graphid":33569203,"hint":"fcak4n","msg":"签名错误","time":"2024-04-26 17:21:33"}
如果你遇到上述报错可以按以下方式排查:
一、验签问题
签名错误请按照以下几点进行排查:
1、使用签名检查工具(https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1)选自定义参数校验签名算法是否有误
2、确认秘钥是否有误,要使用发券商户号的秘钥,秘钥是在商户平台配置,如果不确定密钥是否正确,可以尝试设置与原先设置的一样的密钥。密钥设置指引请参考: https://kf.qq.com/faq/180830UVRZR7180830Ij6ZZz.html
3、确认接口实际的请求参数与生成签名原串的参数一致,不能增加或缺少参数(可通过打印签名原串进行排查)
4、确认参数的大小写,参数名与接口文档一致
5、签名原串的参数值使用原始值,不需要encode
6、接口需要使用UTF-8编码
社区分享-微信小程序发券插件至验签流程:
https://developers.weixin.qq.com/community/develop/article/doc/000046f0f1c4306a409c8c5dd5b813
二、数量问题
1、在小程序发券插件的API文档上,微信有强调"发券参数,一次最多10张"。
https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter9_3_1.shtml
2、除此以为我们还发现,如果你请求获取发券参数时生成的sign对应的数量和小程序调发券插件调用时发券数量不一致时,也会报签名错误,这块需要注意。