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.

Version

Lookup Card Identifier

Status:

Production

Version:

V2

Category:

Card Services

Lookup Card Identifier

Overview

Our API provides a solution for obtaining alternative identifiers for a given card identifier. It is one of the key APIs that enables our customers to avoid maintaining card numbers in their own system, thus reducing their PCI-DSS scope. By using this API, customers can dynamically retrieve clear or encrypted PAN by using our tokenized card identifier. This allows them to avoid the strict guidelines of PCI-DSS while still being able to perform transactions securely. To utilize this feature, the card identifier must be provided as an input to the API. The API then uses this input to query the card records and returns a response containing the requested identifier in a structured format.

How It Works

This API is designed to securely exchange card PANs (personal account number) by using a randomly generated token called EXID (external ID) instead. The EXID is a non-sensitive identifier that is 20 characters long and made up of various elements such as the BIN (8 digits) of the card, a system identifier (1 digit), 10 random numbers and a Luhn digit check.

This API allows for both retrieving the Card PAN using the EXID, or the EXID using the Card PAN. Additionally, this API also supports end-to-end encryption for the Card PAN if desired. To enable this, the request must include a Public Key in the form of a Base64 encoded X509 certificate, which is used to encrypt the PAN before it is sent.

This ensures that the PAN can only be decrypted by the private key owned by the requester. This API allows for secured transport of sensitive data and can help customers stay out of PCI-DSS scope as they don't need to store any card numbers on their own system.

https://api-sandbox.network.global

Lookup Card Identifier

Status:

Production

Version:

V2

Category:

Card Services
/V2/cardservices/LookupCardIdentifier
curl --location --request POST '#{PARAM_URL}' --header 'Authorization: Bearer {{ access_token }}' {custom_headers} --data-raw '#{JSON_PAYLOAD}'
curl --location --request GET 'https://api-sandbox.network.global/v1/tokenkc/generate' \--data-raw '#{JSON_PAYLOAD}'
curl --location --request POST 'https://api-sandbox.network.global/v1/tokenkc/generate' \--data-raw '#{JSON_PAYLOAD}'

Node Child Node Type Length Description
Authorization* requiredBearer xxxx* requiredstringAuthorization Header (Bearer Token)
Content-Type* requiredapplication/json* requiredstringContent Type

Node TypeTypeLengthDescription
NISrvRequestrequest_lookup_card_identifierheadermsg_id* requiredstring12Message 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* requiredstring12Request Type
msg_function* requiredstring50Message Type – This can have either “TRANSACTION” or “ENQUIRY” As for this API the value expected is “ENQUIRY”
src_application* requiredstring10Source 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* requiredstring10Target application name Ex CMS
timestamp* requiredstring30Timestamp of the request - Format YYYY-MM-DDtHH:MM:SS.SSS+04:00
tracking_idstring15Transaction Tracking Id
bank_id* requiredstring4Bank 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”
bodycard_identifier_id* requiredstring32Card Identifier
card_identifier_type* requiredstring20CONTRACT_NUMBER is used for clear card number or EXID which is a unique identifier for the card generated by CMS
public_keystring500X.509 Certificate encapsulating a Public Key to be used to encrypt the clear card number

{
    "NISrvRequest": {
        "request_lookup_card_identifier": {
            "header": {
                "msg_id": "236001",
                "msg_type": "ENQUIRY",
                "msg_function": "REQ_LOOKUP_CARD_IDENTIFIER",
                "src_application": "IVR",
                "target_application": "WAY4",
                "timestamp": "2020-07-20T10:49:02.366+04:00",
                "tracking_id": "236001",
                "bank_id": "NIC"
            },
            "body": {
                "card_identifier_id": "99984100111514120000",
                "card_identifier_type": "EXID",
                "public_key": "947DFE575D5DAFD68A57414C46CDF039AFA"
            }
        }
    }
}

Node Child Node Type Length Description
Content-Typeapplication/jsonstringContent Type

Node TypeTypeLengthDescription
NISrvResponseresponse_lookup_card_identifierheadermsg_id* requiredstring12Unique Source Message ID eg ada123456fdsf
msg_type* requiredstring12Message Type – This can have either “TRANSACTION” or “ENQUIRY” As for this API the value expected is “ENQUIRY”
msg_function* requiredstring50Message functions: Should be “REP_LOOKUP_CARD_IDENTIFIER”
src_application* requiredstring10Source 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* requiredstring10The 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* requiredstring15Timestamp of the request - Format YYYY-MM-DDtHH:MM:SS.SSS+04:00
tracking_idstring15Transaction Tracking Id
bank_id* requiredstring4Bank 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_detailsapplication_name* requiredstring20Application Name
date_time* requiredstring30Timestamp of the response Format “YYYY-MM-DD HH:MM:SS”
status* requiredstring1Status of the request (S/F)
error_code* requiredstring4EAI Internal Error Code (Check error codes section for the complete list of error codes and error code descriptions)
error_description* requiredstring100Error Description (Check error codes section for the complete list of error codes and error code descriptions)
transaction_ref_idstring20The tracking_id sent in the request will be sent back in response in this field.
bodycard_identifier_type* requiredstring20CONTRACT_NUMBER is used for clear card number or EXID which is a unique identifier for the card generated by CMS
card_identifier_id* requiredstring32EXID

{
    "NISrvResponse": {
        "response_lookup_card_identifier": {
            "header": {
                "msg_id": "236001",
                "msg_type": "ENQUIRY",
                "msg_function": "REP_LOOKUP_CARD_IDENTIFIER",
                "src_application": "IVR",
                "target_application": "WAY4",
                "timestamp": "2020-07-20T06:49:02.366Z",
                "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"
            },
            "body": {
                "card_identifier_type": "EXID",
                "card_identifier_id": "454545XXXXXX1234"
            }
        }
    }
}

Code Description
200Sample Description
400Bad Request
401Unauthorized
403Forbidden
500Internal Server Error
502Bad gateway
503Scheduled Maintenance
504Gateway Timeout
596Service Not Found

How It Works

Follow the steps below. For more details, read the Quick Start Guide.