1.0.0 • Published 5 years ago
ts-wxpays v1.0.0
wx支付工具
封装了基本的请求接口,包括统一下单、查询订单、支付结果回调
使用
整个项目有如下需要注意:
1.每次发起的支付交给微信的订单号是随机生成的,真实的订单号放在attach参数里面,如果有其他需要传递的参数请传入
other_info,这样在接受微信异步回调通知时可以通过attach参数获取到传递的值。
2.只支持MD5加密方式。
如需直接只用支付npm包请 npm install --save ts-wxpays
1.实例化对象
let wxpay = new wxPay({
appid:appid,
mch_id:mch_id,
sign_type:"MD5",
notify_url:notify_url,
},mch_secert)
2.发起小程序支付
let pay = await wxpay.miniPay({
openid:openid,
body:'商品测试支付',
total_fee:1,
spbill_create_ip:ip,
order_id:order_id
})
返回的参数直接交给前台发起支付请求即可
3.发起H5支付
let pay = await wxpay.h5Pay({
body:'商品测试支付',
total_fee:1,
spbill_create_ip:ip,
order_id:order_id
})
此时会返回前端需要跳转到支付页面的url地址
示例
{
return_code: 'SUCCESS',
return_msg: 'OK',
appid: 'wx725a9590e7ddf9d0',
mch_id: '1504787541',
nonce_str: 'RwV1t6cg1IfRITrA',
sign: '7D5AD93648676155A4B86DFBD37EBF30',
result_code: 'SUCCESS',
prepay_id: 'wx06160253996406dc7186be341188281700',
trade_type: 'MWEB',
mweb_url: 'https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx06160253996406dc7186be341188281700&package=3523276229'
}
4.发起JSAPI/APP/NATIVE支付
let pay = await wxpay.JSAPIPay('NATIVE',{
body:'商品测试支付',
total_fee:1,
spbill_create_ip:ip,
order_id:order_id
})
此时会返回前端需要跳转到支付页面的url地址
示例
{
return_code: 'SUCCESS',
return_msg: 'OK',
appid: 'wx725a9590e7ddf9d0',
mch_id: '1504787541',
nonce_str: 'TAc0BjLZlEJIQR7t',
sign: '823142A5CFF5D2E4B443DCD767ABA3FF',
result_code: 'SUCCESS',
prepay_id: 'wx061624443117195949c5f0a71993305200',
trade_type: 'NATIVE',
code_url: 'weixin://wxpay/bizpayurl?pr=ZWWduvU'
}
5.接受微信的异步通知回调
将微信的通知结果进行转义json格式,传递xml内的内容,进行真实性验证
let check = wxpay.check_order(req.body.xml)
6.查询某一订单的订单状态
let order = wxpay.search_order('4200000402201910061693919630')
1.0.0
5 years ago