wechatpay-nextjs-v3
Version:
微信支付v3版本工具包Next.js版本
92 lines (87 loc) • 2.53 kB
Markdown
```bash
import WxPay from 'wechatpay-node-v3';
import fs from 'fs';
const pay = new WxPay({
appid: '直连商户申请的公众号或移动应用appid',
mchid: '商户号',
publicKey: fs.readFileSync('./apiclient_cert.pem'), // 公钥
privateKey: fs.readFileSync('./apiclient_key.pem'), // 秘钥
});
```
1. 请在命令窗口使用 `openssl x509 -in apiclient_cert.pem -noout -serial` 获取
2. 调用方法`getSN()` // 不传入参数默认创建对象时的publicKey
```bash
console.log('获取序列号', pay.getSN());
或者
console.log('获取序列号', pay.getSN(fs.readFileSync('./apiclient_cert.pem')));
```
```bash
const params = {
description: '测试',
out_trade_no: '订单号',
notify_url: '回调url',
amount: {
total: 1,
},
scene_info: {
payer_client_ip: 'ip',
h5_info: {
type: 'Wap',
app_name: '网页名称 例如 百度',
app_url: '网页域名 例如 https://www.baidu.com',
},
},
};
console.log(params);
const result = await pay.transactions_h5(params);
console.log(result);
```
```bash
const result = pay.decipher_gcm(ciphertext, associated_data, nonce, key);
```
```js
const params = {
out_trade_no: '1615171309328',
out_refund_no: '1615171380622',
reason: '测试',
amount: {
refund: 1,
total: 1,
currency: 'CNY',
},
};
console.log(params);
const result = await pay.refunds(params);
console.log(result);
```
```js
const result = await pay.find_refunds('1615171380622');
console.log(result);
```