下载平台证书
更新时间:2024.09.13||
| 提示 如果自行实现验证平台签名逻辑的话,需要注意以下事项: 程序实现定期更新平台证书的逻辑,不要硬编码验证应答消息签名的平台证书。 定期调用该接口,间隔时间小于12 小时。 加密请求消息中的敏感信息时,使用最新的平台证书(即:证书启用时间较晚的证书)。 首次下载证书,可以使用微信支付提供的证书下载工具。 该接口没有query参数或者path参数,仅需要必要的头部信息,如签名认证信息等。 由于证书存在有效期的限制,微信支付会不定期地更换平台证书以确保交易安全,证书过期前会提前把新证书加入到平台证书下载列表中。
|
|
接口说明
接口的频率限制: 单个商户号1000 次/s
请求方式:【GET】/v3/certificates
请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点
【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看
请求参数
获取商户当前可用的平台证书列表。微信支付提供该接口,帮助商户后台系统实现平台证书的平滑更换。该请求无需身份认证信息之外的其他参数。
Header HTTP头参数
Authorization 必填 string
Accept 必填 string
请求示例

1curl -X GET \
2 https://api.mch.weixin.qq.com/v3/certificates \
3 -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4 -H "Accept: application/json"”
5
应答参数
折叠全部参数
data 必填 array[object]
【验签时使用的平台证书序列号】平台证书的详情,包括此资源的所有定义,业务方需要自行添加
 | 属性 |
| serial_no 必填 string(32) 【证书序列号】 平台证书的主键,唯一定义此资源的标识
effective_time 选填 integer 【证书启用时间】 启用证书的时间,时间格式为RFC3339。每个平台证书的启用时间是固定的。
expire_time 选填 integer 【证书弃用时间】 弃用证书的时间,时间格式为RFC3339。更换平台证书前,会提前24小时修改老证书的弃用时间,接口返回新老两个平台证书。更换完成后,接口会返回最新的平台证书。
encrypt_certificate 必填 object 【证书信息】 证书内容  | 属性 | | algorithm 必填 string(32) 【加密证书的算法】 对开启结果数据进行加密的加密算法,目前只支持AEAD_AES_256_GCM。
nonce 必填 string(16) 【加密证书的随机串】 对应到加密算法中的IV。
associated_data 选填 string(16) 【加密证书的附加数据】 加密证书的附加数据,固定为“certificate"。
ciphertext 必填 string(1048576) 【加密后的证书内容】 使用API KEY和上述参数,可以解密出平台证书的明文。证书明文为PEM格式。(注意:更换证书时会出现PEM格式中的证书失效时间与接口返回的证书弃用时间不一致的情况) |
|
应答示例
200 OK

1{
2 "data": [
3 {
4 "serial_no": "5157F09EFDC096DE15EBE81A47057A7232F1B8E1",
5 "effective_time ": "2018-06-08T10:34:56+08:00",
6 "expire_time ": "2018-12-08T10:34:56+08:00",
7 "encrypt_certificate": {
8 "algorithm": "AEAD_AES_256_GCM",
9 "nonce": "61f9c719728a",
10 "associated_data": "certificate",
11 "ciphertext": "sRvt… "
12 }
13 },
14 {
15 "serial_no": "50062CE505775F070CAB06E697F1BBD1AD4F4D87",
16 "effective_time ": "2018-12-07T10:34:56+08:00",
17 "expire_time ": "2020-12-07T10:34:56+08:00",
18 "encrypt_certificate": {
19 "algorithm":"AEAD_AES_256_GCM",
20 "nonce":"35f9c719727b",
21 "associated_data": "certificate",
22 "ciphertext": "aBvt… "
23 }
24 }
25 ]
26}