下面是 Python3 微信支付(小程序支付)V3接口的实现的详细攻略。
在开始实现微信支付接口之前,需要先获取微信支付证书。可以通过以下步骤获取:
apiclient_key.pem
,apiclient_cert.pem
,wechat_pay_cert.pem
,rootca.pem
四个文件。这四个文件将在后面的代码实现中被用到。安装 Python3 微信支付 SDK,可以通过以下命令进行安装:
pip install wxpay-sdk
下面给出 Python3 微信支付(小程序支付)V3接口的实现代码示例。
from wxpay_sdk import *
import requests
# 商户ID
mch_id = '商户ID'
# API 证书文件路径
cert_file_path = 'apiclient_cert.pem'
key_file_path = 'apiclient_key.pem'
root_ca_file_path = 'rootca.pem'
# 订单号
out_trade_no = '订单号'
# 币种
fee_type = 'CNY'
# 买家openid
openid = '买家openid'
# 订单金额,单位为分
total_fee = 100
# 商品描述
body = '商品描述'
# 小程序ID
appid = '小程序ID'
# MCH密钥
mch_key = 'MCH密钥'
# API密钥
api_key = 'API密钥'
# 支付成功回调函数地址
notify_url = '支付成功回调函数地址'
# 微信支付服务器地址
api_url = 'https://api.mch.weixin.qq.com/'
wxpay = WXPay(mch_id, mch_key, appid, api_key, cert_file_path, key_file_path, root_ca_file_path, notify_url, api_url)
# 创建微信支付请求参数对象
params = {
'total_fee': total_fee,
'body': body,
'out_trade_no': out_trade_no,
'fee_type': fee_type,
'openid': openid
}
# 发起微信支付请求
res = wxpay.unified_order(**params)
# 获取微信支付返回结果中的prepay_id
prepay_id = res['prepay_id']
# 获取小程序请求参数
data = wxpay.jsapi_params(prepay_id)
# 生成小程序支付请求参数
jsapi_params = {
'timeStamp': str(int(time.time())),
'nonceStr': wxpay._gen_nonce_str(),
'package': 'prepay_id=' + prepay_id,
'signType': 'MD5'
}
# 对小程序支付请求参数进行签名
sign = wxpay.sign(jsapi_params)
# 将签名加入到小程序支付请求参数中
jsapi_params['paySign'] = sign
以上是 Python3 微信支付(小程序支付)V3接口的实现的全部攻略。这里给出两个示例说明,以方便理解该攻略。
在 GitLab CI/CD 中集成微信支付,可以方便地在 GitLab CI/CD 部署流程中自动处理微信支付。具体步骤如下:
在 Flask 中集成微信支付,可以让 Flask 程序支持微信支付功能,为 Flask 程序提供更完善的功能。具体步骤如下:
本文链接:http://task.lmcjl.com/news/14581.html