---
url: "https://pay.weixin.qq.com/doc/v2/merchant/4011939566.md"
title: "小程序调起支付API"
doc_id: 4011939566
---

>更新时间：2026.04.03

小程序调起支付数据签名字段列表：

| 字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
| --- | --- | --- | --- | --- | --- |
| 小程序ID | appId | 是 | String | wxd678efh567hg6787 | 微信分配的小程序ID，填写下单时传入的appid，且必需与当前实际调起支付的小程序appid一致，否则无法调起支付<br>注意：appId参数为大写字母“I” |
| 时间戳 | timeStamp | 是 | String | 1490840662 | 时间戳从1970年1月1日00:00:00至今的秒数,即当前的时间 |
| 随机串 | nonceStr | 是 | String | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 随机字符串，不长于32位。推荐[随机数生成算法](https://pay.weixin.qq.com/doc/v2/merchant/4011985891.md) |
| 数据包 | package | 是 | String | prepay\_id=wx2017033010242291fcfe0db70013231072 | 统一下单接口返回的 prepay\_id 参数值，提交格式如：prepay\_id=wx2017033010242291fcfe0db70013231072 |
| 签名方式 | signType | 是 | String | MD5 | 签名类型，默认为MD5，支持HMAC-SHA256和MD5。注意此处需与统一下单的签名类型一致 |

举例如下:

```
//key：商户平台设置的apiv2密钥，可参考该文档设置：https://kf.qq.com/faq/180830UVRZR7180830Ij6ZZz.html
stringSignTemp = "appId=wx619a931576afe069&nonceStr=RIPb5Upk3ku7knU6&package=prepay_id=wx2611334392677180ea59742b3744840000&signType=MD5&timeStamp=1774495197&key=qazwsxedcrfvtgbyhnujmikolp111111"

//MD5签名方式
paySign = MD5(stringSignTemp).toUpperCase() = "1F2E9533D7D483FBCDBD0B9BCA76F97D"

//HMAC-SHA256签名方式，signType改为HMAC-SHA256，部分语言的hmac方法生成结果二进制结果，需要调对应函数转化为十六进制字符串
paySign = hash_hmac("sha256",stringSignTemp,key).toUpperCase()="4A04CF5B979A4920409A9DEF2322C33C96DE8E9A96830E648719C60EF991700E"
```

参数名注意大小写，详细签名算法请参考“[签名算法](https://pay.weixin.qq.com/doc/v2/merchant/4011985891.md)”说明

调用wx.requestPayment(OBJECT)发起微信支付

接口名称： wx.requestPayment，详见[小程序API文档](https://developers.weixin.qq.com/miniprogram/dev/api/payment/wx.requestPayment.html)

Object参数说明：

| 参数 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| timeStamp | String | 是 | 时间戳从1970年1月1日00:00:00至今的秒数,即当前的时间 |
| nonceStr | String | 是 | 随机字符串，长度为32个字符以下。 |
| package | String | 是 | 统一下单接口返回的 prepay\_id 参数值，提交格式如：prepay\_id=\* |
| signType | String | 是 | 签名类型，默认为MD5，支持HMAC-SHA256和MD5。注意此处需与统一下单的签名类型一致 |
| paySign | String | 是 | 签名,具体签名方案参见[微信公众号支付帮助文档](https://pay.weixin.qq.com/doc/v2/merchant/4011985891.md); |
| success | Function | 否 | 接口调用成功的回调函数 |
| fail | Function | 否 | 接口调用失败的回调函数 |
| complete | Function | 否 | 接口调用结束的回调函数（调用成功、失败都会执行） |

回调结果：

| 回调类型 | errMsg | 说明 |
| --- | --- | --- |
| success | requestPayment:ok | 调用支付成功 |
| fail | requestPayment:fail cancel | 用户取消支付 |
| fail | requestPayment:fail (detail message) | 调用支付失败，其中 detail message 为后台返回的详细失败原因 |

示例代码：

```
wx.requestPayment(
{
"timeStamp":"",
"nonceStr": "",
"package": "",
"signType": "MD5",
"paySign": "",
"success":function(res){},
"fail":function(res){},
"complete":function(res){}
})
```