Webhook Services
Overview
Our webhook solution ensures that your system receives real-time notifications regarding specific events triggered within the NI system, based on your subscription to the different webhooks.

Card Replacement (Post)
This webbook serves to promptly inform your system whenever a card replacement occurs. This helps ensure that important card management activities are communicated accurately and on time. Card replacements are crucial in banking because they affect customer accounts, security, and transaction abilities.

Pin Action (Post)
This webbook serves to promptly inform your system whenever there are PIN-related actions performed on a card. It's important for maintaining card security, overseeing operations, and meeting regulatory requirements in finance. PIN-related actions, as of now we support reset pin counter only.
Account Hierarchy Enquiry
Status:
Production
Version:
V2
Category:
Webhook
Overview
Account Hierarchy allows businesses to efficiently manage and navigate complex account structures. Businesses can leverage the Account Hierarchy API to access detailed information about account relationships, such as parent-child connections or multi-level hierarchies. By integrating this API into their applications or systems, businesses can streamline account management processes, improve data visibility, and enhance decision-making capabilities.
Overall, the Account Hierarchy API serves as a fundamental tool for businesses seeking to effectively manage their account structures and optimize operational efficiency.
How It Works
The Account Hierarchy API is accessed by sending a request that specifies either a top-level account or a sub-account. The purpose of this request is to retrieve information about the current account level and its child levels within the hierarchy.
When making the request, you have the option to specify the depth or level of detail you want to receive in the response. For instance, if your account hierarchy has multiple levels (let's say 5 levels) starting from a top account (denoted as X), and you are interested in obtaining information about the top level (X), Level 1 (L1), and Level 2 (L2) only, you can indicate this in your request by using the "level_down" parameter.
By setting the "level_down" parameter appropriately in your API request (e.g., specifying "level_down": 2), you can instruct the Account Hierarchy API to provide information up to the specified depth (in this case, up to Level 2) in the response. This allows you to control and limit the amount of hierarchical data returned based on your specific needs or use case.
Overview
Account Hierarchy allows businesses to efficiently manage and navigate complex account structures. Businesses can leverage the Account Hierarchy API to access detailed information about account relationships, such as parent-child connections or multi-level hierarchies. By integrating this API into their applications or systems, businesses can streamline account management processes, improve data visibility, and enhance decision-making capabilities.
Overall, the Account Hierarchy API serves as a fundamental tool for businesses seeking to effectively manage their account structures and optimize operational efficiency.
How It Works
The Account Hierarchy API is accessed by sending a request that specifies either a top-level account or a sub-account. The purpose of this request is to retrieve information about the current account level and its child levels within the hierarchy.
When making the request, you have the option to specify the depth or level of detail you want to receive in the response. For instance, if your account hierarchy has multiple levels (let's say 5 levels) starting from a top account (denoted as X), and you are interested in obtaining information about the top level (X), Level 1 (L1), and Level 2 (L2) only, you can indicate this in your request by using the "level_down" parameter.
By setting the "level_down" parameter appropriately in your API request (e.g., specifying "level_down": 2), you can instruct the Account Hierarchy API to provide information up to the specified depth (in this case, up to Level 2) in the response. This allows you to control and limit the amount of hierarchical data returned based on your specific needs or use case.
Account Hierarchy Enquiry
Status:
Production
Version:
V2
Category:
Webhook
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_account_hierarchy | header | msg_id | string | 12 | Message ID, this field should be unique id for each Api call. This will be generated from client side. If the same message ID is used the system will decline the API call with Error Description “Duplicate Message ID” | ||||
msg_type | string | 12 | Message Type – This can have either “TRANSACTION” or “ENQUIRY” As for this API the value expected is “ENQUIRY” | |||||||
msg_function | string | 50 | Message functions: Should be “REQ_ACCOUNT_HIERARCHY_ENQUIRY” | |||||||
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 | |||||||
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 | customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | ||||||
account_identifier_id | string | 32 | Account Identifer ID should be passed if customer_id is not sent as part of the request | |||||||
account_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 | |||||||
level_down | string | 1 | It is applicable for corporate hierarchy value can be from 1 to 5 | |||||||
client_type | string | 10 | It is applicable for corporate hierarchy - Values: Commercial → C Private → P | |||||||
balance_list | string | 512 | The values can be - AVAILABLE,BLOCKED,TOTAL_BALANCE |
{
"NISrvRequest": {
"request_account_hierarchy": {
"header": {
"msg_id": "236001",
"msg_type": "ENQUIRY",
"msg_function": "REQ_ACCOUNT_HIERARCHY_ENQUIRY",
"src_application": "IVR",
"target_application": "WAY4",
"timestamp": "2020-07-20T10:49:02.366+04:00",
"bank_id": "NIC"
},
"body": {
"customer_id": "100000027",
"account_identifier_id": "652589",
"account_identifier_type": "EXID",
"level_down": "1",
"client_type": "C",
"balance_list": "AVAILABLE"
}
}
}
}
Node | Child Node | Type | Length | Description | |
---|---|---|---|---|---|
Content-Type | application/json | string | Content Type |
Node Type | Type | Length | Description | |||||||
---|---|---|---|---|---|---|---|---|---|---|
NISrvResponse | response_account_hierarchy | header | msg_id | string | 12 | Message ID, this field should be unique id for each Api call. This will be generated from client side. If the same message ID is used the system will decline the API call with Error Description “Duplicate Message ID” | ||||
msg_type | string | 12 | Message Type – This can have either “TRANSACTION” or “ENQUIRY” As for this API the value expected is “ENQUIRY” | |||||||
msg_function | string | 50 | Message functions: Should be “REP_ACCOUNT_HIERARCHY_ENQUIRY” | |||||||
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 response - Format YYYY-MM-DDtHH:MM:SS.SSS+04:00 | |||||||
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. | |||||||
body | accounts | account_number | string | 64 | Account number | |||||
customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | |||||||
rbs_number | string | 512 | RBS Number which is the number used to link NI System with Core System | |||||||
product_code | string | 32 | This code is generated by CMS after creating the product. This code is FI specific code. | |||||||
balances | type | string | 32 | Type of the balance | ||||||
currency | string | 3 | Currency | |||||||
amount | string | 20 | Balance ammount | |||||||
sub_accounts | account_number | string | 64 | Account number | ||||||
customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | |||||||
rbs_number | string | 512 | RBS Number which is the number used to link NI System with Core System | |||||||
product_code | string | 32 | Product Code | |||||||
balances | type | string | 32 | Type of the balance | ||||||
currency | string | 3 | Currency | |||||||
amount | string | 20 | Balance ammount | |||||||
sub_accounts | account_number | string | 64 | Account number | ||||||
customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | |||||||
rbs_number | string | 512 | RBS Number which is the number used to link NI System with Core System | |||||||
product_code | string | 32 | Product Code | |||||||
balances | type | string | 32 | Type of the balance | ||||||
currency | string | 3 | Currency | |||||||
amount | string | 20 | Balance ammount | |||||||
sub_accounts | account_number | string | 64 | Account number | ||||||
customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | |||||||
rbs_number | string | 512 | RBS Number which is the number used to link NI System with Core System | |||||||
product_code | string | 32 | Product code, this code is generated by CMS after creating the product, this code is FI spesific code 982_AED_045_C_2 is just used as an example in Sandbox | |||||||
balances | type | string | 32 | Type of the balance | ||||||
currency | string | 3 | Currency | |||||||
amount | string | 20 | Balance ammount | |||||||
sub_accounts | account_number | string | 64 | Account number | ||||||
customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | |||||||
rbs_number | string | 512 | RBS Number which is the number used to link NI System with Core System | |||||||
product_code | string | 32 | Product code, this code is generated by CMS after creating the product, this code is FI spesific code 982_AED_045_C_2 is just used as an example in Sandbox | |||||||
balances | type | string | 32 | Type of the balance | ||||||
currency | string | 3 | Currency | |||||||
amount | string | 20 | Balance ammount | |||||||
sub_accounts | account_number | string | 64 | Account number | ||||||
customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | |||||||
rbs_number | string | 512 | RBS Number which is the number used to link NI System with Core System | |||||||
product_code | string | 32 | Product code, this code is generated by CMS after creating the product, this code is FI spesific code 982_AED_045_C_2 is just used as an example in Sandbox | |||||||
balances | type | string | 32 | Type of the balance | ||||||
currency | string | 3 | Currency | |||||||
amount | string | 20 | Balance ammount | |||||||
cards | masked_card_number | string | 16 | Masked PAN | ||||||
customer_id | string | 20 | Customer ID: Customer Identification number This should be a unique number | |||||||
card_identifier_id | string | 32 | Card Identifier Id | |||||||
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 | |||||||
card_expiry_date | string | 4 | Cards expiry date the Format is YYMM | |||||||
cardholder_name | string | 21 | Cardholders name | |||||||
product_code | string | 32 | Product code, this code is generated by CMS after creating the product, this code is FI spesific code 982_AED_002_A is just used as an example in Sandbox | |||||||
product_name | string | 32 | Product Name | |||||||
brand | string | 10 | Card Brand example: MC , Visa | |||||||
card_virtual_indicator | string | 1 | V - Virtual P - Physical | |||||||
statuses | type | string | 10 | Status type | ||||||
value | string | 10 | Status value | |||||||
changed_date | string | 10 | Date of status change | |||||||
description | string | 100 | Brief description | |||||||
balances | type | string | 32 | Type of the balance | ||||||
currency | string | 3 | Currency | |||||||
amount | string | 20 | Balance ammount |
{
"NISrvResponse": {
"response_account_hierarchy": {
"header": {
"msg_id": "236001",
"msg_type": "ENQUIRY",
"msg_function": "REP_ACCOUNT_HIERARCHY_ENQUIRY",
"src_application": "IVR",
"target_application": "WAY4",
"timestamp": "2020-07-20T10:49:02.366+04:00",
"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"
},
"body": {
"accounts": {
"account_number": "0009821110000000008",
"customer_id": "100000027",
"rbs_number": "1",
"product_code": "982_AED_045_C_2",
"balances": {
"type": "",
"currency": "AED",
"amount": ""
},
"sub_accounts": {
"account_number": "0009821110000000008",
"customer_id": "7876790",
"rbs_number": "1",
"product_code": "982_AED_045_C_2",
"balances": {
"type": "",
"currency": "AED",
"amount": ""
},
"sub_accounts": {
"account_number": "0009821110000000008",
"customer_id": "7876790",
"rbs_number": "1",
"product_code": "982_AED_045_C_2",
"balances": {
"type": "",
"currency": "AED",
"amount": ""
},
"sub_accounts": {
"account_number": "0009821110000000008",
"customer_id": "7876790",
"rbs_number": "1",
"product_code": "982_AED_045_C_2",
"balances": {
"type": "",
"currency": "AED",
"amount": ""
},
"sub_accounts": {
"account_number": "0009821110000000008",
"customer_id": "7876790",
"rbs_number": "1",
"product_code": "982_AED_045_C_2",
"balances": {
"type": "",
"currency": "AED",
"amount": ""
},
"sub_accounts": {
"account_number": "0009821110000000008",
"customer_id": "7876790",
"rbs_number": "1",
"product_code": "982_AED_045_C_2",
"balances": {
"type": "",
"currency": "AED",
"amount": ""
},
"cards": {
"masked_card_number": "999851XXXXXX8349",
"customer_id": "100000027",
"card_identifier_id": "99985101161390700708",
"card_identifier_type": "EXID",
"card_expiry_date": "0528",
"cardholder_name": "JOHN DOE",
"product_code": "982_AED_002_A",
"product_name": "",
"brand": "VISA",
"card_virtual_indicator": "V",
"statuses": {
"type": "BCC-CARD-982",
"value": "_",
"changed_date": "",
"description": "SPACE"
},
"balances": {
"type": "",
"currency": "AED",
"amount": ""
}
}
}
}
}
}
}
}
}
}
}
}
Node | Child Node | Type | Length | Description | ||
---|---|---|---|---|---|---|
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.