常见错误指引

更新时间:2026.05.25

1. 报错原因自查指引

 

常见报错原因概览:

  1. 签名值有误

  2. 响应超时(接口一 2s,接口二 3s)

  3. 传参有误(openid,sub_openid,appid,sub_appid)

  4. 参数前置配置有误

1.1. 签名值有误

微信侧提供了解密,验签,生成签名头Authorization等工具类代码,

Java_SDK&开发工具|微信支付商户文档中心

Go_SDK&开发工具|微信支付商户文档中心

1.1.1. 生成的签名值错误:

可以使用该验签工具生成签名,如果和机构代码生成的签名值不一致,则说明代码生成签名方法有问题。

1.1.2. Authorization头错误:

a. Authorization”首字母没有大写

b. 签名信息之间没有用逗号“,”作分隔

c. serial_no= 商户API证书序列号

1.1.3. 签名串错误:

1.1.4. body错误

  • 字段顺序不一致:用http返回包的body。

  • body缺少必填参数:境外钱包间联受理环境支持指引参考最新开发文档。

1.1.5. 证书密钥需更新

  • 实际使用的证书密钥不是邮件中登记配置的鉴权从业机构号的配套证书密钥;

  • 证书已过期;

  • 证书序列号与证书不匹配;

  • 微信支付公钥,每个机构都不一样。

商户证书序列号可以群内请技术助手帮忙查询,但是证书密钥只能自己登陆平台下载。

证书密钥下载指引:获取商户API证书和私钥获取APIv3密钥获取微信支付公钥

 

1.2. 响应超时

响应时间限制:第一个【查询商户信息接口】 2s内响应;第二个【推送订单信息接口】3s内响应

 

1.3. 传参

  • sub_openid 与 openid 二选一传

  • 将微信支付生成的 openid 传到 sub_openid 的时候,对应要传 sub_appid;传到 openid 的时候,对应要传 appid。

 

1.4. 参数配置

  • 证书密钥不匹配:配置的鉴权商户号和加验签使用的证书密钥不是一套。

  • 测试码牌的前缀未配置,扫码无法走到网关:群内联系微信支付对接运营更新配置。

  • 鉴权商户号类型(从业机构号/服务商号/渠道商号)错误,导致交易被拦截:群内联系工作人员更新配置。

 

1.5. 证书和密钥说明

商户侧解密

APIv3密钥

回调使用,微信侧使用APIv3密钥加密,商户侧使用APIv3密钥解密

商户侧验签(二选一)

平台证书

微信侧使用平台证书私钥生成签名,商户侧使用平台证书公钥验证签名

微信支付公钥

微信侧使用微信支付私钥生成签名,商户侧使用微信支付公钥验证签名

商户侧签名

商户API证书

商户侧使用商户API证书私钥(apiclient_key.pem)生成签名,微信侧使用商户API证书公钥验证签名

注意:平台证书和微信支付公钥都是用于v3版本接口的验签及敏感信息加密,公钥没有有效期,便于维护,平台证书则需要每5年更换一次。

 

1.6. 商户号的规则

1、响应头的 mchid ,验签,解密和签名,使用邮件配置的鉴权商户号的证书密钥;响应头的mchid不用和响应体的mch_id一致。

2、响应体里的 sub_mch_id 与 mch_id 要有受理关系(父子关系),即 mch_id 可以填写从业机构号或渠道号;同时后续的统一下单也需要使用一样的mch_id和sub_mch_id。