Request Travel Rule data to originating VASP.
This API works in the reverse way of 'Asset Transfer Authorization'. So when an anonymous transaction is transferred, it will request for the Travel Rule data to make it identified.
❗️Due to the complexity of the IVMS101 standard, we recommend using CODE-Cipher. If, for internal security reasons, you are unable to use it, please carefully read the IVMS101 standard section in the developer guide.
❗️This API works in a synchronous manner, providing an immediate response upon request.
Path Parameter
Name | Required | Type | Description |
---|---|---|---|
vaspEntityId | Required | string | Entity ID of originating VASP returned from 'Search VASP by TXID Result' |
Request
For the originator's personal information, as of August 7 2024, individual's name and date of birth are to be sent for the individual, and only information on the legal person and representative name is to be sent for the legal person.
Name | Required | Type |
---|---|---|
transferId | Required | string |
txid | Required | string |
vout | Optional | string |
payload | Required | string |
transferId: Use the 'requestId' from 'Search VASP by TXID'.
txid: It is a unique value used to identify a specific transaction executed on the blockchain for virtual asset transfer. It is unique and generated by the blockchain API.
vout: An identifier for UTXO-type coins, used when multiple blockchain transactions share a single TXID and form a group.
What is vout? https://learnmeabitcoin.com/technical/transaction/input/vout
payload: An object for for containing IVMS101 messages. Please refer to the IVMS101 Standard page.
{
"transferId": "681f27dd-43e4-4ea3-9bcc-607426d6349f",
"txid": "311BFF73D9B7969CCF1042186180159C724FAB59013A7A034A93E5FB9D6BAFE6",
"vout": "",
"payload": "encrypted ivms101 payload"
}
Response
Name | Required | 타입 |
---|---|---|
result | Required | string |
reasonType | Optional | string |
reasonMsg | Optional | string |
transferId | Required | string |
currency | Optional | string |
amount | Optional | string |
historicalCost | Optional | string |
tradePrice | Optional | string |
tradeCurrency | Optional | string |
isExceedingThreshold | Optional | String |
payload | Required | string |
result: This is the result of asset transfer data request.
-normal
: The request was processed correctly, the transaction was received.
-error
: The request was not processed. Please check 'reasonType'.
reasonType: If the result value is error, a value which identifies the detailed reason.
-NOT_FOUND_TXID
: When the cannot be found
-LACK_OF_INFORMATION
: When a required field of IVMS101 was missing.
-UNKNOWN
: Others.
reasonMsg: This describes a detailed message explaining the reasonType.
transferId: 'transferId' received from 'Asset Transfer Data Request' API.
currency: This is a symbol of the virtual asset you want to transfer. (This is case insensitive.)
amount: This is the total volume of virtual assets you want to transfer.
historicalCost: This is an acquisition cost of the virtual asset to be transferred (The requirements of National Tax Service. However, it is not used yet.)
tradePrice: This is the amount of the virtual asset transfer converted to a type of legal tender. If there is no its own price information, convert this using the price API of other VASP. Please refer to 'tradePrice' calculation below.
tradeCurrency: This is a legal tender code, which follows the ISO 4217 standard used when converting to a legal tender. The following currencies can be entered: 'KRW', 'USD', 'EUR', 'JPY', 'CNY', 'GBP', 'CAD', 'AUD', 'HKD', 'SGD'. If you need to use any other currency code, please inform the CODE team! For more details, please refer to the Developer FAQ page.
isExceedingThreshold: Indicates whether the tradePrice exceeds the Travel Rule threshold specified by law.
payload: This is an object to contain IVMS101 message. Please refer to IVMS101 Request.
'tradePrice' calculation
In the "tradePrice" field, you should enter the value calculated by multiplying the quantity of the asset by its price in fiat currency. In the "tradeCurrency" field, you should specify the type of fiat currency.
For example, if you are transferring 2 BTC and the price at that moment is $42,708, then the total price is 42,708 * 2 = $85,416. In this case, you value should be as follows:"tradePrice": "85416",
"tradeCurrency": "USD",