Links

IVMS101

IVMS101 standard

CODE uses the IVMS101 standard to exchange personal information related to virtual asset transaction. https://intervasp.org/
Please refer to the json schema and examples here.
  • A field name of a message is expressed with camelCase whose first character starts with a lowercase. But, 'Originator', 'Beneficiary', 'OriginatorVASP', and 'BeneficiaryVASP' objects corresponding to Entity in ivms101 are expressed with PascalCase.
  • The values of all fields are not case-sensitive unless otherwise specified.
  • The values of all fields are always expressed with a UTF-8 encoded string. (including boolean, integer, real number, etc.)
  • In principle, the values of all fields shall be written in English except when Korean is permitted.

How to enter LegalPerson information

  • For a LegalPerson as per Korea's Special Financial Transaction Act, information on the representative as well as information on the LegalPerson shall be entered. (The same is true for both the sender and the beneficiary.)
  • Since there is no separate element to enter the information on representative in the LegalPerson type of IVMS101, the representative information is set to be entered in the following way.
    • Since originatorPersons or beneficiaryPersons is an array of Person type, always enter the information on a legal person in the first element of the array.
    • From the second element, enter the personal information of the LegalPerson's representative (natural person).
    • If there are multiple representatives, continue to enter the representatives' personal information in the array.

Name (nameIdentifier) notation

  • Define naturalPerson and legalPerson objects and name object of their immediate child with a single object.
  • nameIdentifier element of the child of name is an array.
    • You can enter several names in the nameIdentifier array.
    • At least one element of the nameIdentifier array must be a legal name. (LEGL type)
  • Enter an English name in nameIdentifier and a local name in localNameIdentifier.
  • You can omit localNameIdentifier if your KYC data does not have it.
  • If there is no English name in the member information among VASPs in Korea, transliterate and enter it according to the ‘Romanization of Korean’.
  • When comparing names, legal names shall be used.
  1. 1.
    Transactions between VASPs in Korea
    • Enter in nameIdentifier in Korean.
    • Enter an English name for foreigners or legal persons whose original name is in English.
    • Enter an English name in localNameIdentifier.
  2. 2.
    Transactions with VASPs outside Korea
    • Enter nameIdentifier in English.
    • In addition, you can enter a local name in the localNameIdentifier element. However, even in this case, it is recommended to provide a nameIdentifier with a legal English name.
  3. 3.
    If first name and last name can be separated
    • Enter the last name in primaryIdentifier.
    • Enter the first name in secondaryIdentifier.
  4. 4.
    If first name and last name cannot be separated
    • Enter the full name in primaryIdentifier based on VASP DB. For English, enter the name in the order of first name and last name. For Korean, enter the name in the order of last name and first name. If you cannot identify first name and last name, then enter the same value as the value in the DB.
    • Do not enter anything in secondaryIdentifier.
Please try to send the first name and last name separately for both English and Local names. If the order of arranging the full name is different according to the policy of the VASPs, beneficiary VASP could handle freely according to their own policy.

Verification of beneficiary's name

A VASP who wants to transfer an asset may request the VASP to whom the asset is transferred, to compare the name with the name of the real address owner's name holder by sending the beneficiary's name when requesting authorization to transfer the asset.
Describe the criteria for comparing names according to a transaction context.
Caution: This function shall be implemented by the beneficiary VASP to operate according to the VASP's request to transfer the asset.
  • Verify the name with both nameIdentifier, localNameIdentifier objects and verify nameIdentifier first.
  • When `nameIdentifier` is blank (""), verify localNameIdentifier.
"nameIdentifier": [
{
"primaryIdentifier": "",
"secondaryIdentifier": "",
"nameIdentifierType": "LEGL"
}
]

Comparing natural person names

  • For the originating VASP, please send the first name and last name separately when sending the beneficiary's name to be verified. If you cannot separate the first name and last name, the order is last name and first name for Korean, and first name and last name for English.
  • The beneficiary VASP compares the name of the beneficiary who received the verification request with the name of the actual owner of the property address.
  • When comparing, it is recommended to connect primaryIdentifier and secondaryIdentifier according to the receiving exchange DB criteria to make a single UTF-8 string, remove spaces (' '), and compare them in case-insensitive.
  • The originating VASP sends a legal person's corporate name to be verified and one representative's name.
    • In principle, the corporate name in the registration shall be used. (Basically, if the name to be stored by the beneficiary VASP is different, the name may be rejected.)
    • Even if there are several representatives, only one representative's name shall be sent, and the entering method is the same as an individual.
  • The beneficiary VASP compares the corporate name of a legal person, who received a verification request, and the name of one representative with the actual legal owner of the corresponding asset address and the representative name.
    • When comparing legal persons' names, it is recommended to compare the names to know whether the requested corporate names match each other or not, and it shall be at the discretion of the beneficiary VASP whether to partially remove and compare strings such as corporation or not.
    • For several representatives, if the name of the representative received at the request matches one of the actual representative names, it is considered as appropriate.