Initiator Callback API 1 - Address/TX Verification Result Notify
Where should I integrate?
Description
This callback API notifies the initiator VASP about the result of address verification or TX verification.
The callback is triggered when the receiving VASP has completed the verification of the provided address or transaction ID and needs to inform the initiator about the result.
Note: If you don't have a pending flow in your system, you can skip this implementation.
Timing
- Initiator VASP initiates Travel Rule Request
- Receiver VASP responds
pendingto Initiator VASP - Initiator VASP waits for result from callback
- Receiver VASP invokes this API to notify Initiator VASP of the results
Callback Payload
Please recognize the callbackType: 13, and save the result to your local service. After this callback you will wait for the next callbackType: 15 for PII Verification Result (only if this callback has success status).
{
"callbackType": 13,
"invokeVaspCode": "0xQKGsNzOq2Er-xh6ReiL",
"originatorVasp": "0xQKGsNzOq2Er-xh6ReiL",
"requestId": "[REQUEST-ID]",
"beneficiaryVasp": "gdummy",
"callbackData": {
"beneficiaryAddress": {
"address": "0x7Fcd17CADf410Aa68125fc17a1F5aE9f8aaacE44",
"addressType": 0,
"tag": ""
},
"blockchainTransaction": {
"blockHash": "",
"blockId": "",
"network": "BTC",
"ticker": "USDT",
"txId": "ae95d3168512dd179b5bb510a80c6cde485fe66f8cd349c4949a4bd386e7f033",
"txIdType": 0,
"vin": "",
"vout": ""
},
"notifyResult": {
"verifyMessage": "Address Verification Success",
"verifyStatus": 100000
},
"travelruleInfo": {
"beneficiaryVaspCode": "gdummy",
"initiatorVaspCode": "0xQKGsNzOq2Er-xh6ReiL",
"invokeVaspCode": "gdummy",
"originatorVaspCode": "0xQKGsNzOq2Er-xh6ReiL",
"receiverVaspCode": "gdummy",
"requestId": "[REQUEST-ID]",
"verificationDirection": 2
}
}
}
Usage
When the Initiator VASP receives the callback of address or TX verification, you can simply mark your internal record with the stage like: TX ID verify (when verificationDirection=1), or address verification (when verificationDirection=2) via requestId. The actual result refers to callbackData.notifyResult.verifyStatus.
The handling process is basically the same as the response of API calling. You can refer to the same process and take action accordingly.