收藏
回答

微信支付验签工具测试通过但微信平台返回签名错误

hello

我想在微信小程序里开发个带支付功能的应用,使用的支付类型是小程序支付。微信商户已经和小程序建立好关联。

这是我准备验签的字符串

appid=wxee17f***adc&

body=test product&

mch_id=153***001&

nonce_str=NFXphHtwDAkCnyIW&

notify_url=***&

openid=***&

out_trade_no=001&

spbill_create_ip=***&

total_fee=1&

trade_type=JSAPI&

key=***


我程序代码生成的签名和微信提供的签名工具一致,用我生成的签名请求微信api接口返回return_code:FAIL, return_msg:签名错误。问题可能出现在参数值上。针对字符串中的参数值,我有以下问题,麻烦帮忙解答一下。谢谢拉。

1:spbill_create_ip是客户端设备的ip还是我后台应用服务器的ip

2:key的设置在哪里?我看文档说在微信商户–>账户设置–>API安全–>密钥设置,我在我的商户后台看到有设置

API证书,APIv3密钥,API密钥,现金红包api安全,企业付款API安全,请问我需要设置那个或者那几个呢?

3:openid在客户端首次请求后台就能获取到,我就直接使用那个openid还是需要重新在后台获取一遍openid

期待您的回复,谢谢先。


回答关注问题邀请回答
收藏

4 个回答

  • 微信支付技术助手
    微信支付技术助手
    2019-05-14

    你好,签名请参看文档指引https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3

    2019-05-14
    有用
    回复
  • 全东亚
    全东亚
    2019-08-17

    我也是,在微信官方工具验签正确,就是请求说参数错误。。。网上说的问题我都排除了  就是不行,微信官方也不给解决一下。。。

    2019-08-17
    有用 4
    回复
  • 普昂月半
    普昂月半
    2019-05-15
    1. 后台

    2. api证书 api密钥 api证书支付用不到 退款才用

    3. openId哪种方式都行

    4. 感觉没什么错就重置api密钥,我就是重置之后就好了,啥都没改

    2019-05-15
    有用 1
    回复
  • 姜东子弟
    姜东子弟
    2019-11-19

    我也遇到这个问题,加签的结果跟微信官方工具加签的数据一致,调用接口报签名错误!兄弟们有好的解决方法吗?

    找到原因啦:body不能是中文的,用下英文的测试成功;

    即字段的数据格式有问题,调整成UTF-8的格式即可


    https://blog.csdn.net/ling1234ling1234/article/details/81353909

    2019-11-19
    有用
    回复
登录 后发表内容