Skip to main content

List Meta Data for International External Accounts

Suggest Edits


8.1 Overview

You can gather all dynamic fields and validation details for an international external account based on country, currency, and holder type using the POST method, as described below.
This information is fetched directly from a third-party service outside the Ahrvo system, and customers must supply all specified fields.


8.2 Resource Access

Production (api.ahrvo.network)

POST https://api.ahrvo.network/banking/us2/v1/customer/id/{customerId}/internationalExternalAccount/metadata

Staging (gateway.ahrvo.network)

POST https://gateway.ahrvo.network/banking/us2/v1/customer/id/{customerId}/internationalExternalAccount/metadata

8.3 Arguments

FieldMandatory / OptionalDescription
holderTypeYesHolder type of the account (CONSUMER | CORPORATE)
countryYesDestination country (2-letter ISO code, e.g., US)
currencyYesCurrency for which metadata is required (see Appendix)

8.4 Example Request

Fetch metadata for creating an International External Account

POST /banking/us2/v1/customer/id/458293/internationalExternalAccount/metadata HTTP/1.1
Host: {hostname}
Authorization: Bearer {jwtToken}
x-api-key: {apiKey}
Content-Type: application/json
{
"holderType": "CONSUMER",
"country": "CN",
"currency": "CNY"
}

8.5 Example Response

{
"holderType": "CONSUMER",
"country": "CN",
"currency": "CNY",
"metadata": [
{
"fieldName": "holderName",
"fieldValidation": { "length": "35" },
"description": "Name",
"isMandatory": true
},
{
"fieldName": "holderEmail",
"fieldValidation": { "length": "100" },
"description": "Email Address",
"isMandatory": false
},
{
"fieldName": "holderAddress.addressLine1",
"fieldValidation": { "length": "25" },
"description": "Address Line 1",
"isMandatory": false
},
{
"fieldName": "holderAddress.addressLine2",
"fieldValidation": { "length": "20" },
"description": "Address Line 2",
"isMandatory": false
},
{
"fieldName": "holderAddress.city",
"fieldValidation": {
"characterType": "Alphanumeric",
"length": "20"
},
"description": "City",
"isMandatory": false
},
{
"fieldName": "holderAddress.state",
"fieldValidation": {
"characterType": "Alphanumeric",
"length": "15"
},
"description": "State",
"isMandatory": false
},
{
"fieldName": "holderAddress.zip",
"fieldValidation": {
"characterType": "Alphanumeric",
"length": "20"
},
"description": "Zip",
"isMandatory": false
},
{
"fieldName": "accountNumber",
"fieldValidation": {
"characterType": "Alphanumeric",
"length": "35"
},
"description": "Account Number",
"isMandatory": true
},
{
"fieldName": "swiftCode",
"fieldValidation": {
"characterType": "Alphanumeric",
"length": "100"
},
"description": "Routing Code",
"isMandatory": true
},
{
"fieldName": "internationalRoutingCode",
"fieldValidation": {
"characterType": "Numeric",
"beginsWith": "9",
"length": "5"
},
"description": "CNAPS",
"isMandatory": true
},
{
"fieldName": "additionalDetail.taxID",
"fieldValidation": {
"characterType": "Alphanumeric",
"beginsWith": "Cana",
"length": "9"
},
"description": "CTID",
"isMandatory": true
}
]
}

8.6 Example HTTP Status

```http
HTTP/1.1 200 OK

API Documentation