微信支付平台证书过期(报错:证书序列号错误)已解决

原因是因为微信证书的有效期是5年,近30天会进行灰色发布所有会导致大部分订单回调没问题,偶尔有些订单会报错:证书序列号错误

解决方法:

先按照下面代码去执行下载新的证书,这时候会下载2个,一个是老的一个是新的证书

 //用于证书解密的密钥
    private String apiV3key = "";
    // 商户号
    private static String mchId = "";
    // 商户证书序列号
    private static String mchSerialNo = "";
    // 商户私钥
    private static String mchPrivateKeyFilePath = "";
    // 微信支付平台证书
    private static String wechatpayCertificateFilePath = "";
    //下载成功后保存证书的路径
    private static String outputFilePath = "";

    @Test
    public void testCertDownload() {
        String[] args = {"-k", apiV3key, "-m", mchId, "-f", mchPrivateKeyFilePath,
                "-s", mchSerialNo, "-o", outputFilePath,"-c",wechatpayCertificateFilePath};
        System.out.println();
        CommandLine.run(new CertificateDownloader(), args);
    }

这时候就需要在回调和支付的时候进行判断:

回调的:

支付的:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值