The Payment Request endpoint allows merchants to initiate a UPI payment request using a customer's UPI ID. Customers will complete the transaction via their preferred UPI app.
Endpoint
POST /v1/payments/createPaymentRequest
π§ Example: Axios POST Request
await axios.post(
"https://api.upitranzact.com/v1/payments/createPaymentRequest",
{
mid: "Your Merchant ID", // Example: ABC
amount: "Numeric value between 1-100000", // Example: 200
order_id: "Unique order ID", // Example: bd79da4cc3ff1 (optional)
vpa: "Customer UPI Id", // Example: upiId@oksbi
note: "Add money", // Payment remark
customer_name: "John",
customer_email: "[email protected]",
customer_mobile: "Your Customer Mobile", // Must be a valid phone number
},
{
headers: {
Authorization: "Basic base64(public_key:secret_key)"
}
}
);
π§Ύ Key Parameters
mid
: Your merchant identifier.amount
: Must be a numeric value between 1 and 100000.order_id
: A unique string for transaction tracking (optional).vpa
: UPI ID of the customer.note
: Payment remark.customer_name
: Full name of the customer.customer_email
: A valid email address.customer_mobile
: A valid mobile number.Authorization
: Must be in the formatBasic base64(public_key:secret_key)
.
Make sure to replace placeholder values with actual data before executing.
π¨ Headers
Name | Value |
---|---|
Content-Type | application/x-www-form-urlencoded |
Authorization | Basic base64(public_key:secret_key) |
π₯ Request Body Parameters
Name | Type | Description | Example | Required |
---|---|---|---|---|
mid | string | Merchant ID assigned by UPITranzact | ABC | Yes |
amount | integer | The total amount | 200 | Yes |
order_id | string | Unique identifier for the order | bd79da4cccff1 | No |
vpa | string | Customer UPI ID | upiId@oksbi | Yes |
note | string | Remark for the payment | Add Money | Yes |
customer_name | string | Customer's full name | John | Yes |
customer_email | string | Customer's email address | [email protected] | Yes |
customer_mobile | string | Customer's mobile number | 0123456789 | Yes |
π Authorization
Requests must include the Authorization
header with a Base64-encoded string of public_key:secret_key
.
Example Format:
Authorization: Basic base64(public_key:secret_key)
Example Encoded Header:
Authorization: Basic eW91cl9wdWJsaWNfa2V5OnlvdXJfc2VjcmV0X2tleQ==
Successful Response
{
"status": true,
"statusCode": 200,
"msg": "Payment request created successfully",
"data": {
"orderId": "utz_ccxxzsdf",
"payment_url": "https://upitz.com/checkout/payment/xxxxxxx..."
}
}
Error Example (Order ID Conflict)
{
"status": false,
"statusCode": 409,
"msg": "Order ID already exists"
}