IVMS-101 Format Guidelines
Overview
GTR use the IVMS101 format defined by the interVASP Standards Working Group (ISWG), using 2020 edition of IVMS101-interVASP-data-model-standard-issue-1-FINAL.pdf. This is a standardized data model used in the crypto‑financial industry to accurately exchange users’ personally identifiable information (PII) between different VASPs.
The payload to be encrypted should look like below, the ivms101 payload is as a child inside the key name “ivms101”: { … }.
{
"ivms101": {
//...
}
}
Where the required information depends on Legal Person or Natural Person to make a transaction, the following structure may help you to fill the info.
One validated IVMS structure sent from Originator requires “Originator”, “Beneficiary”, “OriginatingVASP” inside, and the case is sensitive.
Following structure overviews the structure in IVMS-101, please note that the case is sensitive and name, value type (Object or Array) is also important.
{
"ivms101": {
"Originator": {
"originatorPersons": [
// LegalPerson or NaturalPerson
],
"accountNumber": ["ACCOUNT NUMBER"]
},
"Beneficiary": {
"beneficiaryPersons": [
// LegalPerson or NaturalPerson
],
"accountNumber": ["ACCOUNT NUMBER"]
},
"OriginatingVASP": {
"originatingVASP": {
"legalPerson": {
// LegalPerson
}
}
},
"BeneficiaryVASP": {
"beneficiaryVASP": {
"legalPerson": {
// LegalPerson
}
}
}
// option: transferPath (IntermediaryVasp)
// option: payloadMetadata (TransliterationMethodCode)
}
}
The necessary part to pre-fill in the JSON
Whatever you are OriginatingVASP or BeneficiaryVASP, if you initiate the request to GTR, you should preset your role in JSON (One of OriginatingVASP or BeneficiaryVASP), and you should set both the Beneficiary and Originator, please see the table below.
As API Initiator
| (Initiator) Pre-Transaction Approval | (Initiator) Post-Transaction Approval | |
|---|---|---|
| OriginatingVASP | Yes (Your company info) | No (Leave empty) |
| BeneficiaryVASP | No (Leave empty) | Yes (Your company info) |
| Originator | Yes (Your user) | Yes (Target user) |
| Beneficiary | Yes (Target user) | Yes (Your user) |
As Webhook Receiver
| (Receiver) Pre-Transaction Approval | (Receiver) Post-Transaction Approval | |
|---|---|---|
| OriginatingVASP | No (Return origin in json) | Yes (Your company info, *optional) |
| BeneficiaryVASP | Yes (Your company info, *optional) | No (Return origin in json) |
| Originator | No (Return origin in json) | No (Return origin in json) |
| Beneficiary | No (Return origin in json) | No (Return origin in json) |
Please see the organized chart also:
Necessary json-key preset in JSON by default
Please note that it is necessary to have default key-value of IVMS-101, please check section Default Key-Value of IVMS.
About Field - Originator, Beneficiary
We assume that you already have both originator person and beneficiary person info in your system, the verify target is beneficiary person, the travel rule verify request will focus on verify the beneficiary info.
As the OriginatingVASP, should make sure that you put the person info in beneficiary, and if the beneficiary and originator is the same person, you could directly use the same info for Originator and Beneficiary fields.
As the BeneficiaryVASP, the info in the Beneficiary field is to let you know the person who makes a transaction to your service.
Transaction target could be a natural person or legal person (company), it use the different structure in IVMS, please refer to the section:
- Example - Natural Person
- Example - Legal Person
About Field - OriginatingVASP
If you initiate the Pre-transaction travel rule verify flow, that means you are OriginatingVASP, please fill your company entity info into the corresponding field.
(For initiator) The above's example struct is following:
{
"ivms101": {
// Your company info (Because you're an originating VASP)
"OriginatingVASP": {
"originatingVASP": {
// required, you are an legal person
"legalPerson": {
"countryOfRegistration": "[2-Alpha Country Code]",
// required
"geographicAddress": [
{
"country": "[2-Alpha Country Code]",
"townName": "[Town Name]",
"addressType": "GEOG",
"addressLine": ["[Full Address]"]
}
],
"name": {
"nameIdentifier": [
{
// required
"legalPersonName": "[Your Company Name]",
"legalPersonNameIdentifierType": "LEGL"
}
]
},
"nationalIdentification": {
"countryOfIssue": "[2-Alpha Country Code]",
"nationalIdentifier": "[ID Code]",
"nationalIdentifierType": "LEGL",
"registrationAuthority": "[The name who (Government,Department,Company...etc) authorized this identity number]"
}
}
}
},
"Originator": {
// ...
},
"Beneficiary": {
// ...
}
}
}
Once you receive the Pre-transaction travel rule request (as receiver server), you have to put your company info to BeneficiaryVASP and encrypt it back again.
{
"ivms101": {
// Your company info (Because you're an beneficiary VASP)
"BeneficiaryVASP": {
"beneficiaryVASP": {
// required, you are an legal person
"legalPerson": {
"countryOfRegistration": "[2-Alpha Country Code]",
// required
"geographicAddress": [
{
"country": "[2-Alpha Country Code]",
"townName": "[Town Name]",
"addressType": "GEOG",
"addressLine": ["[Full Address]"]
}
],
"name": {
"nameIdentifier": [
{
// required
"legalPersonName": "[Your Company Name]",
"legalPersonNameIdentifierType": "LEGL"
}
]
},
"nationalIdentification": {
"countryOfIssue": "[2-Alpha Country Code]",
"nationalIdentifier": "[ID Code]",
"nationalIdentifierType": "LEGL",
"registrationAuthority": "[The name who (Government,Department,Company...etc) authorized this identity number]"
}
}
}
},
"OriginatingVASP": {
"originatingVASP": {
// required, you are an legal person
"legalPerson": {
"countryOfRegistration": "[2-Alpha Country Code]",
// required
"geographicAddress": [
{
"country": "[2-Alpha Country Code]",
"townName": "[Town Name]",
"addressType": "GEOG",
"addressLine": ["[Full Address]"]
}
],
"name": {
"nameIdentifier": [
{
// required
"legalPersonName": "[Your Company Name]",
"legalPersonNameIdentifierType": "LEGL"
}
]
},
"nationalIdentification": {
"countryOfIssue": "[2-Alpha Country Code]",
"nationalIdentifier": "[ID Code]",
"nationalIdentifierType": "LEGL",
"registrationAuthority": "[The name who (Government,Department,Company...etc) authorized this identity number]"
}
}
}
},
"Originator": {
// ...
},
"Beneficiary": {
// ...
}
}
}
About Field - BeneficiaryVASP
if you initiate a travel rule request for Post-transaction travel rule, that means you are BeneficiaryVASP, please fill your company entity info into the corresponding field.
The above's example struct is following:
{
"ivms101": {
// Your company info (Because you're an beneficiary VASP)
"BeneficiaryVASP": {
"beneficiaryVASP": {
// required, you are an legal person
"legalPerson": {
"countryOfRegistration": "[2-Alpha Country Code]",
// required
"geographicAddress": [
{
"country": "[2-Alpha Country Code]",
"townName": "[Town Name]",
"addressType": "GEOG",
"addressLine": ["[Full Address]"]
}
],
"name": {
"nameIdentifier": [
{
// required
"legalPersonName": "[Your Company Name]",
"legalPersonNameIdentifierType": "LEGL"
}
]
},
"nationalIdentification": {
"countryOfIssue": "[2-Alpha Country Code]",
"nationalIdentifier": "[ID Code]",
"nationalIdentifierType": "LEGL",
"registrationAuthority": "[The name who (Government,Department,Company...etc) authorized this identity number]"
}
}
}
},
"Originator": {
// ...
},
"Beneficiary": {
// ...
}
}
}
Once you receive the Post-transaction travel rule request (as receiver server), you have to put your company info to OriginatingVASP and encrypt it back again.
{
"ivms101": {
// Your company info (Because you're an originating VASP)
"OriginatingVASP": {
"originatingVASP": {
// required, you are an legal person
"legalPerson": {
"countryOfRegistration": "[2-Alpha Country Code]",
// required
"geographicAddress": [
{
"country": "[2-Alpha Country Code]",
"townName": "[Town Name]",
"addressType": "GEOG",
"addressLine": ["[Full Address]"]
}
],
"name": {
"nameIdentifier": [
{
// required
"legalPersonName": "[Your Company Name]",
"legalPersonNameIdentifierType": "LEGL"
}
]
},
"nationalIdentification": {
"countryOfIssue": "[2-Alpha Country Code]",
"nationalIdentifier": "[ID Code]",
"nationalIdentifierType": "LEGL",
"registrationAuthority": "[The name who (Government,Department,Company...etc) authorized this identity number]"
}
}
}
},
"BeneficiaryVASP": {
"beneficiaryVASP": {
// required, you are an legal person
"legalPerson": {
"countryOfRegistration": "[2-Alpha Country Code]",
// required
"geographicAddress": [
{
"country": "[2-Alpha Country Code]",
"townName": "[Town Name]",
"addressType": "GEOG",
"addressLine": ["[Full Address]"]
}
],
"name": {
"nameIdentifier": [
{
// required
"legalPersonName": "[Your Company Name]",
"legalPersonNameIdentifierType": "LEGL"
}
]
},
"nationalIdentification": {
"countryOfIssue": "[2-Alpha Country Code]",
"nationalIdentifier": "[ID Code]",
"nationalIdentifierType": "LEGL",
"registrationAuthority": "[The name who (Government,Department,Company...etc) authorized this identity number]"
}
}
}
},
"Originator": {
// ...
},
"Beneficiary": {
// ...
}
}
}
About Field - TransferPath and Broker Account (IntermediaryVasp)
This section describes how to use the TransferPath field and travelRuleMetadata to support broker account scenarios with intermediary VASPs.
Background
By compliance requirements, all broker accounts must comply with the travel rule policy and exchange PII (Personally Identifiable Information) with the counterparty. When the counterparty is a "broker account", there is no verification on the response message. This solution clarifies:
- How the initiator VASP should send the broker account structure in the request.
- How the initiator VASP can determine if a broker account is behind the receiver VASP (since there is no verification in the response message).
The key additions for broker account support are:
travelRuleMetadata— a sibling field toivms101in the encrypted payload, containing broker account flags and intermediary VASP counts.TransferPath— an array insideivms101that lists intermediary VASPs in the transfer chain with their sequence numbers.
Usage 1 - Broker Account behind Initiator VASP
If you act on behalf of a broker account to SEND a travel rule request (assuming you are the Originating VASP), then you should structure the PII payload like this:
{
"travelRuleMetadata": {
// if broker account is behind the originating VASP, please add this parameters:
"originatingVaspIntermediaryVaspCount": 1,
"isOriginatingVaspBroker": true
},
"ivms101": {
"OriginatingVASP": {
"originatingVASP": {
"legalPerson": {
"name": {
"nameIdentifier": [
{
// Should put broker account legal person info here
"legalPersonName": "Axchange - Broker Account ABC",
"legalPersonNameIdentifierType": "LEGL"
}
]
}
// ...etc, the following info should be same as originator broker account
}
}
},
"TransferPath": [
{
"sequence": 0, // Set the main entity (e.g. "Axchange") as FIRST intermediaryVasp
"intermediaryVasp": {
"legalPerson": {
"name": {
"nameIdentifier": [
{
"legalPersonName": "Axchange", // The main entity is the intermediaryVasp
"legalPersonNameIdentifierType": "LEGL"
}
]
}
// ...etc (main entity info)
}
}
}
],
"BeneficiaryVASP": {
// empty, because you're originating VASP
},
"Beneficiary": {
// ...same as current setup, put customer PII here
}
}
}
Key points:
- Set
travelRuleMetadata.isOriginatingVaspBrokertotrue. - Set
travelRuleMetadata.originatingVaspIntermediaryVaspCountto the number of intermediary VASPs (typically1). - In
OriginatingVASP, put the broker account's legal person info. - In
TransferPath, add the main entity (e.g., "Axchange") as the first intermediary VASP withsequence: 0.
Usage 2 - Broker Account behind Receiver VASP
If you act on behalf of a broker account to RECEIVE a travel rule request (assuming you are the Beneficiary VASP), you should adjust the PII payload in the response like this:
{
"travelRuleMetadata": {
// kept the original one if default this is exists
"originatingVaspIntermediaryVaspCount": 1,
"isOriginatingVaspBroker": true,
// Should put this parameter here
"beneficiaryVaspIntermediaryVaspCount": 1,
"isBeneficiaryVaspBroker": true
},
"ivms101": {
"BeneficiaryVASP": {
"beneficiaryVASP": {
"legalPerson": {
"name": {
"nameIdentifier": [
{
// Should put broker account legal person info here
"legalPersonName": "Faster Exchange - Broker Account ABC",
"legalPersonNameIdentifierType": "LEGL"
}
]
}
// ...etc, the following info should be same as beneficiary broker account
}
}
},
"TransferPath": [
{
"sequence": 0, // Set the originator's main entity as FIRST intermediaryVasp
"intermediaryVasp": {
"legalPerson": {
"name": {
"nameIdentifier": [
{
"legalPersonName": "Axchange", // The originator's main entity
"legalPersonNameIdentifierType": "LEGL"
}
]
}
// ...etc (originator main entity info)
}
}
},
{
"sequence": 1, // Put the receiver's main entity as SECOND intermediaryVasp
"intermediaryVasp": {
"legalPerson": {
"name": {
"nameIdentifier": [
{
"legalPersonName": "Happy Service", // The receiver's main entity is intermediaryVasp
"legalPersonNameIdentifierType": "LEGL"
}
]
}
// ...etc (receiver main entity info)
}
}
}
],
"OriginatingVASP": {
// ...same as originatingVASP from the request
},
"Beneficiary": {
// ...same as current setup, put customer PII here
},
"Originator": {
// ...same as current setup, put customer PII here
}
}
}
Key points:
- Add
travelRuleMetadata.isBeneficiaryVaspBrokerset totrue. - Add
travelRuleMetadata.beneficiaryVaspIntermediaryVaspCountto the number of intermediary VASPs (typically1). - In
BeneficiaryVASP, put the broker account's legal person info. - In
TransferPath, append the receiver's main entity as an additional intermediary VASP with the next sequence number.
When the receiver VASP responds as a broker account, the verification response will reflect the "no verify" status:
{
"verifyStatus": 100000,
"verifyMessage": "Success, NO VERIFY DUE TO BROKER ACCOUNT",
"data": {
"requestId": "b1a765d7-1ccc-43a3-a7ea-b472f20cff97",
"travelruleId": "gtr-bLKztgr5JHFb",
"verifiedFields": [
{
"type": "111001",
"status": 5, // INFO EXISTS, RECEIVED BUT NO VERIFY
"message": "no verify due to broker account"
},
{
"type": "110026",
"status": 5, // INFO EXISTS, RECEIVED BUT NO VERIFY
"message": "no verify due to broker account"
}
]
// ...other fields
},
"stage": "PII_VERIFICATION",
"pending": false,
"failed": false,
"success": true
}
Usage 3 - Initiator VASP Wants to Know if Broker Account behind Receiver VASP
In the response, check the PII structure in response decryption:
if (decryptedPii.travelRuleMetadata.isBeneficiaryVaspBroker) {
// The beneficiary VASP is a broker account
}
Note: If
decryptedPii.travelRuleMetadatais unknown or empty, treat it as "Not a Broker Account".
Usage 4 - Receiver VASP Wants to Know if Broker Account behind Initiator VASP
In the request, check the PII structure in request decryption:
if (decryptedPii.travelRuleMetadata.isOriginatingVaspBroker) {
// The originating VASP is a broker account
}
Note: If
decryptedPii.travelRuleMetadatais unknown or empty, treat it as "Not a Broker Account".
travelRuleMetadata Fields Reference
| Field | Type | Description |
|---|---|---|
isOriginatingVaspBroker | boolean | true if the originating VASP is a broker account |
isBeneficiaryVaspBroker | boolean | true if the beneficiary VASP is a broker account |
originatingVaspIntermediaryVaspCount | number | Number of intermediary VASPs on the originating side |
beneficiaryVaspIntermediaryVaspCount | number | Number of intermediary VASPs on the beneficiary side |
Rules to Fill IVMS
- All required fields must include a default value, even if the actual data is not available. Please refer to the Default Key-Value of IVMS section for the recommended default structure.
- If you are the Originating VASP, fill your company entity information into the OriginatingVASP field. If you are the Beneficiary VASP, fill your company entity information into the BeneficiaryVASP field.
- The travel rule Initiator VASP (acting as Originating VASP) is responsible for providing both Originator and Beneficiary person information in the IVMS structure when sending the request.
- If the transaction target is a Legal Person, you must also include a Natural Person entry (e.g., CEO or authorized representative) in the same persons array. The Legal Person entry must be placed as the first element, followed by the Natural Person entry. For example:
beneficiaryPersons: [ {legalPerson: {...}}, {naturalPerson: {...}} ]
All Required fields
*If the required fields is not available, please put empty default value, don't fill null or undefined.
OriginatingVASP
- ivms101.OriginatingVASP.originatingVASP.legalPerson.name.nameIdentifier[0].legalPersonName
- ivms101.OriginatingVASP.originatingVASP.legalPerson.name.nameIdentifier[0].legalPersonNameIdentifierType
- ivms101.OriginatingVASP.originatingVASP.legalPerson.nationalIdentification.nationalIdentifierType
- ivms101.OriginatingVASP.originatingVASP.legalPerson.nationalIdentification.registrationAuthority
- ivms101.OriginatingVASP.originatingVASP.legalPerson.nationalIdentification.countryOfIssue
- ivms101.OriginatingVASP.originatingVASP.legalPerson.nationalIdentification.nationalIdentifier
- ivms101.OriginatingVASP.originatingVASP.legalPerson.geographicAddress[].country
- ivms101.OriginatingVASP.originatingVASP.legalPerson.geographicAddress[].townName
- ivms101.OriginatingVASP.originatingVASP.legalPerson.geographicAddress[].addressType
- ivms101.OriginatingVASP.originatingVASP.legalPerson.geographicAddress[].addressLine
- ivms101.OriginatingVASP.originatingVASP.legalPerson.countryOfRegistration
BeneficiaryVASP
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.name.nameIdentifier[0].legalPersonName
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.name.nameIdentifier[0].legalPersonNameIdentifierType
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.nationalIdentification.nationalIdentifierType
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.nationalIdentification.registrationAuthority
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.nationalIdentification.countryOfIssue
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.nationalIdentification.nationalIdentifier
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.geographicAddress[0].country
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.geographicAddress[0].townName
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.geographicAddress[0].addressType
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.geographicAddress[0].addressLine
- ivms101.BeneficiaryVASP.beneficiaryVASP.legalPerson.countryOfRegistration
Originator - Common
- ivms101.Originator.accountNumber
Originator - Natural Person
ivms101.Originator.originatorPersons[0].naturalPerson.name.nameIdentifier[0].primaryIdentifier ivms101.Originator.originatorPersons[0].naturalPerson.name.nameIdentifier[0].secondaryIdentifier ivms101.Originator.originatorPersons[0].naturalPerson.name.nameIdentifier[0].nameIdentifierType
- ivms101.Originator.originatorPersons[0].naturalPerson.name.localNameIdentifier[0].primaryIdentifier
- ivms101.Originator.originatorPersons[0].naturalPerson.name.localNameIdentifier[0].secondaryIdentifier
- ivms101.Originator.originatorPersons[0].naturalPerson.name.localNameIdentifier[0].nameIdentifierType
- ivms101.Originator.originatorPersons[0].naturalPerson.dateAndPlaceOfBirth.placeOfBirth
- ivms101.Originator.originatorPersons[0].naturalPerson.dateAndPlaceOfBirth.dateOfBirth
- ivms101.Originator.originatorPersons[0].naturalPerson.customerIdentification
- ivms101.Originator.originatorPersons[0].naturalPerson.countryOfResidence
Originator - Legal Person
- ivms101.Originator.originatorPersons[0].legalPerson.name.nameIdentifier[0].legalPersonName
- ivms101.Originator.originatorPersons[0].legalPerson.name.nameIdentifier[0].legalPersonNameIdentifierType
- ivms101.Originator.originatorPersons[0].legalPerson.customerIdentification
- ivms101.Originator.originatorPersons[0].legalPerson.countryOfRegistration
- ivms101.Originator.originatorPersons[1].naturalPerson.name.nameIdentifier[0].primaryIdentifier
- ivms101.Originator.originatorPersons[1].naturalPerson.name.nameIdentifier[0].secondaryIdentifier
- ivms101.Originator.originatorPersons[1].naturalPerson.name.nameIdentifier[0].nameIdentifierType
- ivms101.Originator.originatorPersons[1].naturalPerson.name.localNameIdentifier[0].primaryIdentifier
- ivms101.Originator.originatorPersons[1].naturalPerson.name.localNameIdentifier[0].secondaryIdentifier
- ivms101.Originator.originatorPersons[1].naturalPerson.name.localNameIdentifier[0].nameIdentifierType
- ivms101.Originator.originatorPersons[1].naturalPerson.dateAndPlaceOfBirth.placeOfBirth
- ivms101.Originator.originatorPersons[1].naturalPerson.dateAndPlaceOfBirth.dateOfBirth
- ivms101.Originator.originatorPersons[1].naturalPerson.customerIdentification
- ivms101.Originator.originatorPersons[1].naturalPerson.countryOfResidence
Beneficiary - Common
- ivms101.Beneficiary.accountNumber
Beneficiary - Natural Person
ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.name.nameIdentifier[0].primaryIdentifier ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.name.nameIdentifier[0].secondaryIdentifier ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.name.nameIdentifier[0].nameIdentifierType
- ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.name.localNameIdentifier[0].primaryIdentifier
- ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.name.localNameIdentifier[0].secondaryIdentifier
- ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.name.localNameIdentifier[0].nameIdentifierType
- ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.dateAndPlaceOfBirth.placeOfBirth
- ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.dateAndPlaceOfBirth.dateOfBirth
- ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.customerIdentification
- ivms101.Beneficiary.beneficiaryPersons[0].naturalPerson.countryOfResidence
Beneficiary - Legal Person
- ivms101.Beneficiary.beneficiaryPersons[0].legalPerson.name.nameIdentifier[0].legalPersonName
- ivms101.Beneficiary.beneficiaryPersons[0].legalPerson.name.nameIdentifier[0].legalPersonNameIdentifierType
- ivms101.Beneficiary.beneficiaryPersons[0].legalPerson.customerIdentification
- ivms101.Beneficiary.beneficiaryPersons[0].legalPerson.countryOfRegistration
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.name.nameIdentifier[0].primaryIdentifier
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.name.nameIdentifier[0].secondaryIdentifier
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.name.nameIdentifier[0].nameIdentifierType
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.name.localNameIdentifier[0].primaryIdentifier
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.name.localNameIdentifier[0].secondaryIdentifier
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.name.localNameIdentifier[0].nameIdentifierType
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.dateAndPlaceOfBirth.placeOfBirth
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.dateAndPlaceOfBirth.dateOfBirth
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.customerIdentification
- ivms101.Beneficiary.beneficiaryPersons[1].naturalPerson.countryOfResidence
Example - Natural Person
[
{
// example fields below, please refer to above naturalPerson structure
"naturalPerson": {
// required
"dateAndPlaceOfBirth": {
"placeOfBirth": "US",
"dateOfBirth": "1986-11-21"
},
// required
"name": {
"localNameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "サトシ",
"secondaryIdentifier": "ナカモト"
}
],
"nameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "Satoshi",
"secondaryIdentifier": "Nakamoto"
}
]
},
// optional
"geographicAddress": [
{
"addressType": "GEOG",
"streetName": "Potential Street",
"buildingNumber": "123",
"buildingName": "Cheese Hut",
"postCode": "91361",
"townName": "Thousand Oaks",
"countrySubDivision": "California",
"country": "US"
}
],
// optional
"nationalIdentification": {
"nationalIdentifier": "1032903940290499SDF3-40DA024",
"nationalIdentifierType": "CCPT",
"countryOfIssue": "HK"
},
// required
"customerIdentification": "10929392485393",
// required
"countryOfResidence": "US"
}
}
]
Example - Legal Person
[
// required: naturalPerson or legalPerson
// NOTE: if you send to legalPerson, please fill [{naturalPerson:{}},{legalPerson:{}}] both, the natural person only need to given [{naturalPerson}]
{
"legalPerson": {
// required, nameIdentifier*, localNameIdentifier, phoneticNameIdentifier
"name": {
"nameIdentifier": [
{
"legalPersonName": "Paycase Inc",
"legalPersonNameIdentifierType": "LEGL" // Usually Fixed as LEGL // for legal person: LEGL, SHRT, TRAD
}
]
},
// optional, For Company Legal Person use RAID and fill your company ID in nationalIdentifier
"nationalIdentification": {
// RAID is means nationalIdentifier is company ID in authority coutnry
"nationalIdentifierType": "RAID", // ISO20022, ARNU, CCPT, RAID, DRLC, FIIN, TXID, SOCS, IDCD, LEIX, MISC
// GLEIF code (i.e: 香港公司註冊處核發 Hong Kong Company Registry Approved, For more please check: https://www.gleif.org/en/about-lei/code-lists/gleif-registration-authorities-list)
"registrationAuthority": "RA000388",
"countryOfIssue": "HK",
// (i.e: Your Company ID from authroity)
"nationalIdentifier": "38429049028390482" // ^[a-zA-Z0-9' ]{1,35}$
},
// optional
"geographicAddress": [
// SAME AS Originator's geographicAddress
],
// required, (i.e: customer id from originator service)
"customerIdentification": "0x3E9181d09E56AdEF3bbc8BAb664Ce6B268Bf6e62",
// required
"countryOfRegistration": "HK" // ISO-3166-1 alpha-2 codes
}
},
// required both legalPerson (ex: CEO name) and naturalPerson
{
// example fields below, please refer to above naturalPerson structure
"naturalPerson": {
// required
"dateAndPlaceOfBirth": {
"placeOfBirth": "US",
"dateOfBirth": "1986-11-21"
},
// required
"name": {
"localNameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "サトシ",
"secondaryIdentifier": "ナカモト"
}
],
"nameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "Satoshi",
"secondaryIdentifier": "Nakamoto"
}
]
},
// optional
"geographicAddress": [
{
"addressType": "GEOG",
"streetName": "Potential Street",
"buildingNumber": "123",
"buildingName": "Cheese Hut",
"postCode": "91361",
"townName": "Thousand Oaks",
"countrySubDivision": "California",
"country": "US"
}
],
// optional
"nationalIdentification": {
"nationalIdentifier": "1032903940290499SDF3-40DA024",
"nationalIdentifierType": "CCPT",
"countryOfIssue": "HK"
},
// required
"customerIdentification": "10929392485393",
// required
"countryOfResidence": "US"
}
}
]
Default Key-Value of IVMS
To avoiding null pointer issue, we will strongly recommend you to fill in the following key-value when you integrate IVMS-101, please check the folling empty structure, even you don't have the fields data, please fill as default.
For Natural Person Default
{
...
{
"naturalPerson": {
// required
"name": {
"localNameIdentifier": [ // at least given not-null default element
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "",
"secondaryIdentifier": ""
}
],
"nameIdentifier": [ // at least given not-null default element
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "",
"secondaryIdentifier": ""
}
],
"phoneticNameIdentifier": [] // ok to be empty
},
// required
"dateAndPlaceOfBirth": {
"placeOfBirth": "",
"dateOfBirth": ""
},
// optional: if you use one of field, please set default like below
"geographicAddress": [
// at least given not-null default element
{
"addressType": "GEOG",
"townName": "",
"addressLine": [
// at least given not-null default element
""
],
"country": "",
"postCode": ""
}
],
// optional: can leave all key unset
"nationalIdentification": {
"nationalIdentifier": "",
"nationalIdentifierType": "",
"countryOfIssue": ""
},
// required
"customerIdentification": "",
// required
"countryOfResidence": ""
}
}
}
For Legal Person Default
{
...
{
"legalPerson": {
// required
"name": {
"nameIdentifier": [
{
"legalPersonName": "",
"legalPersonNameIdentifierType": "LEGL"
}
]
},
// optional: can leave all key unset
"nationalIdentification": {
"nationalIdentifierType": "RAID",
"registrationAuthority": "",
"countryOfIssue": "",
"nationalIdentifier": ""
},
// optional: if you use one of field, please set default like below
"geographicAddress": [
// at least given not-null default element
{
"addressType": "GEOG",
"townName": "",
"addressLine": [
// at least given not-null default element
""
],
"country": "",
"postCode": ""
}
],
// required
"customerIdentification": "",
// required
"countryOfRegistration": "HK"
}
},
// required both legalPerson (ex: CEO name) and naturalPerson
{
"naturalPerson": {
// required
"dateAndPlaceOfBirth": {
"placeOfBirth": "",
"dateOfBirth": ""
},
// required
"name": {
"localNameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "",
"secondaryIdentifier": ""
}
],
"nameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "",
"secondaryIdentifier": ""
}
]
},
// optional: if you use one of field, please set default like below
"geographicAddress": [
{
"addressType": "GEOG",
"townName": "",
"addressLine": [
// at least given not-null default element
""
],
"country": "",
"postCode": ""
}
],
// optional: can leave all key unset
"nationalIdentification": {
"nationalIdentifier": "",
"nationalIdentifierType": "",
"countryOfIssue": ""
},
// required
"customerIdentification": "",
// required
"countryOfResidence": ""
}
}
],
"accountNumber": [""]
}
...
}
Full Example of IVMS
The detail of structure definition is below, the following structure is a full example of IVMS-101.
{
"ivms101": {
"OriginatingVASP": {
"originatingVASP": {
// required
"legalPerson": {
// required, nameIdentifier*, localNameIdentifier, phoneticNameIdentifier
"name": {
"nameIdentifier": [
{
"legalPersonName": "Originator VASP Company Name - VVVV Inc.", // Enum Code: 121001, Legal Person Name
"legalPersonNameIdentifierType": "LEGL" // Usually Fixed as LEGL // for legal person: LEGL, SHRT, TRAD
}
]
},
// required, For Company Legal Person use RAID and fill your company ID in nationalIdentifier
"nationalIdentification": {
// nationalIdentifierType: ISO20022, ARNU, CCPT, RAID, DRLC, FIIN, TXID, SOCS, IDCD, LEIX, MISC,
"nationalIdentifierType": "RAID", // Enum Code: 121002, Legal Person National Identifier ID Type
// registrationAuthority: GLEIF code (i.e: 香港公司註冊處核發 Hong Kong Company Registry Approved, For more please check: https://www.gleif.org/en/about-lei/code-lists/gleif-registration-authorities-list)
"registrationAuthority": "RA000388", // Enum Code: 121004, Legal Person National Identifier Registration Authority ID
// countryOfIssue: ISO 3166-1 alpha-2 codes
"countryOfIssue": "HK", // Enum Code: 121005, Legal Person National Identifier Country of Issue
// nationalIdentifier: (i.e: Your Company ID from authroity)
"nationalIdentifier": "38429049028390482" // Enum Code: 121003, Legal Person National Identifier ID
},
// required
"geographicAddress": [
{
// required
"country": "HK", // Enum Code: 121007, ISO 3166-1 alpha-2 codes
"townName": "Hong Kong", // Enum Code: 121008, Legal Person Address - Town Name
"addressType": "GEOG", // HOME, BIZZ, GEOG
"addressLine": ["Please fill your address here"], // Enum Code: 121009, Legal Person Address - Address Lines
"postCode": "TT7643", // Enum Code: 121018, Legal Person Address - Post Code
// optional:
"department": "OfficeOfTheCEO", // Enum Code: 121010, Legal Person Address - Department
"subDepartment": "InternalAudit8562", // Enum Code: 121011, Legal Person Address - Sub Department
"streetName": "SiliconAlley65", // Enum Code: 121012, Legal Person Address - Street
"buildingNumber": "J4H6", // Enum Code: 121013, Legal Person Address - Building Number
"buildingName": "VirtualTower200", // Enum Code: 121014, Legal Person Address - Building Name
"floor": "Floor94", // Enum Code: 121015, Legal Person Address - Floor
"postBox": "CB842", // Enum Code: 121016, Legal Person Address - Postbox
"room": "BionicRoom38", // Enum Code: 121017, Legal Person Address - Room
"townLocationName": "E-Sector", // Enum Code: 121019, Legal Person Address - Town Location
"districtName": "BlockchainDistrict", // Enum Code: 121020, Legal Person Address - District Name
"countrySubDivision": "E-Province" // Enum Code: 121021, Legal Person Address - Country of Sub Division
}
],
// required
"countryOfRegistration": "HK" // Enum Code: 121022, Legal Person Country of Registration
}
}
},
"BeneficiaryVASP": {
"beneficiaryVASP": {
// required
"legalPerson": {
// required, nameIdentifier*, localNameIdentifier, phoneticNameIdentifier
"name": {
"nameIdentifier": [
{
"legalPersonName": "Beneficiary VASP Company Name - VVVV Inc.", // Enum Code: 131001, Legal Person Name
"legalPersonNameIdentifierType": "LEGL" // Usually Fixed as LEGL // for legal person: LEGL, SHRT, TRAD
}
]
},
// required, For Company Legal Person use RAID and fill your company ID in nationalIdentifier
"nationalIdentification": {
// nationalIdentifierType: ISO20022, ARNU, CCPT, RAID, DRLC, FIIN, TXID, SOCS, IDCD, LEIX, MISC,
"nationalIdentifierType": "RAID", // Enum Code: 131002, Legal Person National Identifier ID Type
// registrationAuthority: GLEIF code (i.e: 香港公司註冊處核發 Hong Kong Company Registry Approved, For more please check: https://www.gleif.org/en/about-lei/code-lists/gleif-registration-authorities-list)
"registrationAuthority": "RA000388", // Enum Code: 131004, Legal Person National Identifier Registration Authority ID
// countryOfIssue: ISO 3166-1 alpha-2 codes
"countryOfIssue": "HK", // Enum Code: 131005, Legal Person National Identifier Country of Issue
// nationalIdentifier: (i.e: Your Company ID from authroity)
"nationalIdentifier": "38429049028390482" // Enum Code: 131003, Legal Person National Identifier ID
},
// required
"geographicAddress": [
{
// required
"country": "HK", // Enum Code: 131007, ISO 3166-1 alpha-2 codes
"townName": "Hong Kong", // Enum Code: 131008, Legal Person Address - Town Name
"addressType": "GEOG", // HOME, BIZZ, GEOG
"addressLine": ["Please fill your address here"], // Enum Code: 131009, Legal Person Address - Address Lines
"postCode": "TT7643", // Enum Code: 131018, Legal Person Address - Post Code
// optional:
"department": "OfficeOfTheCEO", // Enum Code: 131010, Legal Person Address - Department
"subDepartment": "InternalAudit8562", // Enum Code: 131011, Legal Person Address - Sub Department
"streetName": "SiliconAlley65", // Enum Code: 131012, Legal Person Address - Street
"buildingNumber": "J4H6", // Enum Code: 131013, Legal Person Address - Building Number
"buildingName": "VirtualTower200", // Enum Code: 131014, Legal Person Address - Building Name
"floor": "Floor94", // Enum Code: 131015, Legal Person Address - Floor
"postBox": "CB842", // Enum Code: 131016, Legal Person Address - Postbox
"room": "BionicRoom38", // Enum Code: 131017, Legal Person Address - Room
"townLocationName": "E-Sector", // Enum Code: 131019, Legal Person Address - Town Location
"districtName": "BlockchainDistrict", // Enum Code: 131020, Legal Person Address - District Name
"countrySubDivision": "E-Province" // Enum Code: 131021, Legal Person Address - Country of Sub Division
}
],
// required
"countryOfRegistration": "HK" // Enum Code: 131022, Legal Person Country of Registration
}
}
},
"Originator": {
// required, the user wallet address
"accountNumber": [
"1GURHee2JsCkdpxVisjbjAeNhbDbGub8R4" // Enum Code: 103023, Max 100 text, ^[a-zA-Z0-9' ]{1,100}$
],
"originatorPersons": [
{
"naturalPerson": {
// required
"dateAndPlaceOfBirth": {
"placeOfBirth": "US", // Enum Code: 100024, ISO-3166-1 alpha-2 codes
"dateOfBirth": "1986-11-21" // Enum Code: 100025, Natural Person Date of Birth
},
// required
"name": {
// have: nameIdentifier (required), localNameIdentifier (required), phoneticNameIdentifier (optional)
"localNameIdentifier": [
{
// nameIdentifierType: Usually Fixed as LEGL // for natural person: ALIA, BIRT, MAID, LEGL, MISC
"nameIdentifierType": "LEGL",
// primaryIdentifier: lastname, or lastname + firstname
"primaryIdentifier": "サトシ",
// primaryIdentifier: firstname, or leave empty if cannot recognize
"secondaryIdentifier": "ナカモト"
}
], // Enum Code: 100027, Natural Person Local Name
"nameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "Satoshi",
"secondaryIdentifier": "Nakamoto"
}
], // Enum Code: 100026, Natural Person Name
// optional
"phoneticNameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "Satoshi",
"secondaryIdentifier": "Nakamoto"
}
] // Enum Code: 100028, Natural Person Phonetic Name
},
// optional
"geographicAddress": [
{
// required (if have):
"addressType": "GEOG", // HOME, BIZZ, GEOG
// townName can also be city / town
"townName": "VirtualTown", // Enum Code: 100030, Natural Person Address - Town Name
"addressLine": ["Line489", "Line762"], // Enum Code: 100031, Natural Person Address - Address Lines
"country": "US", // Enum Code: 100029, ISO-3166-1 alpha-2 codes
"postCode": "TT7643", // Enum Code: 100040, Natural Person Address - Post Code
// optional:
"department": "OfficeOfTheCEO", // Enum Code: 100032, Natural Person Address - Department
"subDepartment": "InternalAudit8562", // Enum Code: 100033, Natural Person Address - Sub Department
"streetName": "SiliconAlley65", // Enum Code: 100034, Natural Person Address - Street
"buildingNumber": "J4H6", // Enum Code: 100035, Natural Person Address - Building Number
"buildingName": "VirtualTower200", // Enum Code: 100036, Natural Person Address - Building Name
"floor": "Floor94", // Enum Code: 100037, Natural Person Address - Floor
"postBox": "CB842", // Enum Code: 100038, Natural Person Address - Postbox
"room": "BionicRoom38", // Enum Code: 100039, Natural Person Address - Room
"townLocationName": "E-Sector", // Enum Code: 100041, Natural Person Address - Town Location
"districtName": "BlockchainDistrict", // Enum Code: 100042, Natural Person Address - District Name
// countrySubDivision is also a country state
"countrySubDivision": "E-Province" // Enum Code: 100043, Natural Person Address - Country of Sub Division
}
],
// optional
"nationalIdentification": {
// nationalIdentifier, for example Passport number (CCPT), ^[a-zA-Z0-9' ]{1,35}$
"nationalIdentifier": "1032903940290499SDF3-40DA024", // Enum Code: 100045, Natural Person National ID
// CCPT: Passport, ISO20022, ARNU, CCPT, RAID, DRLC, FIIN, TXID, SOCS, IDCD, LEIX, MISC
"nationalIdentifierType": "CCPT", // Enum Code: 100044, Natural Person National ID - Type
// registrationAuthority 不填寫,外交部發行的不是法人單位,是政府單位。don't fill the registrationAuthority, the identity approved by immigration affairs is government department, not legal person
"countryOfIssue": "HK" // Enum Code: 100046, Natural Person National ID - Country Of Issue
},
// required, (i.e: customer id from originator service)
"customerIdentification": "10929392485393", // Enum Code: 100047, Natural Person Customer ID
// required
"countryOfResidence": "US" // Enum Code: 100048, Natural Person Country of Residence
}
}
]
},
"Beneficiary": {
"beneficiaryPersons": [
// required: naturalPerson or legalPerson
// NOTE: if you send to legalPerson, please fill [{naturalPerson:{}},{legalPerson:{}}] both, the natural person only need to given [{naturalPerson}]
{
"legalPerson": {
// required, nameIdentifier*, localNameIdentifier, phoneticNameIdentifier
"name": {
"nameIdentifier": [
{
"legalPersonName": "Paycase Inc", // Enum Code: 111001, Legal Person Name
"legalPersonNameIdentifierType": "LEGL" // Usually Fixed as LEGL // for legal person: LEGL, SHRT, TRAD
}
]
},
// optional, For Company Legal Person use RAID and fill your company ID in nationalIdentifier
"nationalIdentification": {
// RAID is means nationalIdentifier is company ID in authority coutnry
"nationalIdentifierType": "RAID", // Enum Code: 111002, ISO20022, ARNU, CCPT, RAID, DRLC, FIIN, TXID, SOCS, IDCD, LEIX, MISC
// GLEIF code (i.e: 香港公司註冊處核發 Hong Kong Company Registry Approved, For more please check: https://www.gleif.org/en/about-lei/code-lists/gleif-registration-authorities-list)
"registrationAuthority": "RA000388", // Enum Code: 111004, Legal Person National Identifier Registration Authority ID
"countryOfIssue": "HK", // Enum Code: 111005, Legal Person National Identifier Country of Issue
// (i.e: Your Company ID from authroity)
"nationalIdentifier": "38429049028390482" // Enum Code: 111003, ^[a-zA-Z0-9' ]{1,35}$
},
// optional
"geographicAddress": [
// SAME AS Originator's geographicAddress
],
// required, (i.e: customer id from originator service)
"customerIdentification": "0x3E9181d09E56AdEF3bbc8BAb664Ce6B268Bf6e62", // Enum Code: 111006, Legal Person Customer Identification
// required
"countryOfRegistration": "HK" // Enum Code: 111022, ISO-3166-1 alpha-2 codes
}
},
// required both legalPerson (ex: CEO name) and naturalPerson
{
// example fields below, please refer to above naturalPerson structure
"naturalPerson": {
// required
"dateAndPlaceOfBirth": {
"placeOfBirth": "US", // Enum Code: 110024, Natural Person Place of Birth
"dateOfBirth": "1986-11-21" // Enum Code: 110025, Natural Person Date of Birth
},
// required
"name": {
"localNameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "サトシ",
"secondaryIdentifier": "ナカモト"
}
], // Enum Code: 110027, Natural Person Local Name
"nameIdentifier": [
{
"nameIdentifierType": "LEGL",
"primaryIdentifier": "Satoshi",
"secondaryIdentifier": "Nakamoto"
}
] // Enum Code: 110026, Natural Person Name
},
// optional
"geographicAddress": [
{
"addressType": "GEOG", // HOME, BIZZ, GEOG
"streetName": "Potential Street", // Enum Code: 110034, Natural Person Address - Street
"buildingNumber": "123", // Enum Code: 110035, Natural Person Address - Building Number
"buildingName": "Cheese Hut", // Enum Code: 110036, Natural Person Address - Building Name
"postCode": "91361", // Enum Code: 110040, Natural Person Address - Post Code
"townName": "Thousand Oaks", // Enum Code: 110030, Natural Person Address - Town Name
"countrySubDivision": "California", // Enum Code: 110043, Natural Person Address - Country of Sub Division
"country": "US" // Enum Code: 110029, Natural Person Address - Country
}
],
// optional
"nationalIdentification": {
"nationalIdentifier": "1032903940290499SDF3-40DA024", // Enum Code: 110045, Natural Person National ID
"nationalIdentifierType": "CCPT", // Enum Code: 110044, Natural Person National ID - Type
"countryOfIssue": "HK" // Enum Code: 110046, Natural Person National ID - Country Of Issue
},
// required
"customerIdentification": "10929392485393", // Enum Code: 110047, Natural Person Customer ID
// required
"countryOfResidence": "US" // Enum Code: 110048, Natural Person Country of Residence
}
}
],
"accountNumber": ["1GURHee2JsCkdpxVisjbjAeNhbDbGub8R4"] // Enum Code: 113023, Account Number
}
}
}
Parameters Description
- The
nameIdentifierTypeis commonly set to 'LEGL'. primaryIdentifieris lastName,secondaryIdentifieris firstName.- For
primaryIdentifier,secondaryIdentifier. If the name cannot be separated, please fill firstName and lastName together (1. firstName 2. lastName). - firstName: givenName, lastName: familyName.
- For the current version of IVMS specification, only the root level has first capital naming (e.g: Beneficiary, BeneficiaryVASP, Originator, OriginatingVASP).
In addition:
registrationAuthority
registrationAuthorityis GLEIF code that you could find in GLEIF list: https://www.gleif.org/en/about-lei/code-lists/gleif-registration-authorities-listregistrationAuthorityavailable for legalPerson, but the identity approved by immigration affairs is government department, not legal person.
nameIdentifierType (naturalPersonNameType)
- ALIA (Alias name): A name other than the legal name by which a natural person is also known.
- BIRT (Name at birth): The name given to a natural person at birth.
- MAID (Maiden name): The original name of a natural person who has changed their name after marriage.
- LEGL (Legal name): The name that identifies a natural person for legal, official or administrative purposes.
- MISC (Unspecified): A name by which a natural person may be known but which cannot otherwise be categorized or the category of which the sender is unable to determine.
legalPersonNameIdentifierType (legalPersonNameType)
- LEGL (Legal name): Official name under which an organisation is registered.
- SHRT (Short name): Specifies the short name of the organisation.
- TRAD (Trading name): Name used by a business for commercial purposes, although its registered legal name, used for contracts and other formal situations, may be another.
nationalIdentifierType
- ARNU: Alien registration number (a number issued by the government to foreigners to identify them)
- CCPT: passport number
- RAID: (body corporate only) Business registration number provided by the authority
- DRLC: Driver's License Number
- FIIN: Foreign Investor Number (number assigned to foreign investors)
- TXID: Number given by the tax authority
- SOCS: Social Security Number or National Identification Number
- IDCD: Identity card number assigned by a state agency
- LEIX: (Legal entities only) Global legal entity identification number, LEI code assigned in accordance with the ISO 17442 standard
- MISC: ID card number from other countries
Others
Other fields for more over,these are not necessary for the payloads:
-
localNameIdentifier: for non-English name of identity person, full name separated into primary and secondary identifier using local characters.{
"primaryIdentifier": "김",
"secondaryIdentifier": "김지수",
"nameIdentifierType": "LEGL" // IVMS101: ALIA, BIRT, MAID, LEGL, MISC
} -
phoneticNameIdentifier: Alternate representation of a name that corresponds to the manner the name is pronounced.{
"primaryIdentifier": "Kim",
"secondaryIdentifier": "Jisoo",
"nameIdentifierType": "LEGL" // IVMS101: ALIA, BIRT, MAID, LEGL, MISC
} -
transferPath(IntermediaryVasp): The transfer path refers to the intermediary VASP(s) participating in a serial chain that receive(s) and retransmit(s) a VA transfer on behalf of the originating VASP and the beneficiary VASP, or another intermediary VASP, together with their corresponding sequence number.{
"transferPath": [
// IntermediaryVasp
{
"intermediaryVasp": {
// legalPerson of vasp },
"sequence": 0 // count from 0 to 9007199254740991L
}
}
]
} -
payloadMetadata(TransliterationMethodCode): Data describing the contents of the payload. TransliterationMethodCode is the method used to map from a national system of writing to Latin script.{
"payloadMetadata": [
"kore" // ISO 15924, arab, aran, armn, cyrl, deva, geor, grek, hani, hebr, kana, kore, thai, othr
]
}
For ISO 15924, the available enum is: arab, aran, armn, cyrl, deva, geor, grek, hani, hebr, kana, kore, thai, othr.
- arab, Arabic (Arabic language) ISO 233-2:1993
- aran, Arabic (Persian language) ISO 233-3:1999
- armn, Armenian ISO 9985:1996
- cyrl, Cyrillic ISO 9:1995
- deva, Devanagari & related Indic ISO 15919:2001
- geor, Georgian ISO 9984:1996
- grek, Greek ISO 843:1997
- hani, Han (Hanzi, Kanji, Hanja) ISO 7098:2015
- hebr, Hebrew ISO 259-2:1994
- kana, Kana ISO 3602:1989
- kore, Korean Revised Romanization of Korean
- thai, Thai ISO 11940-2:2007
- othr, Script other than those listed above Unspecified
For example: 한국어 (hangug-eo), the method is "kore".