Update PII Verification Result
✍️ If your VASP doesn't support Travel Rule Pending Solution, you can skip this implementation guide.
This POST /api/verify/v2/manual/verify_pii API allows VASPs to perform PII Verification in a separate async process and notify GTR via this endpoint once verification is completed. GTR will forward the PII Verification result to the corresponding Travel Rule Initiator VASP.
This is a follow-up API for Travel Rule Receiver VASP which previously responded to a PII Verification callback request with a PENDING result.
For further details of this API, see API Reference: /api/verify/v2/manual/verify_pii
Request
To use this API,
- The
requestIdmust already exist beforehand. - This request must be at the PII Verification stage with a status
100002which is PENDING. - Please refer to PII Matching Process to learn more about how to enrich the request body.
Once you call this API, GTR will forward your PII Verification result to your Travel Rule Initiator VASP.
Request A: PII Verify Success
If you confirm the correctness of PII, you can call this API with verifyStatus=100000.
{
"requestId": "[REQUEST-ID]",
"result": {
"verifyStatus": 100000,
"verifyMessage": "PII Verification Success",
"data": {
"preflightCheckMessage": "",
"preflightCheckStatus": "REJECTED",
"verifyFields": [
{
"message": "matched (success)",
"status": 1,
"type": "111001"
},
{
"message": "mismatch (failed)",
"status": 2,
"type": "111022"
}
],
"piiSecuredInfo": {
"initiatorKeyInfo": {
"publicKey": "[COUNTER_PARTY_VASP_PUBLIC_KEY]"
},
"receiverKeyInfo": {
"publicKey": "[YOUR_PUBLIC_KEY]"
},
"piiSecretFormatType": "FULL_JSON_OBJECT_ENCRYPT",
"piiSpecVersion": "ivms101-2020",
"secretAlgorithm": "ed25519_curve25519",
"securedPayload": "[Encrypted PII, clear-text is forbidden]"
}
}
}
}
Request B: PII Verify Failed
If PII validation failed, you can call this API with verifyStatus=200003.
{
"requestId": "[REQUEST-ID]",
"result": {
"verifyStatus": 200003,
"verifyMessage": "PII Verification Failed",
"data": {
"preflightCheckMessage": "",
"preflightCheckStatus": "REJECTED",
"verifyFields": [
{
"message": "matched (success)",
"status": 1,
"type": "111001"
},
{
"message": "mismatch (failed)",
"status": 2,
"type": "111022"
}
],
"piiSecuredInfo": {
"initiatorKeyInfo": {
"publicKey": "[COUNTER_PARTY_VASP_PUBLIC_KEY]"
},
"receiverKeyInfo": {
"publicKey": "[YOUR_PUBLIC_KEY]"
},
"piiSecretFormatType": "FULL_JSON_OBJECT_ENCRYPT",
"piiSpecVersion": "ivms101-2020",
"secretAlgorithm": "ed25519_curve25519",
"securedPayload": "[Encrypted PII, clear-text is forbidden]"
}
}
}
}