Buy Now Pay Later
Overview
Our Buy Now Pay Later services provide an easy and flexible payment option for your customers, allowing them to make purchases now and pay for them at a later date. This can help to increase sales by making it easier for customers to make larger purchases, or to buy more frequently.
Our Buy Now Pay Later services also include the ability to set up recurring payments, which can help to increase customer loyalty by making it easy for customers to make regular payments for their purchases. Our platform also allows customers to track and manage their payments, which can help to improve their experience and satisfaction.

Get Eligible Plans (Post)
The Get Eligible Plans API is a useful tool for payment processing companies that offer credit or debit card services. This API allows customers to easily view a list of plans that they are eligible for, providing a convenient way to compare different plan options and choose the one that best suits their needs.

Balance Transfer (Post)
The Balance Transfer API is a powerful tool for payment processing companies that offer balance transfer services. This API allows customers to easily transfer the balance from one credit card to another, providing a convenient way to manage their finances and pay off debt.

LoanOnCall QuickCash (Post)
The Quick Cash API is a powerful tool for payment processing companies that offer loan services. This API allows customers to apply for and receive loans quickly and easily, providing a convenient and hassle-free way to access credit when needed.

Balance Conversion (Post)
IPP Balance Conversion API transaction transfers outstanding principal amounts from IPP plans to Retail plans. It debits the IPP LOAN UNB bucket and credits the "Retail Instalments (technical)" account, then allocates funds to RETAIL plan LOAN buckets following a priority sequence of BIL_PREV, BIL_LAST, and CUR. This enables efficient balance transfers between payment structures while maintaining systematic allocation priorities.

LoanOnCall QuickCash (Post)
The Quick Cash API is a powerful tool for payment processing companies that offer loan services. This API allows customers to apply for and receive loans quickly and easily, providing a convenient and hassle-free way to access credit when needed.
Balance Conversion
Status:
Production
Version:
V2
Category:
Buy Now Pay Later
Balance Conversion
Overview
IPP Balance Conversion API transaction transfers outstanding principal amounts from IPP plans to Retail plans. It debits the IPP LOAN UNB bucket and credits the "Retail Instalments (technical)" account, then allocates funds to RETAIL plan LOAN buckets following a priority sequence of BIL_PREV, BIL_LAST, and CUR. This enables efficient balance transfers between payment structures while maintaining systematic allocation priorities.
Flexible Payment Structure Transfer
Enables seamless conversion of outstanding balances between different payment plan types (IPP to Retail), allowing financial institutions to optimize customer payment arrangements.
Customizable Installment Parameters
Supports extensive configuration options including interest rates, grace periods, fee waivers, and ad-hoc fee definitions to tailor the conversion to specific customer needs.
Priority-Based Fund Allocation
Implements a systematic allocation mechanism that follows a predefined priority sequence (BIL_PREV, BIL_LAST, CUR) to ensure proper distribution of converted funds.
Comprehensive Transaction Tracking
Provides detailed transaction references and tracking IDs throughout the process, enabling complete audit trails and reconciliation capabilities.
How It Works
The API receives the conversion request with card and amount details, transfers funds from IPP to Retail accounts following predefined allocation rules, applies any override parameters (fees, interest rates), and returns a confirmation response with transaction status.
Balance Conversion
Status:
Production
Version:
V2
Category:
Buy Now Pay Later
Node | Child Node | Type | Length | Description |
---|---|---|---|---|
Authorization | Bearer xxxx | string | Authorization Header (Bearer Token) | |
Content-Type | application/json | string | Content Type |
Node Type | Type | Length | Description | |||||||
---|---|---|---|---|---|---|---|---|---|---|
NISrvRequest | request_balance_conversion | header | msg_id | string | 12 | The msg_id sent in the request will be sent back in response in this field | ||||
msg_type | string | 12 | Message Type – This can have either “TRANSACTION†or “ENQUIRY†As for this API the value expected is “TRANSACTION†| |||||||
msg_function | string | 50 | Static Value - REQ_CARD_BALANCE_CONVERSION | |||||||
src_application | string | 10 | Source Application: This is a free Text and the client can populate the source system from where the API is Initiated Example: IVR, IB, MB No Validations of these are kept at Network Systems | |||||||
target_application | string | 10 | The target_application can hold any value from FI side, this can be used by FI to check the target system of the API call | |||||||
timestamp | string | 30 | Timestamp of the request - Format YYYY-MM-DDtHH:MM:SS.SSS+04:00 | |||||||
tracking_id | string | 15 | Transaction Tracking Id | |||||||
bank_id | string | 4 | Bank Id is Unique Id 4 digit code for each client and the same will be provided once the client setup is completed in our core system. For sandbox testing – Please use “NIC†| |||||||
body | card_identifier_id | string | 32 | 454545XXXXXX1234 | ||||||
card_identifier_type | string | 20 | CONTRACT_NUMBER is used for clear card number or EXID which is a unique identifier for the card generated by CMS | |||||||
currency | string | 3 | Currency | |||||||
amount | string | 18 | Amount | |||||||
instalment_description | string | 255 | Description | |||||||
transaction_ref_number | string | 12 | Transaction Reference Number | |||||||
plan_number | string | 5 | Plan number used for conversion | |||||||
options | key | string | 20 | custom key | ||||||
value | string | 128 | custom value | |||||||
override_options | waive_fee | string | 1 | Processing Fee Waiver | ||||||
ad-hoc_fee_type | string | 1 | Ad-hoc Fee type: P - percentage, F - fixed | |||||||
ad-hoc_fee | string | 18 | Ad-hoc Fee value: the number will be treated as percentage or amount, depending on the AH_FEE_TYPE | |||||||
interest_rate | string | 3 | Instalment fee rate | |||||||
portion_amount | string | 18 | Desired maximum amount on the portion | |||||||
number_of_portions | string | 4 | Number of portions | |||||||
grace_period | string | 3 | Number of cycles to shift before billing the first portion. | |||||||
free_period_number | string | 3 | Number of portions to apply zero fee rate to. The period starts with the first portion. |
{
"NISrvRequest": {
"request_balance_conversion": {
"header": {
"msg_id": "236001",
"msg_type": "TRANSACTION",
"msg_function": "REQ_CARD_BALANCE_CONVERSION",
"src_application": "IVR",
"target_application": "CMS",
"timestamp": "2020-07-20T10:49:02.366+04:00",
"tracking_id": "236001",
"bank_id": "NIC"
},
"body": {
"card_identifier_id": "99984100148297467162",
"card_identifier_type": "EXID\/CONTRACT_NUMBER",
"currency": "AED",
"amount": "3000.00",
"instalment_description": "Balance Conversion",
"transaction_ref_number": "11100521",
"plan_number": "00166",
"options": [
{
"key": "BOOK_TYPE",
"value": "SR02"
}
],
"override_options": [
{
"waive_fee": "Y",
"ad-hoc_fee_type": "F",
"ad-hoc_fee": "25.26",
"interest_rate": "15.45",
"portion_amount": "50000.0",
"number_of_portions": "",
"grace_period": "1",
"free_period_number": "1"
}
]
}
}
}
}
Node | Child Node | Type | Length | Description | |
---|---|---|---|---|---|
Content-Type | application/json | string | Content Type |
Node Type | Type | Length | Description | |||||||
---|---|---|---|---|---|---|---|---|---|---|
NISrvResponse | response_balance_conversion | header | msg_id | string | 12 | Unique Source Message ID eg ada123456fdsf | ||||
msg_type | string | 12 | Message Type – This can have either “TRANSACTION†or “ENQUIRY†As for this API the value expected is “TRANSACTION†| |||||||
msg_function | string | 50 | Default REP_CARD_BALANCE_CONVERSION | |||||||
src_application | string | 10 | Source Application: This is a free Text and the client can populate the source system from where the API is Initiated Example: IVR, IB, MB No Validations of these are kept at Network Systems | |||||||
tracking_id | string | 15 | Transaction Tracking Id | |||||||
bank_id | string | 4 | Bank Id is Unique Id 4 digit code for each client and the same will be provided once the client setup is completed in our core system. For sandbox testing – Please use “NIC†| |||||||
exception_details | application_name | string | 20 | Application Name | ||||||
date_time | string | 30 | Timestamp of the response Format “YYYY-MM-DD HH:MM:SS†| |||||||
status | string | 1 | Status of the request (S/F) | |||||||
error_code | string | 4 | EAI Internal Error Code (Check error codes section for the complete list of error codes and error code descriptions) | |||||||
error_description | string | 100 | Error Description (Check error codes section for the complete list of error codes and error code descriptions) | |||||||
transaction_ref_id | string | 20 | The tracking_id sent in the request will be sent back in response in this field. |
{
"NISrvResponse": {
"response_balance_conversion": {
"header": {
"msg_id": "236001",
"msg_type": "TRANSACTION",
"msg_function": "REP_CARD_BALANCE_CONVERSION",
"src_application": "IVR",
"tracking_id": "236001",
"bank_id": "NIC"
},
"exception_details": {
"application_name": "TCC-ADP",
"date_time": "2023-02-01T16:39:47.314+04:00",
"status": "S",
"error_code": "000",
"error_description": "Success",
"transaction_ref_id": "236001"
}
}
}
}
Code | Description |
---|---|
200 | Sample Description |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
500 | Internal Server Error |
502 | Bad gateway |
503 | Scheduled Maintenance |
504 | Gateway Timeout |
596 | Service Not Found |
How It Works
Follow the steps below. For more details, read the Quick Start Guide.
1- Process 1
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Amet, sed at amet cras fringilla adipiscing nunc, in pulvinar. Sagittis pellentesque leo et proin convallis justo vitae in.
2- Process 1
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Amet, sed at amet cras fringilla adipiscing nunc, in pulvinar. Sagittis pellentesque leo et proin convallis justo vitae in.
3- Process 1
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Amet, sed at amet cras fringilla adipiscing nunc, in pulvinar. Sagittis pellentesque leo et proin convallis justo vitae in.
4- Process 1
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Amet, sed at amet cras fringilla adipiscing nunc, in pulvinar. Sagittis pellentesque leo et proin convallis justo vitae in.
5- Process 1
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Amet, sed at amet cras fringilla adipiscing nunc, in pulvinar. Sagittis pellentesque leo et proin convallis justo vitae in.