WeChat Pay failed to verify the refund certificate

try {  
            keyStore.load(instream, mchid.toCharArray());//;id  
        } finally {  
            instream.close();  
        }
java.io.IOException: keystore password was incorrect
    at sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:2015)
    at java.security.KeyStore.load(KeyStore.java:1445)
    at com.chw.payment.wechatpay.util.ClientCustomSSL.doSslPost(ClientCustomSSL.java:57)
    at com.chw.payment.wechatpay.util.WechatPay.wepayAppRefound(WechatPay.java:533)
    at com.chw.job.ddTask.refund(ddTask.java:134)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:64)
    at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:53)
    at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:748)

parameters are fine, exception while verifying certificate


has been solved. I originally thought it was the problem of Wechat updating the root certificate on May 29, but later found that it was the problem of api payment certificate. The encryption and decryption failed when the merchant number and other information did not change and the encryption and decryption failed. After re-downloading the api payment certificate, it returned to normal


this is the secret key mismatch


Hello, have you solved it?

Menu