Credit Solutions
Overview
Prepaid card services in NI allow users to access and use prepaid cards in the payment processing system. Prepaid cards are a type of payment card that are loaded with a specific amount of funds, which can be used to make purchases or withdraw cash at locations that accept the card.Users of prepaid card services in a payment processing company can typically:
Activate prepaid cards
Users can activate prepaid cards when they are first issued or after they have been deactivated for any reason.
Check card balances
Users can check the balance on a prepaid card in real-time or on a scheduled basis.
View transaction history
Users can view a detailed record of all transactions made with a prepaid card, including the date, time, amount, and location of each transaction.
Reload cards
Users can add funds to a prepaid card, either by transferring money from another account or by purchasing a reload card.
Resolve disputes
Users can access a process for resolving disputes or issues that may arise with prepaid card transactions.
Protect against fraud
Users can access measures to detect and prevent fraudulent activity on prepaid cards, such as monitoring for suspicious activity or requiring additional authentication for certain transactions.
Manage card accounts
Users can view and manage their prepaid card accounts, including the ability to set spending limits, view transaction history, and update personal information.
Balance Conversion
Status:
Production
Version:
V2
Product:
Debit Solutions
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.
Status:
Production
Version:
V2
Product:
Debit Solutions
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 |