微信支付API V3
Request-ID: 08F5DFCB89061010188BBF8C5820D61628EAEB05-269546507
微信支付商户平台,【账户中心】->【账户设置】->【API安全】拿到的证书序列号,证书是apiclient_key.pem
请求接口https://api.mch.weixin.qq.com/v3/businesscircle/points/notify ,一直是商户证书序列号有误。请使用签名私钥匹配的证书序列号
科普一下:
- 文件名是 apiclient_key.pem 的,是 「商户私钥」文件
- 文件名是 apiclient_cert.pem 的,是 「商户证书」文件
- 【账户中心】->【账户设置】->【API安全】能看到的证书序列号,是「商户证书」序列号
- 请求头`Authorization: WECHATPAY2-SHA256-RSA2048 mchid="${mchid}",serial_no="${serial}",timestamp="${timestamp}",nonce_str="${nonce}",signature="${signature}"` 要填对「商户证书」序列号,声明头部的signature是用的哪张「商户证书」公钥签名的,服务端会去找这个序列号对应的「商户公钥」验签;
{"code":"SIGN_ERROR","message":"商户证书序列号有误。请使用签名私钥匹配的证书序列号"}
返回的内容如果类似上述文本,即你上送的Authorization头有误,请仔细核对。
这错误就是你请求的时候用的商户序列号不对导致的,自己好好对比一下,看看是不是该商户下的证书序列号,不行就新申请一个再试