Card Services
Overview
Our card services support multiple card types, including Visa, MasterCard, American Express, and Discover, as well as other popular payment methods like Apple Pay and Google Pay. You can also set up recurring payments for your customers, making it easy for them to make regular payments without having to enter their card information every time.Our advanced fraud detection and prevention features use machine learning algorithms to help identify and prevent fraudulent transactions. We also provide detailed reporting and analytics, allowing you to track and analyze payment data and make data-driven decisions.
We also offer multi-currency support, which allows you to accept payments from customers in different parts of the world. And with our 24/7 customer support, you can always count on us to help you resolve any issues related to our card services.Our card services are also fully compliant with all local and international regulations, such as PCI DSS, so you can be confident that you're accepting payments in a secure and compliant manner.
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.
P2P Transfer
Status:
Production
Version:
V2
Category:
Card Services
Overview
The P2P Transfer API facilitates the movement of funds from a source (either an account or a card) to a target (either an account or a card). This operation involves debiting the specified "source identifier" and crediting the designated "target identifier" with the requested amount, all within the same financial institution (FI).
The transfer scenarios covered include:
- From a Card identifier to another Card identifier
- From a Card identifier to an Account identifier
- From an Account identifier to a Card identifier
- From an Account identifier to another Account identifier
This API is particularly useful for transferring funds within a corporate product hierarchy, enabling transfers between various levels such as from a company to a department. It also facilitates transfers between two distinct private accounts or cards.
How It Works
The P2P Transfer API functions by providing the source and target IDs in the transfer request, along with the specified amount. This initiates the transfer of funds from the source ID to the target ID.
Overview
The P2P Transfer API facilitates the movement of funds from a source (either an account or a card) to a target (either an account or a card). This operation involves debiting the specified "source identifier" and crediting the designated "target identifier" with the requested amount, all within the same financial institution (FI).
The transfer scenarios covered include:
- From a Card identifier to another Card identifier
- From a Card identifier to an Account identifier
- From an Account identifier to a Card identifier
- From an Account identifier to another Account identifier
This API is particularly useful for transferring funds within a corporate product hierarchy, enabling transfers between various levels such as from a company to a department. It also facilitates transfers between two distinct private accounts or cards.
How It Works
The P2P Transfer API functions by providing the source and target IDs in the transfer request, along with the specified amount. This initiates the transfer of funds from the source ID to the target ID.
P2P Transfer
Status:
Production
Version:
V2
Category:
Card Services
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_P2P_transfer | 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 “TRANSACTION” | |||||||
msg_function | string | 50 | Static Value - REQ_P2P_TRANSFER | |||||||
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 | source_identifier_id | string | 32 | source identifier | ||||||
source_identifier_type | string | 20 | CONTRACT_NUMBER or EXID | |||||||
target_identifier_id | string | 32 | target identifier | |||||||
target_identifier_type | string | 20 | CONTRACT_NUMBER or EXID | |||||||
transaction | transaction_code | string | 32 | Transaction code For Payment- PAYCC For Reversal- PAYACC-REV For Debit- DEBITCC For Debit Reversal- DEBITCC-REV | ||||||
amount | string | 20 | Amount | |||||||
currency | string | 3 | Currency | |||||||
description | string | 255 | Transaction description | |||||||
billing_amount | string | 20 | Billing Amount | |||||||
billing_currency | string | 3 | Billing Currency | |||||||
auth_code | string | 6 | Auth Code | |||||||
country | string | 3 | Country | |||||||
city | string | 200 | City | |||||||
counter_party_number | string | 20 | Source Number | |||||||
transaction_ref_number | string | 12 | Transaction reference number | |||||||
transaction_date | string | 19 | Date of transactions | |||||||
external_ref_number | string | 12 | Reference number | |||||||
transfer_network | string | 40 | Network | |||||||
rules_data | key | string | 32 | Custom Tag | ||||||
value | string | 128 | Tag value |
{
"NISrvRequest": {
"request_p_2_p_transfer": {
"header": {
"msg_id": "6546126",
"msg_type": "TRANSACTION",
"msg_function": "REQ_P2P_TRANSFER",
"src_application": "BNK",
"target_application": "w4ksa04",
"timestamp": "2023-03-09T12:03:01.609+04:00",
"tracking_id": "Rq_p2ptfr7",
"bank_id": "PRMBK"
},
"body": {
"source_identifier_type": "EXID",
"source_identifier_id": "0003666048844670682",
"target_identifier_type": "EXID",
"target_identifier_id": "0003666048844670840",
"transaction": {
"transaction_code": "PT-NQ-OP-P2P",
"transaction_date": "2021-01-15 16:26:36.112",
"amount": "1000.00",
"currency": "SAR",
"billing_amount": "1000.00",
"billing_currency": "USD",
"description": "account Payment",
"transaction_ref_number": "7811841231",
"auth_code": "123456",
"country": "UAE",
"city": "Dubai",
"external_ref_number": "",
"transfer_network": "fi\/hierarchy\/network_code",
"rules_data": [
{
"key": "src_app_code",
"value": "X"
},
{
"key": "ext_user_id",
"value": "Y"
}
]
}
}
}
}
}
Node | Child Node | Type | Length | Description | |
---|---|---|---|---|---|
Content-Type | application/json | string | Content Type |
Node Type | Type | Length | Description | |||||||
---|---|---|---|---|---|---|---|---|---|---|
NISrvResponse | response_P2P_transfer | 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_P2P_TRANSFER | |||||||
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 | 15 | 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 | tranCode | string | 3 | The transaction code. 101 for auth; 102 for advice; 108 for profile maturation | ||||||
source | string | 10 | Name of source application. | |||||||
dest | string | 20 | Name of destination application. | |||||||
extendedHeader | string | 10 | Extended header. | |||||||
response_record_version | string | 1 | The response_record_version specifies the version of the scoring response layout. | |||||||
score_count | string | 2 | The number of scores in the response message and has values from 0 to 8. | |||||||
decision_count | string | 2 | The number of decisions in the response message and has values from 0 to 10. | |||||||
scoring_server_id | string | 4 | unique identifier for the Scoring Server host. | |||||||
warning | string | 50 | warning | |||||||
decisions | decision_type | string | 32 | Stores the decision type of a type/code pair created by Falcon Rule Expert functions that generate type/code pairs | ||||||
decision_code | string | 32 | Stores the decision code of a type/code | |||||||
scores | score | string | 4 | the score returned from the model | ||||||
error_code | string | 4 | This is the error code generated by the model during its processing of the transaction to generate a score. A value of 0 or blank indicates no error. | |||||||
segment_ID | string | 8 | This field contains the segment ID of the score in the score_1 field | |||||||
score_name | string | 22 | Identifier for the score. | |||||||
reason_1 | string | 4 | Reason the score was generated | |||||||
reason_2 | string | 4 | Reason the score was generated | |||||||
reason_3 | string | 4 | Reason the score was generated |
{
"NISrvResponse": {
"response_P2P_transfer": {
"header": {
"msg_id": "236001",
"msg_type": "TRANSACTION",
"msg_function": "REP_P2P_TRANSFER",
"src_application": "IVR",
"target_application": "WAY4",
"timestamp": "2020-07-20T06:49:02.366Z",
"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": {
"tranCode": "999",
"source": "",
"dest": "",
"extendedHeader": "",
"response_record_version": "",
"score_count": "",
"decision_count": "",
"scoring_server_id": "",
"warning": "",
"decisions": {
"decision_type": "",
"decision_code": ""
},
"scores": {
"score": "9999",
"error_code": "",
"segment_ID": "",
"score_name": "",
"reason_1": "",
"reason_2": "",
"reason_3": ""
}
}
}
}
}
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.