upitranzact
v1.0.1
Published
Your trusted partner for secure, fast, and seamless UPI payment solutions for businesses and individuals.
Maintainers
Readme
🚀 UPITranzact Node.js SDK
A lightweight and secure Node.js SDK for integrating UPITranzact payment APIs into your application.
This SDK supports:
✔ Create Order
✔ Check Payment Status
✔ Webhook Handling
✔ Automatic Payment Verification Flow
✔ Base64 Authorization
✔ x-www-form-urlencoded Requests
📦 Installation
npm install upitranzact🧩 Initialize SDK
const UPITranzact = require("upitranzact");
const upi = new UPITranzact({
publicKey: "YOUR_PUBLIC_KEY",
secretKey: "YOUR_SECRET_KEY",
});🔹 1. Create Order
Creates a payment order and returns a payment URL.
const response = await upi.createOrder({
mid: "ABC",
amount: 200,
order_id: "bd79da4cc3ff1", // optional
redirect_url: "https://example.com/success",
note: "Add money",
customer_name: "John",
customer_email: "[email protected]",
customer_mobile: "9876543210"
});
console.log(response);✔ Sample Success Response
{
"status": true,
"statusCode": 200,
"msg": "Order request created successfully",
"data": {
"orderId": "utz_ccxxzsdf",
"payment_url": "https://upitz.com/checkout/payment/xxxxxxx"
}
}🔹 2. Check Payment Status
const result = await upi.checkPaymentStatus("ABC", "bd79da4cc3ff1");
console.log(result);✔ Success Response Example
{
"status": true,
"statusCode": 200,
"txnStatus": "SUCCESS",
"msg": "Payment successful",
"data": {
"amount": 1.08,
"UTR": "523504870405",
"order_id": "uptz_2848129210ud13"
}
}🔹 3. Webhook Handling (Recommended)
Webhook ensures 100% accurate payment confirmation.
Set your webhook URL (e.g., /callback).
app.post("/callback", (req, res) => {
const result = upi.handleWebhook(req.body);
console.log("Webhook Received:", result);
res.send("OK");
});✔ Sample Webhook Payload
{
"status": true,
"statusCode": 200,
"txnStatus": "SUCCESS",
"msg": "Transaction is successful",
"data": {
"paymentType": "Dynamic",
"amount": "500.00",
"mid": "xxxxx",
"paygicReferenceId": "xxxxxxxxxxx",
"merchantReferenceId": "utzxxxxxxx",
"successDate": "2025-10-17T17:53:52.345Z",
"UTR": "52907204xxxxx",
"payerName": "Customer name",
"payeeUPI": "xxx@oksbi"
}
}🔹 4. Automated Verification Flow (Recommended)
To ensure users see ONLY VERIFIED payment status:
1️⃣ User completes payment → redirected to your success page
2️⃣ Your success page polls your backend
3️⃣ Webhook updates real transaction status
4️⃣ Backend returns verified status to frontend
const finalStatus = await upi.autoVerify("ABC", order_id);
console.log(finalStatus); // SUCCESS / FAILED / PENDING📘 Available Methods
| Method | Description |
|--------|-------------|
| createOrder(params) | Creates a new payment order |
| checkPaymentStatus(mid, order_id) | Checks status of an order |
| handleWebhook(body) | Processes webhook callback data |
| autoVerify(mid, order_id) | Returns final status (set by webhook) |
⚙️ Requirements
- Node.js v14+
- Valid UPITranzact public & secret keys
- Express or any HTTP framework for webhook handling
📄 License
ISC © UPITranzact
🤝 Support
For integration help:
📧 [email protected]
🌐 https://upitranzact.com
