概述-APIv3如何签名和验签

更新时间:2024.08.22

# 概述

如果你是第一次接入微信支付API v3接口,请仔细阅读以下系列文档,并跟着示例操作一次,这将有效帮忙你理解签名验签机制,解决签名验签报错。

在微信支付API v3的所有请求应答场景,开发者都需要进行签名验签。

1、所有请求商户都需要使用【商户API证书私钥】对请求进行签名,微信支付会在收到请求后使用【商户API证书公钥】进行签名的验证。如果签名验证不通过,微信支付API v3将会拒绝处理请求,并返回401 Unauthorized。

2、所有应答,微信支付都会使用平台证书私钥签名,商户需要使用平台证书公钥验证签名(除了文件下载接口和首次调用平台证书下载接口)
alt text

# 调起支付前端签名

开发者在前端调起JSAPI支付、App支付、小程序支付时,需要计算签名,具体可参考以下说明

  1. JSAPI调起支付签名

  2. App调起支付签名

  3. 小程序调起支付签名

# 请求接口后端签名

开发者在请求微信支付后端接口时,需要计算签名,构造签名串和参数有关: 具体可阅读以下说明

  1. 请求参数里有Query(查询参数),如何计算签名
  2. 请求参数里带Path参数(路径参数),如何计算签名
  3. 请求参数里带Body参数(包体参数),如何计算签名
  4. Body参数为空的,如何计算签名
  5. 图片上传类接口,如何计算签名

# 验证签名

所有的应答都需要开发者验证签名,具体可阅读以下文档

  1. 非文件/图片下载接口如何验证签名
  2. 文件/图片下载接口如何验证签名
  3. 签名工具如何使用
反馈
咨询
目录