评论

为什么我的微信商户里找不到 微信支付公钥入口(总结分享)

为什么我的微信商户里找不到 微信支付公钥入口

怎么还这么多问平台证书和公钥入口的啊,再写一遍

为什么新商户号,申请平台证书报错:无可用的平台证书,请在商户平台-API安全申请使用微信支付密钥??

为什么我的微信商户里找不到 微信支付公钥入口??

平台证书要过期了怎么办?没法重新申请平台证书,也没有切换公钥的入口,怎么办??

支付公钥灰度期间请求中Wechatpay-Serial是平台证书的ID??

为什么有得新注册得商户有微信支付公钥有的只有平台证书??

微信公钥验签错误怎么办??

如何从平台证书切换成微信支付公钥??

后台应答比例怎么不到100%??比例怎么不变一直是0??

商户证书、平台证书、公钥文件、v2和v3密钥都是干嘛的,傻傻分不清??

1、首先,【平台证书】有效期是5年会过期,微信支付差不多去年2024年底时间推出【微信支付公钥】(公钥不会过期)代替平台证书进行 v3接口的响应验签/回调验签,敏感信息加密(如果只接v2接口的人不用问啦)

快速区分:(或者自己看文档)https://pay.weixin.qq.com/doc/v3/merchant/4012153196

公钥ID格式类似:PUB KEY ID 0118000800002025034698789500000000

平台证书序列号格式类似(和商户api证书序列号格式一样):9751DF27C233F665E033BBDBFFB7E85DAC8B

平台证书下载后的文件名类似于wechatpay_471986577B4AFWI67102B44B65E04B9751CE12.pem


2、其次,

a、新商户:有的一申请后台就有公钥,直接商户后台下载使用就行。

有的一申请没有公钥,还是平台证书入口。可以选择:1、继续接口下载平台证书,快过期时切换公钥模式; 2、直接切换公钥模式(如何获取切换看下一条)


b、旧商户:平台证书未过期的话,想提前切换公钥模式(看下一条),或者已经过期了,还没入口(看下一条);

不想换公钥,想换回平台证书?不行(刚开始不行,现在又可以了hhhhh,因为很多人系统一开始就是平台证书,新拓展商户号不愿意用公钥,然后支付侧出了个商户号可以后台申请退回平台证书模式https://pay.weixin.qq.com/doc/v3/merchant/4015419357


3、如何切换公钥?

后台有公钥入口,就找直接【申请下载】按钮即可

后台没有公钥入口,找人工申请,找人工申请,找人工申请!!!(后来好像有优化 可以生成商户API证书时 直接展示公钥入口了 可以自己尝试下载了。没有入口的接着找人工)

在线人工:https://support.pay.weixin.qq.com/online-service?from=wechatpay

或者私信联系质量助手(这个是专门负责证书切换的助手号,可能回复的慢一些):https://developers.weixin.qq.com/community/personal/oCJUsww_D7fM-yG9ntSW-DlVBCU0

4、公钥验签报错?先检查下验签用的哪个证书吧,特别是切换期间的,用之前平台证书那一套的就容易弄混。自己先把响应和回调的头部信息Wechatpay-Serial打印出来看看先。如果证书也对应的话,再按其他签名错误用文档验签工具和指引排查哈,这里只是说切换期间可以重点看看验签用的证书/公钥是否对应

5、后台比例一直是0,代表一直走的平台证书,特别是切换的情景,v3请求时要自己带上请求头Wechatpay-Serial为公钥ID

后台灰度比例一直不到100%,见:应答使用公钥比例=近7天用微信支付公钥调接口次数/近7天v3接口总调用次数(这部分的规则文档都有,不懂想详细理解的可以去看文档https://pay.weixin.qq.com/doc/v3/merchant/4012154180

6、回调灰度比例的话 文档写啦 不能快进的

7、商户API证书、平台证书/微信支付公钥、v2密钥、v3密钥,可参考看下面区分:

商户API证书】:(商户后台申请https://kf.qq.com/faq/161222NneAJf161222U7fARv.html 申请后包含:apiclient_key.pem文件、apiclient_cert.pem文件、apiclient_cert.p12文件);用途:v2只有退款发红包等出资接口要用、v3所有接口请求都要用。5年有效期,过期后要自己要重新申请替换,否则就不能调接口了,所以商户自己要注意自己这个证书的部署和替换

平台证书】:用于响应验签和敏感信息加密。必须用接口请求下载的(sdk的话底层会自动帮你去下载),

平台证书序列号格式类似(和商户api证书序列号格式一样):9751DF27C233F665E033BBDBFFB7E85DAC8B,下载后可以自己保存成一个.pem文件

有效期5年,过期需更换

【微信支付公钥】:功能和平台证书一模一样,就是为了替换平台证书的。没有有效期,商户后台下载,比平台证书好维护一些。

公钥ID格式类似:PUB KEY ID 0118000800002025034698789500000000,下载完就是个.pem文件

v2密钥/v3密钥】后台设置、不能查看、只能重置。所以设置完注意自己和配套商户号保存好。不然后续已经在使用了,换员工了啥的密钥又不知道去哪里了,又要换密码就要注意对线上的影响

v2的签名算法是必须v2密钥的,回调也需要v2密钥解密,比较简单

v3接口请求不需要v3密钥的,因为v3密钥是用来加/解密回调或者证书内容的,所以有人以为自己下单请求和支付都成功了,回调也不应该受v3密钥影响,肯定v3密钥已设置,但实际上没设置v3密钥不影响接口请求,但是回调需要用v3密钥加密成密文后才会发回调,所以不设置v3密钥,微信侧无法加密密文,也不会发回调,商户就会收不到回调。

最后一次编辑于  11-28  
点赞 2
收藏
评论

6 个评论

  • 多啦A梦
    多啦A梦
    12-02

    我是新手,想问一下, 微信支付回调,如果不同商户下单, 回调到同一个回调接口, 怎么进行验签。

    所有商户的微信支付公钥 跟 微信支付公钥ID 是都一样的, 还是说 不同商户之间相互独立且唯一的。能不能根据 微信支付公钥ID 搞一套配置, 然后 维护对应的 商户ID,公钥,私钥,API证书序列号等信息。 然后通过 回调head 中的Wechatpay-Serial 获取到对应的商户信息, 然后进行操作。

    12-02
    赞同
    回复 2
    • loaf
      loaf
      12-08
      多个商户号共用一个回调地址的情况下如何去获取到对应商户号的APIV3key进行回调解密?
      商户可提前自行将所有商户号的微信支付平台证书序列号/公钥ID和商户号进行一对一存储,在收到回调报文时,通过HTTP头部Wechatpay-Serial中的微信支付平台证书序列号/公钥ID,与现已存储好的微信支付平台证书序列号/公钥ID进行对比,就可以得到回调对应的商户号从而获取到对应的APIV3Key进行解密
      12-08
      回复
    • loaf
      loaf
      12-08
      如果服务商模式的话,用的就是服务商的证书密钥,所有服务商的单都是一套证书密钥。但是如果走的是不同商户自己调接口的话,那就是每个商户号有自己的证书,密钥,需要自己维护
      12-08
      回复
  • Yohann
    Yohann
    11-27

    兄弟,微信支付公钥下载下来是一个证书文件和一个公钥keyId么,我的po就只给我一个key说没有公钥文件,我人都麻了,她说她也没权限去点再下载一遍。我现在就想知道是不是真的只有一个keyId

    11-27
    赞同
    回复 1
    • loaf
      loaf
      11-28
      微信支付公钥是在后台下载的一个公钥.pem文件的,公钥ID是后台展示的。只有ID毛用没有,要用文件内容验签和加密的
      11-28
      回复
  • La Marseillaise
    La Marseillaise
    08-26

    老项目用的是 v2 也就是平台证书 现在 我新项目 打算用 v3 但是今天 composer exec 的时候报错 {"code": "RESOURCE_NOT_EXISTS","message": "无可用的平台证书,请在商户平台-API安全申请使用微信支付公钥。"}然后资料说建议你从平台证书模式切换到公钥模式。那么我新项目确实可以重新开发公钥模式 但是老项目我不想改行不行??? 因为老项目找不到人维护了也不好改

    08-26
    赞同
    回复 1
  • 一個小檸檬
    一個小檸檬
    07-30

    请问,我是新的香港服务商,后台没有微信公钥下载的任何按钮,并且尝试下载证书,提示无可用证书,让使用微信公钥。麻烦老师帮忙看下:

    07-30
    赞同
    回复 1
  • peng鹏
    peng鹏
    04-30

    上面的在线人工点进去是ai,发送人工也不能切换到人工

    04-30
    赞同
    回复 2
    • loaf
      loaf
      05-06
      那个人工偶尔会发神经,你工作时间再试试
      05-06
      1
      回复
    • peng鹏
      peng鹏
      05-07回复loaf
      谢谢,我去试试
      05-07
      回复
  • 哄哄
    哄哄
    04-18

    感谢老哥答疑解惑

    04-18
    赞同
    回复
登录 后发表内容