1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
| const tenpay = require('tenpay');
const conf = { appid: 'xxxxxxxxxxxxxx',//'公众号ID(必填)', mchid: '1111111111111',//'微信商户号(必填)', partnerKey: '2222222222222222222222',//'微信支付安全密钥(必填, 在微信商户管理界面获取)', // pfx: require('fs').readFileSync('./cnf/apiclient_cert.p12'), // 证书文件(在微信商户管理界面获取) notify_url: 'https://xxxxxxxxxxxx.cn/callback',//'支付结果通知回调地址', refund_url: '',//'退款结果通知回调地址', spbill_create_ip: '120.2.2.2',//'IP地址', openLog: true, logger: console, };
// 方式一 //const api = new tenpay(conf); // 方式二 //const api = tenpay.init(conf);
// 调试模式(传入第二个参数为true, 可在控制台输出数据) // const api = new tenpay(conf, true);
// 沙盒模式(用于微信支付验收) const api = await tenpay.sandbox(conf, true);
const out_trade_no = 'd4851fc7-2281-4b7a-bc6a-aeffdef04f55'; const openid = 'xxxxxxxxxxxxxxxxxxxxxxxx'; const partner_trade_no = "AQCA6Q50brtuhXBkDRfA8-RgG88j"; const payment_no = "4200000793202101082139317712";
// 获取微信JSSDK支付参数(自动下单, 兼容小程序) let result = await api.getPayParams({ out_trade_no: out_trade_no,//'商户内部订单号', body: '测试商品简单描述', total_fee: 101,//'订单金额(分)', openid: openid,//'付款用户的openid' });
// 微信统一下单 result = await api.unifiedOrder({ out_trade_no: out_trade_no,//'商户内部订单号', body: '测试商品简单描述', total_fee: 1,//'订单金额(分)', openid: openid,//'付款用户的openid' });
// 获取微信JSSDK支付参数(通过预支付会话标识, 兼容小程序) // 该方法需先调用api.unifiedOrder统一下单, 获取prepay_id; result = await api.getPayParamsByPrepay({ prepay_id: result.prepay_id,// '预支付会话标识' });
// 查询订单 result = await api.orderQuery({ // transaction_id: payment_no //二选一 out_trade_no: payment_no, // out_trade_no: out_trade_no });
result = await api.transfers({ partner_trade_no: '商户内部付款订单号', openid: '用户openid', re_user_name: '用户真实姓名', amount: '付款金额(分)', desc: '企业付款描述信息' });
result = await api.transfersQuery({ partner_trade_no: partner_trade_no, // '商户内部付款订单号' });
|