JSAPI调起支付
更新时间:2024.11.18通过JSAPI下单接口获取到发起支付的必要参数prepay_id,然后使用微信支付提供的前端JS方法调起公众号支付。
|
接口说明
支持商户:【普通服务商】
字段说明
请求参数
此API无后台接口交互,需要将列表中的数据签名
appId
必填 string(32)
【应用ID】商户申APPID请的公众号对应的AppID,由微信支付生成,可在公众号后台查看
timeStamp
必填 string(32)
【时间戳】时间戳,标准北京时间,时区为东八区,自1970年1月1日 0点0分0秒以来的秒数。注意:部分系统取到的值为毫秒级,需要转换成秒(10位数字)。
nonceStr
必填 string(32)
【随机字符串】随机字符串,不长于32位。
package
必填 string(128)
【订单详情扩展字符串】JSAPI下单接口返回的prepay_id参数值,提交格式如:prepay_id=***
signType
必填 string(32)
【签名方式】签名类型,默认为RSA,仅支持RSA。
paySign
必填 string(256)
【签名】签名,使用字段AppID、timeStamp、nonceStr、package计算得出的签名值
请求示例
JSAPI调起支付的参数需要按照签名规则进行签名计算
1、构造签名串
参与签名字段及格式:
数据举例:
2、计算签名值
绝大多数编程语言提供的签名函数支持对_签名数据_ 进行签名。强烈建议商户调用该类函数,使用商户私钥对_待签名串_进行SHA256 with RSA签名,并对签名结果进行_Base64编码_得到签名值。
下面我们使用命令行演示如何生成签名
signType参数不参与签名,但需要传递,默认值为“RSA”,生成的签名需要通过字段paySign传递
JSAPI调起支付的参数需要按照签名规则进行签名计算
1、构造签名串
参与签名字段及格式:
数据举例:
2、计算签名值
绝大多数编程语言提供的签名函数支持对_签名数据_ 进行签名。强烈建议商户调用该类函数,使用商户私钥对_待签名串_进行SHA256 with RSA签名,并对签名结果进行_Base64编码_得到签名值。
下面我们使用命令行演示如何生成签名
signType参数不参与签名,但需要传递,默认值为“RSA”,生成的签名需要通过字段paySign传递