📅  最后修改于: 2023-12-03 15:04:47.956000             🧑  作者: Mango
Razorpay 是一家印度的在线支付公司,它提供了一种快速、安全和方便的方式来接受支付。Razorpay 的节点 SDK 使得使用它的服务变得更加容易。在这篇文章中,我们将会介绍 Razorpay 节点 SDK 的使用以及相关的一些注意事项。
要使用 Razorpay 节点 SDK,你需要先安装它。你可以使用 npm 来安装:
npm install razorpay
在你开始使用 Razorpay 节点 SDK 之前,你需要先执行初始化操作。你需要使用你的 Razorpay API key 和 API secret 来进行这个操作。你可以在你的 Razorpay 账户页面上找到它们。以下是初始化步骤:
const Razorpay = require('razorpay');
const razorpay = new Razorpay({
key_id: 'YOUR_RAZORPAY_API_KEY',
key_secret: 'YOUR_RAZORPAY_API_SECRET',
});
你可以使用 Razorpay 节点 SDK 来创建订单。以下是创建订单的代码:
const options = {
amount: 50000,
currency: 'INR',
receipt: 'order_rcptid_11',
payment_capture: true,
};
razorpay.orders.create(options, (err, order) => {
console.log(order);
});
在上面的代码中,options
参数包含了该订单的各种信息,例如订单金额、货币、收据 ID 和支付捕获选项。razorpay.orders.create
方法将会创建一个订单,该方法接收一个回调函数,用于处理 Order 对象或错误。
一旦你创建了订单,你就可以使用 Razorpay 节点 SDK 发起支付请求了。以下是发起支付请求的代码:
const options = {
amount: 50000,
currency: 'INR',
receipt: 'order_rcptid_11',
};
razorpay.orders.create(options, (err, order) => {
const paymentOptions = {
amount: order.amount,
currency: order.currency,
receipt: order.receipt,
payment_capture: order.payment_capture,
};
razorpay.payments.create(paymentOptions, (err, payment) => {
console.log(payment);
});
});
在上面的代码中,我们首先使用 razorpay.orders.create
方法创建了一个订单对象,并在回调函数中对其进行处理。然后,我们使用订单对象的信息来创建一个支付请求,交由 razorpay.payments.create
方法进行处理。
当用户完成支付后,Razorpay 会向你的服务器发送一个通知。你可以使用 Razorpay 节点 SDK 来接收这个通知。以下是接收通知的代码:
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.json());
app.post('/razorpay-webhook', (req, res) => {
console.log('Received Razorpay webhook:', req.body);
res.send('OK');
});
app.listen(3000, () => {
console.log('Server started on port 3000');
});
在上面的代码中,我们创建了一个 Express 应用,并通过 /razorpay-webhook
路径来接收 Razorpay 的 webhook 请求。当服务器接收到一个请求时,它会在控制台中打印出请求体,并发送一个 OK
响应。
在本文中,我们介绍了 Razorpay 节点 SDK 的使用以及相关的注意事项。我们学习了如何创建订单、发起支付请求以及接收通知。如果您打算使用 Razorpay 的服务,我相信这篇文章会帮助您了解如何使用它的节点 SDK。