Bank VPA
This API enables third-party systems or apps to integrate BANK VPA services into their systems via CellPay.
Get Possible Values
Endpoint:
{base-url}/payments/possibleValues/{transferTypeId}
Method: POST
Request Headers:
The following HTTP headers are required when calling the API:
Content-Type: application/json
Cellpay-Access-Token: {{accessToken}}
Get Possible Values – Request
{
"type": "BANK"
}
Get Possible Values – Response Example
{
"status": true,
"sessionExpired": false,
"payload": {
"possibleValues": {
"types": [
{
"name": "Machhapuchchhre Bank Limited",
"code": "1501",
"type": "BANK"
},
{
"name": "NIC Asia Bank Ltd.",
"code": "2301",
"type": "BANK"
},
{
"name": "Kamana Sewa Bikas Bank Ltd.",
"code": "6801",
"type": "BANK"
},
{
"name": "Laxmi Sunrise Bank Limited",
"code": "2201",
"type": "BANK"
},
{
"name": "Agricultural Development Bank Ltd.",
"code": "0301",
"type": "BANK"
},
{
"name": "Global IME Bank Limited",
"code": "1901",
"type": "BANK"
},
{
"name": "Kumari Bank Ltd.",
"code": "1601",
"type": "BANK"
},
{
"name": "Prime Commercial Bank Ltd.",
"code": "2101",
"type": "BANK"
},
{
"name": "Garima Bikash Bank",
"code": "6601",
"type": "BANK"
},
{
"name": "ICFC Finance Limited",
"code": "9919",
"type": "BANK"
},
{
"name": "Samriddhi Finance Company Ltd.",
"code": "9911",
"type": "BANK"
},
{
"name": "Shine Resunga Development Bank Ltd.",
"code": "8101",
"type": "BANK"
},
{
"name": "Everest Bank Limited",
"code": "1001",
"type": "BANK"
},
{
"name": "Jyoti Bikas Bank Limited",
"code": "6001",
"type": "BANK"
},
{
"name": "Muktinath Bikas Bank Limited",
"code": "7201",
"type": "BANK"
},
{
"name": "Rastriya Banijya Bank Limited",
"code": "0201",
"type": "BANK"
},
{
"name": "Siddhartha Bank Limited",
"code": "1801",
"type": "BANK"
},
{
"name": "Excel Development Bank Limited",
"code": "7502",
"type": "BANK"
},
{
"name": "Nepal Bank Limited",
"code": "0101",
"type": "BANK"
},
{
"name": "Goodwill Finance Limited",
"code": "9001",
"type": "BANK"
},
{
"name": "Sanima Bank Ltd.",
"code": "4501",
"type": "BANK"
},
{
"name": "Prabhu Bank Limited",
"code": "2601",
"type": "BANK"
},
{
"name": "Citizens Bank International Limited",
"code": "2001",
"type": "BANK"
},
{
"name": "Nepal Investment Mega Bank Limited",
"code": "0501",
"type": "BANK"
}
]
}
}
}
Book Payment
Endpoint:
{base-url}/payments/before/systemPayment
Method: POST
Request Headers:
The following HTTP headers are required when calling the API:
Content-Type: application/json
Cellpay-Access-Token: {{accessToken}}
Book Payment – Request Example
{
"transferTypeId": "{{transferTypeId}}",
"amount": "{{amount}}",
"description": "{{description}}",
"currencyId": "{{currencyId}}",
"webRequest": true,
"customValues": [
{
"fieldId": "{{fieldId}}",
"internalName": "MOBILENUMBER",
"value": "{{mobileNumber}}"
},
{
"fieldId": "{{fieldId}}",
"internalName": "PAYMENTMETHOD",
"value": "Account"
},
{
"fieldId": "{{fieldId}}",
"internalName": "SELECTBANK",
"value": "{{selectBank}}"
},
{
"fieldId": "{{fieldId}}",
"internalName": "ACCOUNTNUMBER",
"value": "{{accountNumber}}"
}
],
"isOtpEnable": null,
"otp": null,
"transactionPin": "{{transactionPin}}",
"extraParam": {
"bankId": "{{bankId}}",
"remarks": "{{remarks}}"
}
}
Book Payment – Successful Response (Sample)
{
"status": true,
"sessionExpired": false,
"payload": {
"DoPaymentResult": {
"wouldRequireAuthorization": false,
"from": {
"id": "{{userId}}",
"name": "{{userName}}",
"username": "{{username}}",
"mobileNo": "{{mobileNumber}}",
"premiumMember": false
},
"finalAmount": 100.00,
"formattedFinalAmount": "NPR 100.00",
"fees": [
{
"type": "FEE",
"name": "Fee NPI (100 - above)",
"amount": 10.00,
"formattedAmount": "NPR 10.00",
"description": "Applied Fee"
}
],
"transferType": {
"id": "{{transferTypeId}}",
"name": "{{transferTypeName}}",
"title": "{{transferTypeTitle}}",
"from": {
"id": 5,
"name": "Transaction Account",
"currency": {
"id": 1,
"symbol": "रु",
"name": "Nepalese Rupee"
}
},
"to": {
"id": 6,
"name": "Cellcom Float Account",
"currency": {
"id": 1,
"symbol": "रु",
"name": "Nepalese Rupee"
}
}
},
"customValues": [
{
"internalName": "MOBILENUMBER",
"fieldId": 16,
"value": "{{mobileNumber}}"
},
{
"internalName": "PAYMENTMETHOD",
"fieldId": 15,
"value": "Account"
},
{
"internalName": "SELECTBANK",
"fieldId": 35,
"value": "{{selectBank}}"
},
{
"internalName": "ACCOUNTNUMBER",
"fieldId": 14,
"value": "{{accountNumber}}"
}
],
"isOtpEnable": false,
"advanceValues": {
"accountId": "{{accountId}}",
"accountName": "{{accountName}}",
"vpa": "{{vpa}}",
"requestIdentifier": "{{requestIdentifier}}",
"originatorUniqueId": "{{originatorUniqueId}}"
},
"showConsolidateAmount": false,
"extraParam": {
"eventId": 0,
"subEventId": 0,
"remarks": "{{remarks}}",
"bankId": "{{bankId}}",
"disableOtp": false,
"renewOption": false
}
}
}
}
Confirm Payment
Endpoint:
{base-url}/payments/confirmSystemPayment
Method: POST
Request Headers:
The following headers are required when calling the API:
Content-Type: application/json
Cellpay-Access-Token: {{accessToken}}
Confirm Payment – Request Example
{
"transferTypeId": "{{transferTypeId}}",
"amount": "{{amount}}",
"description": "{{description}}",
"currencyId": "{{currencyId}}",
"webRequest": true,
"customValues": [
{
"fieldId": "{{fieldId}}",
"internalName": "MOBILENUMBER",
"value": "{{mobileNumber}}"
},
{
"fieldId": "{{fieldId}}",
"internalName": "PAYMENTMETHOD",
"value": "Mobile Wallet"
}
],
"isOtpEnable": null,
"otp": "{{otp}}",
"transactionPin": "{{transactionPin}}",
"extraParam": {
"bankId": "{{bankId}}",
"remarks": "{{remarks}}",
"referenceId": "{{referenceId}}",
"requestIdentifier": "{{requestIdentifier}}"
}
}
Confirm Payment – Successful Response (Sample)
{
"status": true,
"sessionExpired": false,
"payload": {
"ConfirmPaymentResult": {
"id": "{{transactionId}}",
"pending": false
}
}
}
Service Parameters
| Parameter Name | Type | Required | Description |
|---|---|---|---|
| transferTypeId | String | Yes | Identifier of the bank VPA payment service. |
| amount | String | Yes | Payment amount to be processed. |
| description | String | Yes | Short description or purpose of the payment. |
| currencyId | String | Yes | Currency identifier for the transaction. Use 1 for Nepalese Rupee. |
| webRequest | Boolean | Yes | Web Request for web application. |
| customValues | Array | Yes | Required additional fields such as mobile number, payment method, selected bank, and account number. |
| isOtpEnable | Boolean/Null | Conditional | Indicates whether OTP is required for the transaction. |
| otp | String/Null | Conditional | OTP value when OTP is enabled. |
| transactionPin | String | Yes | Customer transaction PIN for the payment. |
| extraParam.bankId | String | Yes | Bank identifier for the selected bank. |
| extraParam.remarks | String | No | Optional remarks for the transaction. |
| referenceId | String | Yes (Confirm) | Reference ID received during the booking step. |
| requestIdentifier | String | Yes (Confirm) | Request identifier received during the booking step. |