搭建简单的微信小程序收款涉及的基础概念主要是微信支付。微信支付是腾讯公司提供的一项支付服务,允许用户通过微信客户端快速完成支付操作。对于商家来说,微信支付提供了一个便捷的收款方式。
微信支付主要分为两种类型:
对于微信小程序收款,通常使用JSAPI支付。
微信小程序收款适用于各种需要在线支付的场景,如电商购物、餐饮外卖、生活缴费、酒店预订等。
// 前端代码示例
wx.request({
url: 'https://your-server.com/pay', // 后端支付接口地址
method: 'POST',
data: {
amount: 100, // 支付金额,单位为分
description: '商品描述'
},
success: function(res) {
const payData = res.data;
wx.requestPayment({
timeStamp: payData.timeStamp,
nonceStr: payData.nonceStr,
package: payData.package,
signType: payData.signType,
paySign: payData.paySign,
success: function(res) {
console.log('支付成功');
},
fail: function(res) {
console.log('支付失败', res);
}
});
}
});
# 后端代码示例(Python)
import requests
import hashlib
import time
def generate_sign(params, api_key):
sorted_items = sorted(params.items())
sign_str = '&'.join([f'{k}={v}' for k, v in sorted_items]) + f'&key={api_key}'
return hashlib.md5(sign_str.encode('utf-8')).hexdigest().upper()
def create_pay_order(amount, description, openid):
url = 'https://api.weixin.qq.com/pay/unifiedorder'
params = {
'appid': 'your_appid',
'mch_id': 'your_mch_id',
'nonce_str': hashlib.md5(str(time.time()).encode('utf-8')).hexdigest(),
'body': description,
'out_trade_no': 'your_order_number',
'total_fee': amount,
'spbill_create_ip': 'your_server_ip',
'notify_url': 'your_notify_url',
'trade_type': 'JSAPI',
'openid': openid
}
params['sign'] = generate_sign(params, 'your_api_key')
response = requests.post(url, data=params)
return response.json()
# 示例调用
order_data = create_pay_order(100, '商品描述', 'user_openid')
prepay_id = order_data['prepay_id']
# 生成前端需要的支付参数并返回
通过以上步骤,你可以搭建一个简单的微信小程序收款功能。更多详细信息和示例代码,可以参考微信支付官方文档:微信支付开发者文档。
云+社区技术沙龙[第8期]
云+社区技术沙龙[第5期]
T-Day
微搭低代码直播互动专栏
云+社区沙龙online [技术应变力]
Techo Youth
高校公开课
微搭低代码直播互动专栏
微搭低代码系列直播课
领取专属 10元无门槛券
手把手带您无忧上云