还在为开发调试头疼?来来来,这里有一份微信支付APIv3脚本,真金白银开源了!
脚本名称:
Name:微信支付 APIv3
脚本说明:
本脚本是基于 微信支付 APIv3 的 Postman请求前置脚本(Pre-Request Script)进行完善,补充了微信支付普通商户所有已知公开接口,每个接口请求预置了请求参数示例与请求成功返回的参数示例,帮助商户开发者、测试人员以及小白用户也可以快速上手。
仅修改原脚本变量为常用叫法,无其他修改部分:
merchantId->mchid
merchantSerialNo->merchant_serial_no
merchantPrivateKey->apiclient_key.pem
使用前提条件
postman,建议注册一个账户,便于使用它各种功能,例如同步。
有一个微信支付商户号,支持微信支付直连普通商户、微信支付直连特约商户,不支持微信二级子商户。
商户 API 私钥与商户证书序列号:商户API私钥是在商家平台申请商户API证书时,会生成商户私钥,并保存在本地证书文件夹的文件 apiclient_key.pem 中,商户商户序列号可在商家平台->账户中心->API安全->管理API证书查询到。
快速开始
1、使用Fork 方式导入脚本
1.1、点击[图片]进入向导,如下图所示。
[图片]
1.2:点击 Fork Collection 进入下一步,填入标签 Fork Label 并选择目的工作台 Workspace。一般情况下,导入个人工作台 My Workspace 即可。
如未登录账户,会跳转到账户登录页面,如无账户建议先去注册一个
[图片]
1.3点击 Fork Collection 完成导入。在你指定的 workspace 中可以看到《微信支付 APIv3》了。
[图片]
2、配置Environment
环境(Environment) 是一组变量 (Varibles) 的集合。 脚本从环境中读取变量,用来计算请求的签名。
你可以从《微信支付 APIv3》提供的 商户参数模版 中 fork 一个空环境到自己的工作台。
[图片]
接下来,在你工作台的 Enviroments 中找到新建的环境,点击 Add a new varialbe 添加新的变量:
变量名
是否必填
描述
备注
server_url
必填
微信支付接口域名
固定值:https://api.mch.weixin.qq.com
mchid
必填
微信支付商户号
纯数字
merchant_serial_no
必填
商户 API 证书序列号
apiclient_key.pem
必填
PEM 格式的商户 API 私钥
以 -----BEGIN PRIVATE KEY----- 开始的 PEM 格式的商户 API 私钥。
appid
必填
用于微信支付接口请求中的APPID
APPID需要与填写的mchid有绑定关系
openid
选填
用于微信支付接口请求中的openid
如不配置全局变量,请求时需要将参数中的变量openid替换为实际openid值
一组常见配置如下图所示:
[图片]
3、发送测试请求
此处建议,使用桌面版 Postman app 发送请求,速度更快,体验更好!
现在回到工作台的请求构造界面,填入请求方法、URL、请求参数、Body 等参数。
工作台预置了微信支付普通商户所有请求样例供开发者参考,开发者也可以参考请求样例,构造自己的请求。
最后,选择你之前配置的 Environment,再点击地址栏右侧的Send按钮,发送请求。
[图片]
常见问题
1、发送请求时遇到错误提示“Error: Too few bytes to parse DER.”或者“Too few bytes to read ASN.1 value.”
A:通常是环境 Environments 里配置的变量 merchantPrivateKey 填写有误导致的。脚本接收的私钥,以 -----BEGIN PRIVATEKEY----- 开始,以 -----END PRIVATE KEY----- 结束的一串字符串。
2、为什么我发送请求很慢?
A:如果你使用的网页版 Postman,请使用桌面版 Postman app。因为浏览器中跨域资源共享(CORS)的限制,网页版发送请求是由 Postman 后台中转的。
WeChatPay Developers QQ Group
ID:684379275