Card Services
Overview
Our remittance solution provides the facility to initiate cross-border remittance from any sender’s card/account/wallet (via internet/mobile banking) to Recipient bank accounts/digital wallets.
This solution works for P2P(person-to-person)/A2A(Account-to-account) cross-border payments.
Create Funds Transaction
Status:
Production
Version:
V2
Category:
Remittance Services
Overview
This service is used to create the transaction for pushing/crediting the funds to the recipient’s card. This API provides functionality to push funds to the recipient’s account using VisaDirect Original Credit Transaction (OCT) or MasterCard Send Payment Transaction.
Create Funds Transaction
Status:
Production
Version:
V2
Category:
Remittance 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_create_push_funds_transaction | 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 | Static Value - REQ_GET_EXCHANGE_RATE | |||||||
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 | 30 | Tracking_id 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 | transaction_reference | string | 40 | Transaction Identifier - client provided | ||||||
recipient_account | string | 19 | recipient PAN | |||||||
payout_amount | string | 12 | payout amount | |||||||
payout_currency | string | 3 | payout amount currency | |||||||
origination_country | string | 3 | country in which payout is initiated | |||||||
source_of_funds_code | string | 2 | If the transaction is a money transfer, the field is required and must contain a valid sourceOfFundsCode code that matches the funding instrument. | |||||||
merchant_type | string | 4 | Merchant Category Code | |||||||
payment_type | string | 3 | Type of payout transaction initiated - A2A, P2P | |||||||
sender_account_number | string | 40 | Sender account number | |||||||
sender_first_name | string | 20 | Sender's first name | |||||||
sender_last_name | string | 20 | Sender's last name | |||||||
sender_address_line1 | string | 35 | Sender's address line1 | |||||||
sender_address_city | string | 25 | Sender's address city | |||||||
sender_address_postalcode | string | 10 | Sender's address postal code | |||||||
sender_address_country | string | 3 | Sender's address country | |||||||
recipient_first_name | string | 20 | Recipient's first name | |||||||
recipient_last_name | string | 20 | Recipient's last name | |||||||
originator_id_code | string | 15 | unique identifier for card acceptor - Originator/service provider | |||||||
originator_name | string | 25 | For P2P payments, must contain sender name | |||||||
originator_terminal_id | string | 8 | identifier for the terminal at a card acceptor location. | |||||||
originator_address | string | 30 | address of the originator | |||||||
originator_city | string | 10 | city of the originator | |||||||
originator_state | string | 50 | state or province of the originator | |||||||
originator_zipcode | string | 14 | zip/postal code of the originator | |||||||
originator_country | string | 50 | country of the originator | |||||||
purpose_of_payment | string | 12 | Purpose of payment is required in certain markets to clearly identify the purpose of the payment | |||||||
local_transaction_datetime | string | 20 | local date and time when transaction is submitted | |||||||
retrieval_refernece_number | string | 12 | value used to tie together service calls related to a single financial transaction | |||||||
systems_trace_audit_number | string | 6 | unique value should be used for each API method |
{
"NISrvRequest": {
"request_create_push_funds_transaction": {
"header": {
"msg_id": "{{$timestamp}}",
"msg_type": "{{msg_type_E}}",
"msg_function": "REQ_CREATE_FUNDS_TRANSACTION",
"src_application": "MOA",
"target_application": "VISA",
"timestamp": "{{timestamp1}}",
"tracking_id": "{{$randomInt}}",
"bank_id": "REM"
},
"body": {
"transaction_reference": "1234556",
"recipient_account": "4060320000000127",
"payout_amount": "150.00",
"payout_currency": "USD",
"origination_country": "840",
"local_transaction_datetime": "2024-09-09T09:20:00",
"retrieval_refernece_number": "412770452025",
"systems_trace_audit_number": "451018",
"source_of_funds_code": "05",
"merchant_type": "6012",
"payment_type": "A2A",
"sender_account_number": "4060320000000126",
"sender_first_name": "Sujit",
"sender_last_name": "Kosta",
"sender_address_line1": "901 Metro Center Blvd",
"sender_address_city": "Foster City",
"sender_address_postalcode": "12345",
"sender_address_country": "124",
"recipient_first_name": "Parvinder",
"recipient_last_name": "Singh",
"purpose_of_payment": "abc",
"originator_id_code": "CA-IDCode-77765",
"originator_name": "Visa Inc. USA-Foster City",
"originator_terminal_id": "TID-9999",
"originator_address": "xyz",
"originator_city": "San Mateo",
"originator_state": "CA",
"originator_zipcode": "94404",
"originator_country": "USA",
"acquiring_bin": "408999"
}
}
}
}
Node | Child Node | Type | Length | Description | |
---|---|---|---|---|---|
Content-Type | application/json | string | Content Type |
Node Type | Type | Length | Description | |||||||
---|---|---|---|---|---|---|---|---|---|---|
NISrvResponse | response_create_push_funds_transaction | 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 | Static Value - RES_GET_EXCHANGE_RATE | |||||||
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 Date & time Format DD/MM/YYYY HH:MM:SS | |||||||
tracking_id | string | 30 | Tracking ID of the response Date & time Format DD/MM/YYYY HH:MM:SS | |||||||
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 | transaction_reference | string | 40 | Transaction Identifier - client provided | ||||||
payout_reference | string | 40 | Transaction Identifier - scheme generated in response | |||||||
status_of_transaction | string | 10 | status of the transaction request - Approved, Declined | |||||||
response_code | string | 1 | source for the response; typically, either the recipient issuer or a Visa system. | |||||||
transmission_datetime | string | 20 | This field contains the date and time the request is submitted to VisaNet. | |||||||
approval_code | string | 6 | authorization code from the issuer | |||||||
custom_fields | key | string | 100 | |||||||
value | string | 100 |
{
"NISrvResponse": {
"response_create_push_funds_transaction": {
"header": {
"msg_id": "236001",
"msg_type": "ENQUIRY",
"msg_function": "RES_GET_EXCHANGE_RATE",
"src_application": "BNK",
"target_application": "DLOCAL",
"timestamp": "2024-03-06T11:50:02.366+04:00",
"tracking_id": "528",
"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": {
"transaction_reference": "",
"payout_reference": "",
"status_of_transaction": "",
"response_code": "",
"transmission_datetime": "",
"approval_code": "",
"custom_fields": [
{
"key": "",
"value": ""
}
]
}
}
}
}
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.