Loading...
Loading...
https://merchant.paywize.inInitiate UPI collection payment requests through Connected Banking.
Last updated: 2026-07-06
POST /api/v1/connected-banking/public/upi-collection/initiate
This API endpoint is used to initiate a payment. Clients must encrypt their data using this method before sending it to the server. The encrypted data should be base64-encoded for safe transmission.
Content-Type: application/json
Authorization: Bearer <jwt_token>
The following fields must be encrypted before being sent to the server:
| Field | Required | Type | Description |
|---|---|---|---|
| senderId | Yes | String | Unique ID for each merchant (Min 8, Max 18 characters) |
| customerId | Yes | String | Unique ID for each customer. Example: 889226149700008 (15 characters) |
| requestAmount | Yes | String | The amount in rupees. Provide up to two decimals for paise. Example: '5.00'. |
| remarks | Yes | String | Remarks for the payment. Example: vendor payment. |
| txnType | Yes | String | The transaction type. Accepted values: INTENT |
| redirectUrl | Optional | String | URL to redirect the user after payment. Example: https://example.com/success |
| vpa | Yes | String | The VPA (Virtual Payment Address) of the merchant. Example: examplevpa@shivalik |
| channel | Yes | String | Name of the Channel. Example: SHIVALIK |
| walletId | Yes | String | Unique walletId of the merchant. Example: PAYWIZE12345679 |
{
"payload": "0oA+t8GGuDZ0FrEbhM9bZ2pxTDZTaHRWRW1tQn...encrypted_payload"
}
{
"senderId": "SENDER001",
"customerId": "889226149700008",
"requestAmount": "5.00",
"remarks": "vendor payment",
"txnType": "INTENT",
"redirectUrl": "https://example.com/success",
"vpa": "examplevpa@shivalik",
"channel": "SHIVALIK",
"walletId": "PAYWIZE123456227"
}
{
"respCode": 2001,
"respMessage": "Payment link has been generated",
"data": "U2FsdGVkX1+XYZ789...encrypted_response_here"
}
{
"senderId": "SENDER001",
"txnId": "CHUC020726000001",
"intentUrl": "upi://pay?pa=demo@upi&pn=Demo%20Merchant&tr=PWZ202607020001&tid=PWZTID202607020001&am=5.00",
"paymentUrl": "https://demo.paywize.com/payment/checkout/8f3c7b5d9a124e7fb61d2a8c4e5f9b10",
"status": "INITIATED",
"statusMessage": "Payment link has been generated",
"createdAt": "2026-06-29T09:27:55.503Z",
"updatedAt": "2026-06-29T09:27:55.503Z"
}
| Code | Message |
|---|---|
| 2001 | Payment link has been generated |
| 4014 | Payload is required |
| 4004 | Daily limit exceeded |
| 4005 | Wallet ID is required |
| 4012 | Duplicate sender ID |
| 4023 | Missing or invalid Wallet ID |
| 4101 | Request amount is required |
| 4102 | Amount must be a valid decimal number (e.g. 100.00) |
| 4103 | VPA is required |
| 4104 | VPA format is invalid (expected handle@bank) |
| 4105 | Transaction type is required |
| 4106 | Invalid transaction type. Allowed: INTENT |
| 4108 | Channel is required |
| 4109 | Customer ID is required (must be 15 characters long) |
| 4120 | Service is currently unavailable |
| 4129 | UPI Collection service subscription is inactive |
| 4130 | Customer is not whitelisted for UPI Collection |
| 4131 | Insufficient wallet balance to cover the UPI collection fee |
| 4132 | Customer not found |
| 4133 | Customer is not enabled for UPI collection |
| 4140 | No commercial plan found for this transaction amount |
| 5000 | Internal server error |