IMPS
QP Integration option
This integration option supports the following operations:
Payout
Request
Send a payout request with the following additional parameters:
Parameter | Type | Description |
---|---|---|
method | object | A section of the payment method information. |
type * required |
string | imps |
account * required |
string | The IMPS account number for a payout. |
account_name * required |
string | The IMPS account name for a payout. |
ifsc_code * required |
string | The IMPS IFSC code for a payout. |
customer | object | A section of the customer details. |
first_name * required |
string | The customer's first name. |
last_name * required |
string | The customer's last name. |
email * required |
string | The customer's email address. |
address * required |
string | The customer's address. |
phone * required |
string | 10 digits of the customer's phone number without the country code. |
Response
The imps
response section will have the parameters copied from the request.
EP Integration option
This integration option supports the following operations:
Payment
Request
Send a payment request with the following additional parameters:
Parameter | Type | Description |
---|---|---|
method | object | A section of the payment method. |
type * required |
string | imps |
Info
A minimum payment amount is 300 Indian rupees (submitted as 30000
).
Response
The payment response additionally contains the form
section. Redirect your customer to the URL received as a value of the form.action
parameter, so he or she can complete the payment.
Info
The customer has only 15 minutes to confirm the payment.
Payout
Request
Send a payout request with the following additional parameters:
Parameter | Type | Description |
---|---|---|
method | object | A section of the payment method. |
type * required |
string | imps |
Info
A minimum payout amount is 3000 Indian rupees (submitted as 300000
).
Response
The payout response additionally contains the form
section. Redirect your customer to the URL received as a value of the form.action
parameter.
Info
The customer has only 15 minutes to confirm the payout.
Status query
Request
If you specify notification_url
in the payment or payout request, Riverbanq sends a webhook notification about a transaction status. Please note, it might take some time for Riverbanq to get the transaction status confirmation from the payment method provider.
If needed, send a status query request to get the current transaction status.
Response
The response contains the transaction status, a section of the payment method as well as other details related to the transaction according to the description of a transaction status query.
PZC Integration option
This integration option supports payment and payout transaction types:
Payment
Payment flow
- The customer selects IMPS as a payment opiton.
- The merchant sends a payment request to Riverbanq.
- The page with the payment data is displayed to the customer.
- The customer copies the payment data and makes a payment using an application or an internet banking option of their choice.
- The customer is redirected to the
return_url
where the payment status is displayed. - Riverbanq sends a webhook notification to the merchant.
Note
The amount
parameter value in the webhook notification and in the response to the transaction status query can be different from the value sent in the initial payment request and will equal the actual paid amount.
Request
Send a payment request with the following additional parameters in the method
section:
Parameter | Type | Description |
---|---|---|
return_url *required |
string | A URL, to which the customer is returned once the transaction is completed. |
method *required |
object | A section of the payment method. |
type *required |
string | imps |
customer | object | A section of information about the customer. |
first_name | string | The customer's first name. |
last_name | string | The customer's last name. |
phone |
string (10) | The customer's phone number. |
string | The customer's email address. |
Request example
{
"request": {
"amount": 10,
"currency": "INR",
"test": false,
"description": "description",
"return_url": "https://someurl.com",
"method": {
"type": "imps"
}
}
}
Response
Response example
{
"transaction": {
"uid": "c432436c-b153-4466-89f1-7ebb54203361",
"type": "payment",
"status": "pending",
"amount": 10,
"currency": "INR",
"description": "description",
"created_at": "2023-08-04T14:50:20Z",
"updated_at": "2023-08-04T14:50:20Z",
"method_type": "imps",
"receipt_url": "https://my.riverbanq.com/customer/transactions/c432436c-b153-4466-89f1-7ebb54203361/cb5026d14acf395cc973902ef0e9516a60d2e09544266342767a45f36507ba3d",
"payment": {
"status": "pending",
"gateway_id": 3073,
"message": "Transaction created"
},
"imps": {
"type": "imps"
},
"customer": {
"email": null,
"ip": null
},
"message": "Transaction created",
"test": false,
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "https://checkout.pzc.com/payment/t4f9e9b3a-4223-4a97-965e-9c483fc8d163/12649778853",
"method": "GET",
"fields": []
}
}
}
Payout
Payout flow
- The customer initiates the payout.
- The merchant sends a payout request to the Riverbanq system.
- Riverbanq sends a response to the payout request to the merchant.
- Once the payout it finalized, Riverbanq sends a webhook notification to the merchant.
Request
Send a payout request with the following additional parameters:
Parameter | Type | Description |
---|---|---|
method | object | A section of the payment method information. |
type * required |
string | imps |
account * required |
string | The bank account number for the payout. |
ifsc_code * required |
string | The IFSC-code of the recipient bank. |
customer | object | A section of the customer details. |
first_name * required |
string (35) | The customer's first name. |
last_name * required |
string (35) | The customer's last name. |
id_number * required |
string | The customer's identifier in the merchant's system. |
Request example
{
"request": {
"amount": 10000,
"currency": "INR",
"description": "description",
"test": false,
"customer": {
"first_name": "John",
"last_name": "Doe",
"id_number": "1234567"
},
"method": {
"type": "imps",
"account": "1234",
"ifsc_code": "ABCD0001238"
}
}
}
Response
The response will contain the imps
section with the payment method parameters.
Response example
{
"transaction": {
"uid": "d1b8582b-c6e3-4b7d-8fd6-927a26fef68",
"type": "payout",
"status": "pending",
"amount": 10,
"currency": "INR",
"description": "description",
"created_at": "2023-08-04T11:05:22Z",
"updated_at": "2023-08-04T11:05:23Z",
"method_type": "imps",
"receipt_url": "https://my.riverbanq.com/customer/transactions/d1b8582b-c6e3-4b7d-8fd6-927a26fef678/978ab9cfcf49e66dfe1bef13c5c81adbcaf9729e9ee7ee3858619f9091b4d3",
"payout": {
"status": "pending",
"gateway_id": 3073,
"message": "Payout request created"
},
"imps": {
"type": "imps",
"account": "123467911",
"ifsc_code": "ABCD0001238"
},
"customer": {
"email": null,
"ip": null
},
"message": "Payout Request Created",
"test": false,
"billing_address": {
"first_name": "John",
"last_name": "Doe",
"id_number": "1234567"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
}
}
}
PE Integration option
Payment
Payment flow
- Customer initiates IMPS payment on the merchant's website.
- Merchant sends the payment request to Riverbanq
- Riverbanq returns a payment link to the merchant.
- The merchant redirects the customer to the payment link that opens in the corresponding application on the customer's device.
- The customer confirms the payment.
- Riverbanq sends a webhook notification to the merchant.
Info
This integration option only supports INR
currency.
Request
Send a payment request with the following additional parameters:
Parameter | Type | Description |
---|---|---|
request | object | |
return_url * required |
string | URL to return the customer to when the transaction is completed. |
method | object | A section of the payment method. |
type * required |
string | imps |
customer * required |
object | A section of information about the customer. |
first_name * required |
string | The customer's first name. |
last_name * required |
string | The customer's last name. |
email * required |
string (100) | The customer's email address. |
phone * required |
string | The customer's phone number. |
external_id | string | The customer's identifier in the merchant's system. |
Request example
{
"request":{
"amount":20000,
"currency":"INR",
"description":"description",
"duplicate_check": false,
"test": false,
"tracking_id":"your_uniq_number",
"ip":"127.0.0.1",
"language":"en",
"notification_url":"https://merchant.ltd/notification",
"return_url":"https://merchant.ltd/return",
"customer":{
"first_name":"John",
"last_name":"Doe",
"phone":"17777777777",
"email": "[email protected]"
},
"method":{
"type": "imps"
}
}
}
Response
Redirect your customer to the URL received as the value of the form.action
parameter.
Response example
{
"transaction": {
"uid": "87802f06-270d-4dde-bca3-49c799d0949c",
"type": "payment",
"status": "pending",
"amount": 20000,
"currency": "INR",
"description": "description",
"created_at": "2025-04-17T14:43:25Z",
"updated_at": "2025-04-17T14:43:25Z",
"method_type": "imps",
"receipt_url": "https://my.riverbanq.com/customer/transactions/87802f06-270d-4dde-bca3-49c799d0949c/8cf133b729330a339c117270420b430918847ae4ee86f7b45e247a1a232adad5?language=en",
"payment": {
"status": "pending",
"gateway_id": 5255,
"message": "Transaction was initialized."
},
"imps": {
"type": "imps"
},
"customer": {
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"phone": "17777777777",
"ip": "127.0.0.1"
},
"manually_corrected_at": null,
"version": 0,
"message": "Transaction was initialized.",
"tracking_id": "your_uniq_number",
"test": false,
"language": "en",
"billing_address": {
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"phone": "17777777777"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
},
"gateway": {
"iframe": false
},
"form": {
"action": "payment-link",
"method": "GET",
"fields": []
}
}
}
Payout
Request
Send a payout request with the following data:
Parameter | Type | Description |
---|---|---|
method | object | A section of the payment method. |
type * required |
string | imps |
account_number * required |
string | The identifier of the account for the payout. |
ifsc_code * required |
string | The IFSC-code of the recipient bank. |
customer | object | A section of information about your customer. |
first_name * required |
string | The customer's first name. |
last_name * required |
string | The customer's last name. |
external_id | string | The customer's identifier in the merchant's system. |
Request example
{
"request":{
"amount":20000,
"currency":"INR",
"description":"description",
"test": false,
"tracking_id":"your_uniq_number",
"ip":"127.0.0.1",
"language":"en",
"notification_url":"https://your-notification.url",
"return_url":"https://your-success.url",
"customer":{
"first_name":"John",
"last_name":"Doe"
},
"method":{
"type": "imps",
"account_number": "123456789",
"ifsc_code": "ICIC0002293"
}
}
}
Response
Response example
{
"transaction": {
"uid": "ea1d9cec-24b1-4436-b290-6ff713995909",
"type": "payout",
"status": "pending",
"amount": 20000,
"currency": "INR",
"description": "description",
"created_at": "2025-04-17T15:24:51Z",
"updated_at": "2025-04-17T15:24:51Z",
"manually_corrected_at": null,
"method_type": "imps",
"receipt_url": "https://my.riverbanq.com/customer/transactions/ea1d9cec-24b1-4436-b290-6ff713995909/d330742681e13ce43491120b804b9aefff61abd68ab3a5a56239ac935af87b62?language=en",
"payout": {
"status": "pending",
"gateway_id": 5255,
"ref_id": "njfvvmyya",
"message": "Transaction was initialized."
},
"imps": {
"type": "imps"
},
"customer": {
"email": null,
"ip": "127.0.0.1"
},
"version": 0,
"message": "Transaction was initialized.",
"tracking_id": "your_uniq_number",
"test": false,
"language": "en",
"billing_address": {
"first_name": "John",
"last_name": "Doe"
},
"additional_data": {
"payment_method": {
"type": "alternative"
}
}
}
}