Skip to main content

Wallet VPA

This API enables third-party systems or apps to integrate wallet 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": "PSP"
}

Get Possible Values – Response Example​

{
"status": true,
"sessionExpired": false,
"payload": {
"possibleValues": {
"types": [
{
"name": "HamroPay",
"code": "WAL-643-LEN-1",
"type": "PSP"
},
{
"name": "Namaste Pay",
"code": "WAL-796-NDPC-1",
"type": "PSP"
},
{
"name": "Khalti",
"code": "WAL-10-KHA-2",
"type": "PSP"
},
{
"name": "Moru",
"code": "WAL-407-MOR-1",
"type": "PSP"
},
{
"name": "City Pay",
"code": "WAL-2130-CITY-2",
"type": "PSP"
},
{
"name": "MyPay",
"code": "MYPAY",
"type": "PSP"
}
]
}
}
}

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": "Mobile Wallet"
}
],
"isOtpEnable": null,
"otp": null,
"extraParam": {
"bankId": "{{pspCode}}", //WAL-10-KHA-2, WAL-10-KHA-2
"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": "Mobile Wallet"
}
],
"isOtpEnable": false,
"advanceValues": {
"accountId": "{{accountId}}",
"accountName": "{{accountName}}",
"vpa": "{{vpa}}",
"requestIdentifier": "{{requestIdentifier}}",
"originatorUniqueId": "{{originatorUniqueId}}"
},
"showConsolidateAmount": false,
"extraParam": {
"eventId": 0,
"subEventId": 0,
"remarks": "{{remarks}}",
"bankId": "{{pspCode}}",
"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": "{{pspCode}}",
"remarks": "{{remarks}}",
"referenceId": "{{referenceId}}",
"requestIdentifier": "{{requestIdentifier}}"
}
}

Confirm Payment – Successful Response (Sample)​

{
"status": true,
"sessionExpired": false,
"payload": {
"ConfirmPaymentResult": {
"id": "{{transactionId}}",
"pending": false
}
}
}

Service Parameters​

Parameter NameTypeRequiredDescription
transferTypeIdStringYesIdentifier of the wallet VPA payment service.
amountStringYesPayment amount to be processed.
descriptionStringYesShort description or purpose of the payment.
currencyIdStringYesCurrency identifier for the transaction. Use 1 for Nepalese Rupee.
webRequestBooleanYesWeb Request for web application.
customValuesArrayYesRequired additional fields such as mobile number, payment method, selected bank, and account number.
isOtpEnableBoolean/NullConditionalIndicates whether OTP is required for the transaction.
otpString/NullConditionalOTP value when OTP is enabled.
transactionPinStringYesCustomer transaction PIN for the payment.
extraParam.bankIdStringYesWallet or PSP identifier for the selected provider.
extraParam.remarksStringNoOptional remarks for the transaction.
referenceIdStringYes (Confirm)Reference ID received during the booking step.
requestIdentifierStringYes (Confirm)Request identifier received during the booking step.