收藏
回答

微信支付报关提示签名验证失败

之前已经能正常报关。也使用了微信网页上的验签工具都是通过的。同样的KEY,支付能正常调起,但是报关就提示签名验证失败

<xml>

	<sign> </sign>

	<appid> </appid>

	<mch_id> </mch_id>

	<out_trade_no> </out_trade_no>

	<transaction_id> </transaction_id>

	<customs> </customs>

	<mch_customs_no> </mch_customs_no>

	<cert_id> </cert_id>

	<name></name>

</xml>



最后一次编辑于  2020-09-25
回答关注问题邀请回答
收藏

2 个回答

  • 田园
    田园
    2020-12-17

    同样的问题,验证工具也通过了,也是挨个检查没问题,就是说签名失败。

    <xml><action_type>ADD</action_type>

    <appId>wxbxxxxxxxx</appId>

    <cert_id>buyerIdNumber</cert_id>

    <cert_type>IDCARD</cert_type>

    <customs>GUANGZHOU_ZS</customs>

    <duty>taxTotal</duty>

    <mch_customs_no>xxxxxx</mch_customs_no>

    <mch_id>xxxxxxx</mch_id>

    <name>buyerName</name>

    <out_trade_no>orderNo</out_trade_no>

    <sign>xxxxxxxxxxxxxxxxxxxxxx</sign>

    <transaction_id>payTransactionId</transaction_id>

    </xml>

    2020-12-17
    有用
    回复
  • 微信支付技术助手8
    微信支付技术助手8
    2020-09-25

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

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

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

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

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

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

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

    7、签名不需要参数nonce_str,请去掉


    2020-09-25
    有用
    回复 5
    • Viking
      Viking
      2020-09-25
      以上7点全部确认过了。没有解决问题,1和2在提问里面已经有的 3~7也全部走过一遍了。。。
      2020-09-25
      回复
    • Viking
      Viking
      2020-09-25
      而且我拿昨天报关成功的报文,原样重推也是提示签名失败
      2020-09-25
      回复
    • 微信支付技术助手8
      微信支付技术助手8
      2020-09-28回复Viking
      加一下微信wepayTS8(备注),拉群给你看一下
      2020-09-28
      回复
    • A成少
      A成少
      2021-07-30回复微信支付技术助手8
      怎么拉群
      2021-07-30
      回复
    • felixfei
      felixfei
      2022-04-16
      秘钥、参数、签名工具都检查了,还是签名验证失败
      2022-04-16
      回复
登录 后发表内容
问题标签