收藏
回答

服务商退款签名错误?

https://api.mch.weixin.qq.com/secapi/pay/refund

微信服务商模式,帮商户退款接口,一直返回签名错误,但是拿着请求的参数去https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1这个地址验证 返回的是签名正确,这是为什么呢,签名时候使用的key是需要用服务商的还是商户自己的呢

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

2 个回答

  • 微信支付技术助手8
    微信支付技术助手8
    2020-07-23

    请按照以下几点进行排查:

    1、使用签名检查工具(https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1)校验签名算法是否有误

    2、确认秘钥是否有误(服务商模式使用服务商商户号秘钥,秘钥是在商户平台配置,如果同一商户号调用其它接口成功可排除是秘钥问题)

    3、确认接口实际的请求参数与生成签名原串的参数一致,不能增加或缺少参数(可通过打印签名原串进行排查)

    4、确认参数的大小写,参数名与接口文档一致

    5、签名原串的参数值使用原始值,不需要encode

    6、接口需要使用UTF-8编码

    服务商模式下的签名KEY,是需要用服务商的,子商户得不需要。

    2020-07-23
    有用
    回复 2
    • iceman
      iceman
      2020-08-31
      遇到同样问题, 请求其他接口(查询订单信息)都是正确的, 这个接口就卡在签名这里,有其他可能错误吗?  打印的签名原串和生成的签名,通工具比较都完全一样的。
      2020-08-31
      回复
    • 稻草人
      稻草人
      2020-11-13回复iceman
      你好,我遇到和你一样的问题,程序生成出来的秘钥和校验工具生成秘钥相同,但是请求退款接口回执报错“签名错误”请问你是怎么解决的?
      2020-11-13
      回复
  • 浪漫手机
    浪漫手机
    2020-07-23

    服务商模式,签名需要用到是服务商对应的key,而不是子商户的key

    2020-07-23
    有用
    回复 1
    • iceman
      iceman
      2020-08-31
      遇到同样问题, 请求其他接口(查询订单信息)都是正确的, 这个接口就卡在签名这里,有其他思路吗
      2020-08-31
      回复
登录 后发表内容
问题标签