Create Payment v2
API to push payment instructions into the NIUM platform. This section is used to elaborate upon some of the capabilities within the API:
URL
POST https://api-test.instarem.com:4803/api/v2/payouts
Header Parameters
Parameter | Description | Type | Required |
---|---|---|---|
authorization | Authentication token | String | Yes |
content-type | The Content-Type entity header is used to indicate the media type of the resource. Expected value is application/json. | String | Yes |
X-CLIENT-ID | Unique id for client generated by Nium, Required only in case of partner based model (E.g. 593feb7c7c52bb2357b2df6c). | String | No |
Example Request
- Bash
- Javascript
- C#
curl --location --request POST 'https://api-test.instarem.com:4803/api/v2/payouts' \\
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE0OTgxMzQ4OTQsImRhdGEiOnsic3ViIjoiNTk0MjNmMzZjZWEyMTQ2OTI2ODczOWE1IiwiY2xpZW50IjoiNTk0MjNmMzZjZWEyMTQ2OTI2ODczOWExIn0sImlhdCI6MTQ5ODA0ODQ5NH0.pevwSDpk-JDNtVIpqFu_m0Xu1UnDVumrAYStcrxf8sM' \\
--header 'Content-Type: application/json' \\
--data-raw '{
"request_id": "1XkQkI34DA",
"transaction_number": "ZQ1101",
"destination_account": 1024501739830,
"destination_currency": "USD",
"local_conversion_currency": "USD",
"statement_narrative": "Salary",
"original_remitter_fi": "",
"source_account": 101950173983,
"source_amount": 1000,
"beneficiary": {
"name": "Mark Jobs",
"address": "New york city USA",
"city": "New York",
"country_code": "US",
"email": "example@mail.com",
"account_type": "Individual",
"contact_number": "1234567891",
"state": "New York",
"postcode": "10005",
"wallet_id": "64000000003",
"account_number": "12342346545123",
"bank_account_type": "Checking",
"bank_name": "Bank of America",
"bank_code": "545343545345354",
"identification_type": "Company Organization Code",
"identification_value": "12345678-X",
"card_number": "1234123412341234",
"encrypted_card_number": "bjQdreWkCvrO6lBzKqheGVZI3n_H5Cy9lMbkAepwIGlsfesJ7eHy4GVzWoDefDBdQvFtWVhNrbyHFf0hA5_FI5eYIcuCuapMcOpf6U527xpEyQh2HfOEqegQF4yFG83P56T1u7AHATM+VJdLcBZWfPQtEegG8fAiBpZa3Zy3YA37wrNhY2JDPlwj6LyWN2kkgh_PxLcLL4dWKrSw7spSnOrJLQO5pxb6X+OTmIwS+mWCBJCRMQxq2y5KmvMiv+HqR1Omw+2DYXBfyCgpFiZ9PzoS+JkGXvcMKwZ5hPjEj27IdU4somaVj45GykyI956xft+vN6OhqCrP82Yylhziiw=="
"card_expiry_date": "2020-12",
"relationship": "Employee",
"account_identifier_type": "MOBILE",
"account_identifier_value": "+919021221212",
"card_token": "f758a897-80e3-4d81-ba4d-baf860f8c2a8",
"contact_country_code": "+1",
"name_local_language": "マーク ジョブス"
},
"remitter": {
"name": "Instarem",
"given_name": true,
"account_type": "Company",
"bank_account_number": "10022206393",
"identification_type": "Company Registration No",
"identification_number": "IN1244654",
"country_code": "IN",
"address": "Sakinaka Mumbai India",
"purpose_code": "IR001",
"source_of_income": "Cross border remittence",
"contact_number": "1234567890",
"dob": "1980-01-01",
"city": "Mumbai",
"postcode": "4703101",
"state": "Maharashtra",
"source_of_funds": "",
"place_of_birth": "IN",
"nationality": "IN",
"occupation": "EXECUTIVE"
},
"payout_options": {
"fx_hold_id": "5aa22016-10da-11ea-9a9f-362b9e155667"
},
"additional_info": {
"trade_order_id": "",
"trade_time": "",
"trade_currency": "",
"trade_amount": "",
"trade_name": "",
"trade_count": "",
"goods_carrier": "",
"service_detail": "",
"service_time": "",
"cash_pickup": "",
"trade_platform_name": "e-commerce"
},
"routing_code_type_1": "SWIFT",
"routing_code_value_1": "WSD12345",
"routing_code_type_2": "ACH CODE",
"routing_code_value_2": "222333123",
"routing_code_type_3": "",
"routing_code_value_3": "",
"payout_method": "CASH_PAYOUT",
"swift_fee_payer": "ACO",
"document_reference": "6012a81b11c68700c02ef11b",
"beneficiary_intermediary_bank_code" : "BARCFB21",
"payout_rail" : ["FEDWIRE"]
}'
var data = JSON.stringify({
"request_id": "1XkQkI34DA",
"transaction_number": "ZQ1101",
"destination_account": 1024501739830,
"destination_currency": "USD",
"local_conversion_currency": "USD",
"statement_narrative": "Salary",
"original_remitter_fi": "",
"source_account": 101950173983,
"source_amount": 1000,
"beneficiary": {
"name": "Mark Jobs",
"address": "New york city USA",
"city": "New York",
"country_code": "US",
"email": "example@mail.com",
"account_type": "Individual",
"contact_number": "1234567891",
"state": "New York",
"postcode": "10005",
"wallet_id": "64000000003",
"account_number": "12342346545123",
"bank_account_type": "Checking",
"bank_name": "Bank of America",
"bank_code": "545343545345354",
"identification_type": "Company Organization Code",
"identification_value": "12345678-X",
"card_number": "1234123412341234",
"card_expiry_date": "2020-12",
"relationship": "Employee"
},
"remitter": {
"name": "Instarem",
"given_name": true,
"account_type": "Company",
"bank_account_number": "10022206393",
"identification_type": "Company Registration No",
"identification_number": "IN1244654",
"country_code": "IN",
"address": "Sakinaka Mumbai India",
"purpose_code": "IR001",
"source_of_income": "Cross border remittence",
"contact_number": "1234567890",
"dob": "1980-01-01",
"city": "Mumbai",
"postcode": "4703101",
"state": "Maharashtra",
"source_of_funds": "",
"place_of_birth": "IN",
"nationality": "IN",
"occupation": "EXECUTIVE"
},
"payout_options": {
"fx_hold_id": "5aa22016-10da-11ea-9a9f-362b9e155667",
"deduct_amount": 100
},
"additional_info": {
"trade_order_id": "",
"trade_time": "",
"trade_currency": "",
"trade_amount": "",
"trade_name": "",
"trade_count": "",
"goods_carrier": "",
"service_detail": "",
"service_time": "",
"cash_pickup": ""
},
"routing_code_type_1": "SWIFT",
"routing_code_value_1": "WSD12345",
"routing_code_type_2": "ACH CODE",
"routing_code_value_2": "222333123",
"routing_code_type_3": "",
"routing_code_value_3": "",
"swift_fee_payer": "ACO",
"payout_method": "CASH_PAYOUT"
})
var xhr = new XMLHttpRequest();
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("post", "https://api-test.instarem.com:4803/api/v2/payouts")
xhr.setRequestHeader("authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE0OTgxMzQ4OTQsImRhdGEiOnsic3ViIjoiNTk0MjNmMzZjZWEyMTQ2OTI2ODczOWE1IiwiY2xpZW50IjoiNTk0MjNmMzZjZWEyMTQ2OTI2ODczOWExIn0sImlhdCI6MTQ5ODA0ODQ5NH0.pevwSDpk-JDNtVIpqFu_m0Xu1UnDVumrAYStcrxf8sM");
xhr.setRequestHeader("content-type", "application/json");
xhr.send(data);
var client = new RestClient("https://api-test.instarem.com:4803/api/v2/payouts");
var request = new RestRequest(Method.POST);
request.AddHeader("authorization", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE0OTgxMzQ4OTQsImRhdGEiOnsic3ViIjoiNTk0MjNmMzZjZWEyMTQ2OTI2ODczOWE1IiwiY2xpZW50IjoiNTk0MjNmMzZjZWEyMTQ2OTI2ODczOWExIn0sImlhdCI6MTQ5ODA0ODQ5NH0.pevwSDpk-JDNtVIpqFu_m0Xu1UnDVumrAYStcrxf8sM");
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", @"{
""request_id"": ""1XkQkI34DA"",
""transaction_number"": ""ZQ1101"",
""destination_account"": 1024501739830,
""destination_currency"": ""USD"",
""local_conversion_currency"": ""USD"",
""statement_narrative"": ""Salary"",
""original_remitter_fi"": """",
""source_account"": 101950173983,
""source_amount"": 1000,
""destination_amount"": 1000,
""deposit_method"": ""CASH"",
""beneficiary"": {
""name"": ""Mark Jobs"",
""address"": ""New york city USA"",
""city"": ""New York"",
""country_code"": ""US"",
""email"": ""example@mail.com"",
""account_type"": ""Individual"",
""contact_number"": ""1234567891"",
""dob"": ""1980-01-01"",
""state"": ""New York"",
""postcode"": ""10005"",
""wallet_id"": ""64000000003"",
""account_number"": ""12342346545123"",
""bank_account_type"": ""Checking"",
""bank_name"": ""Bank of America"",
""bank_code"": ""545343545345354"",
""identification_type"": ""Company Organization Code"",
""identification_value"": ""12345678-X"",
""card_number"": ""1234123412341234"",
""card_expiry_date"": ""2020-12"",
""relationship"": ""Employee""
},
""remitter"": {
""name"": ""Instarem"",
""given_name"": true,
""account_type"": ""Company"",
""bank_account_number"": ""10022206393"",
""identification_type"": ""Company Registration No"",
""identification_number"": ""IN1244654"",
""country_code"": ""IN"",
""address"": ""Sakinaka Mumbai India"",
""purpose_code"": ""IR001"",
""source_of_income"": ""Cross border remittence"",
""contact_number"": ""1234567890"",
""dob"": ""1980-01-01"",
""city"": ""Mumbai"",
""postcode"": ""4703101"",
""state"": ""Maharashtra"",
""source_of_funds"": """",
""place_of_birth"": ""IN"",
""nationality"": ""IN"",
""occupation"": ""EXECUTIVE""
},
""payout_options"": {
""fx_hold_id"": ""5aa22016-10da-11ea-9a9f-362b9e155667"",
""deduct_amount"": 100
},
""additional_info"": {
""trade_order_id"": """",
""trade_time"": """",
""trade_currency"": """",
""trade_amount"": """",
""trade_name"": """",
""trade_count"": """",
""goods_carrier"": """",
""service_detail"": """",
""service_time"": """",
""cash_pickup"": """"
},
""routing_code_type_1"": ""SWIFT"",
""routing_code_value_1"": ""WSD12345"",
""routing_code_type_2"": ""ACH CODE"",
""routing_code_value_2"": ""222333123"",
""routing_code_type_3"": """",
""routing_code_value_3"": """",
""swift_fee_payer"": ""ACO"",
""payout_method"": ""BANK""
}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Body Parameters
Parameter | Description | Type | Required |
---|---|---|---|
request_id | A unique request ID specified by the client in the request. | String | Yes |
transaction_number | A unique transaction number specified by the client. Duplicate transaction number will be rejected. | String | Yes |
destination_account | Destination account number. | Number | No |
destination_currency | Destination currency (3-letter ISO-4217 code). | String | No |
local_conversion_currency | Beneficiary's country local currency | String | No |
statement_narrative | Payment Narration. | String | Yes |
original_remitter_ fi | Original remitter fi | String | No |
source_account | Source Account Number | Number | Yes |
source_amount | Amount to send. Mutually exclusive with destination_amount. | Number | No |
destination_amount | Amount to be paid to beneficiary. Mutually exclusive with source_acount. | Number | No |
deposit_method | Deposit Method is CASH, BANK, CARD or WALLET | String | No |
beneficiary.name | Beneficiary name. | String | Yes |
beneficiary.address | Beneficiary address. | String | No |
beneficiary.city | Beneficiary city. | String | No |
beneficiary.country_code | Beneficiary country code (2-letter ISO 3166-2 country code). | String | Yes |
beneficiary.email | Beneficiary email. | String | No |
beneficiary.account_type | Beneficary account type either Individual or Company. | String | No |
beneficiary.contact_number | Beneficiary contact number. | String | No |
beneficiary.dob | Beneficiary Date of birth (YYYY-MM-DD). | String | No |
beneficiary.establishment_date | Beneficiary Establishment Date (YYYY-MM-DD). | String | No |
beneficiary.state | Beneficiary state. | String | No |
beneficiary.postcode | Beneficiary postcode. | String | No |
beneficiary.wallet_id | Beneficiary wallet id. (Deprecated, use beneficiary.account_number) | String | No |
beneficiary.account_number | Beneficiary account number. | String | No |
beneficiary.bank_account_type | Beneficiary Bank Account Type can be one of Checking, Saving or Maestra. | String | No |
beneficiary.bank_name | Beneficiary bank name. | String | No |
beneficiary.bank_code | Beneficiary bank code. | String | No |
beneficiary.identification_type | One of Company Organization Code, Company Social Credit Code, Passport, Company Registration No., CUIT, CUIL, CPF, CNPJ, RUT, CC, NIT, CE, PASS, DNI, RUC, CI. | String | No |
beneficiary.identification_value | Value corresponding to Beneficiary Identification Type. | String | No |
beneficiary.card_number | Card number.(Only valid for GeoSwift Card) | String | No |
beneficiary.encrypted_card_number | Encrypted Card Number(For Public key to encrypt card number contact customer success team) | String | No |
beneficiary.card_expiry_date | Card expiration date in the format YYYY-MM. | String | No |
beneficiary.relationship | Remitter beneficiary relationship. | String | No |
beneficiary.account_identifier_type | Proxy type for this payout are MOBILE, UEN or NRIC | String | Conditional |
beneficiary.account_identifier_value | Proxy values are dependent on proxy type | String | Conditional |
beneficiary.card_token | Card token | String | No |
beneficiary.contact_country_code | Contact country code | String | No |
beneficiary.name_local_language | Beneficiary's name in local language (e.g. Japanese Katakana) | String | No |
remitter.name | Remitter name. | String | No |
remitter.given_name | Indicates whether the remitters name should allow initials. | Boolean | No |
remitter.account_type | Remitter account type either Individual or Company. | String | No |
remitter.bank_account_number | Remitter Bank Account Number. | String | No |
remitter.identification_type | One of Registration Number, Registration ID, ACRA,Travel agent License number,Company Registration No,License No,ARNU,DRLC,NIDN,CCPT. | String | No |
remitter.identification_number | Remitter identification number is the document identifier i.e. IN1244654. | String | No |
remitter.country_code | Remitter country code (2-letter ISO 3166-2 country code). | String | No |
remitter.address | Remitter address. | String | No |
remitter.purpose_code | The purpose for the payment, i.e. IR001. Use Instarem's data reference for purpose code. | String | No |
remitter.source_of_income | Remitter source of income. | String | No |
remitter.contact_number | Remitter contact number. | String | No |
remitter.dob | Remitter Date of birth (YYYY-MM-DD). | String | No |
remitter.city | Remitter city. | String | No |
remitter.postcode | Remitter postcode. | String | No |
remitter.state | Remitter state. | String | No |
remitter.source_of_funds | Remitters source of funds. | String | No |
remitter.place_of_birth | Remitter place of birth (2-letter ISO 3166-2 country code). | String | No |
remitter.nationality | Remitter nationality (2-letter ISO 3166-2 country code). | String | No |
remitter.occupation | Remitter occupation, i.e.EXECUTIVE. Use Instarem's data reference for remitter occupation. | String | No |
payout_options.fx_hold_id | Id of the lock & hold fx rate. | String | No |
additional_info.trade_order_id | Trade order id | String | No |
additional_info.trade_time | Trade time | String | No |
additional_info.trade_currency | Trade currency | String | No |
additional_info.trade_ amount | Trade amount | Number | No |
additional_info.trade_ name | Trade name | String | No |
additional_info.trade_ count | Trade count | Integer | No |
additional_info.goods_ carrier | Goods carrier | String | No |
additional_info.service_ detail | Service detail | String | No |
additional_info.service_ time | Service time | String | No |
additional_info.cash_ pickup | Cash pickup | String | No |
additional_info.trade_platform_name | Trade platform name for E-commerce payout | String | No |
routing_code_type_1 | Routing code type 1 (eg SWIFT for all Countries, IFSC for India, SORT CODE for UK, ACH CODE for USA, BRANCH CODE for Brazil and Bangladesh, BSB CODE for Australia, BANK CODE for HongKong). | String | No |
routing_code_value_1 | Routing code value 1 (eg ADCBINBB or ADCBINBB123 for SWIFT, SBIN0000058 for IFSC, 100000 for SORT CODE, 111000025 for ACH CODE, 012515 for BSB CODE, 151 for BANK CODE). | String | No |
routing_code_type_2 | Routing code type 2 (eg SWIFT for all Countries, IFSC for India, SORT CODE for UK, ACH CODE for USA, BRANCH CODE for Brazil and Bangladesh, BSB CODE for Australia, BANK CODE for HongKong). | String | No |
routing_code_value_2 | Routing code value 2 (eg ADCBINBB or ADCBINBB123 for SWIFT, SBIN0000058 for IFSC, 100000 for SORT CODE, 111000025 for ACH CODE, 012515 for BSB CODE, 151 for BANK CODE). | String | No |
routing_code_type_3 | Routing code type 3 (eg SWIFT for all Countries, IFSC for India, SORT CODE for UK, ACH CODE for USA, BRANCH CODE for Brazil and Bangladesh, BSB CODE for Australia, BANK CODE for HongKong). | String | No |
routing_code_value_3 | Routing code value 3 (eg ADCBINBB or ADCBINBB123 for SWIFT, SBIN0000058 for IFSC, 100000 for SORT CODE, 111000025 for ACH CODE, 012515 for BSB CODE, 151 for BANK CODE). | String | No |
payout_method | Payout Method either CASH_PAYOUT or BANK or CARD or WALLET or PROXY or SWIFT | String | No |
swift_fee_payer | This field defines who (Corporate / Beneficiary) will bear the SWIFT charges for the given transaction. The allowed values are: ACO, SHA & BEN | String | No |
document_reference | Document with reference to transactions | String | No |
beneficiary_intermediary_bank_code | SWIFT BIC associated to the Intermediary Agent | String | No |
payout_rail | This field can be used for selecting the Payout Rail to be used wherever multiple payout rails are available. The allowed values are:\n\nUSD: ['FEDWIRE', 'FEDNOW', 'ACH'],\n\nCAD: ['INTERAC', 'EFT'] | Array<String> | No |
Example Response
{
"reference_number": "ZQ1101",
"payment_id": "PY10001485",
"status": "IN_PROCESS",
"sub_status": "",
"status_description": "Payment in internal process",
"created_at": "2017-06-16T17:25:52.136+05:30",
"updated_at": "2017-06-16T17:26:20.670+05:30",
"hold_fx_expires_on": "2017-06-17T17:26:20.670+05:30"
}
Response Parameters
Parameter | Description | Type |
---|---|---|
reference_number | Transaction Reference Number | String |
payment_id | Transaction id | String |
status | Transaction Status | String |
sub_status | Transaction Sub Status | String |
status_description | Transaction Status details | String |
created_at | Date and time (UTC) of transaction. | String |
updated_at | Date and time (UTC) of transaction. | String |
hold_fx_ expires_on | Date and time (UTC) of hold_fx expiry | String |
Allowed values for account_identifier_type under beneficiary based on corridor
Currency | Type |
---|---|
SGD | MOBILE, UEN, NRIC, VPA |
BRL | MOBILE, EMAIL, ID |
INR | VPA |
MYR | NRIC, PASSPORT, CORPORATE_REGISTRATION_NUMBER, MOBILE, ARMY_ID |
AUD | MOBILE, EMAIL, ABN, ORGANISATION_ID |
HKD | EMAIL, MOBILE, FPS ID |