Overview
Use this method to prevent the occasional transaction data disclosure.
Each time you receive an incoming transaction, Sumsub requests from you the data about the wallet owner, so that we can confirm they are registered at your platform and avoid disclosing the transaction information if the transaction was created and assigned to your platform by mistake.
Info
The data we exchange includes the Sumsub transaction ID and the wallet owner name derived from your platform.
Request example
curl -X PATCH \
'https://api.sumsub.com/resources/kyt/txns/srthjdsryjdtryjdtuykdtukdtu/data/applicant' \
-H 'content-type: application/json' \
-d '{
"fullName": "John Doe",
"externalUserId": "123456789"
}'
Response explained
If the request was sent and processed correctly, you will get a JSON file that represents the structured transaction information. The existence of some fields depends on the transaction type and matched rules.
Response examples
In case there was no proper applicant in the Sumsub system, a new applicant profile will be created for the transaction. In the response, you can see the applicantId
field and the corresponding applicant data.
If the applicant profile already exists, the txn.data.applicant.fullName
field will be updated. travelRuleInfo.status
changes to completed
.
{
"id": "66fbbe5a2c633f3ea10c9e30",
"applicantId": "66fbbec12c633f3ea10c9e48",
"externalUserId": "6wr4y2c9y95iiwl4e4buqq",
"clientId": "your_cool_id",
"data": {
"txnId": "c2b7c8a8-3ee0-4bed-9907-535938589dd6",
"txnDate": "2024-10-01 09:18:18+0000",
"applicant": {
"externalUserId": "6wr4y2c9y95iiwl4e4buqq",
"fullName": "Arya Stark",
"type": "individual",
"paymentMethod": {
"type": "",
"accountId": "0X6B1E4CFE1659FB2FF41E70C89BC03A92895C76FE"
}
},
"counterparty": {
"externalUserId": "c5en9vgro9td9i5uoaanfg",
"fullName": "John Posek",
"type": "individual",
"paymentMethod": {
"type": "account",
"accountId": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"
},
"device": {
"ipInfo": {
"ip": "87.141.00.000",
"countryCode2": "DE",
"countryCode3": "DEU",
"city": "Berlin",
"zipCode": "13357",
"lat": 52.5481,
"lon": 13.3844,
"asn": 3320,
"asnOrg": "Deutsche Telekom AG",
"riskyAsn": false
},
"fingerprint": "re72icqgje"
}
},
"type": "travelRule",
"info": {
"direction": "in",
"amount": 0.01,
"currencyCode": "ETH",
"currencyType": "crypto",
"amountInDefaultCurrency": 23.798191337458352,
"defaultCurrencyCode": "EUR"
}
},
"score": 0,
"review": {
"reviewId": "FhrBu",
"attemptId": "GXNaw",
"attemptCnt": 3,
"elapsedSincePendingMs": 139273,
"createDate": "2024-10-01 09:18:18+0000",
"reviewResult": {
"reviewAnswer": "GREEN"
},
"reviewStatus": "completed",
"confirmed": false
},
"createdAt": "2024-10-01 09:18:18+0000",
"scoringResult": {
"score": 0,
"dryScore": 0,
"matchedRules": [
{
"id": "66be1caaf47b4f7a6fccf5fb",
"name": "TRI0-tra-rule-new-tr-data-exc-req-lVyy",
"revision": 1,
"title": "Travel Rule: New TR data exchange request",
"score": 0,
"dryRun": false,
"action": "score"
}
],
"action": "score",
"ruleCnt": 4,
"dryRunRuleCnt": 0
},
"travelRuleInfo": {
"protocolName": "sns",
"applicant": {
"externalUserId": "6wr4y2c9y95iiwl4e4buqq",
"fullName": "Jack Posek"
},
"counterparty": {
"externalUserId": "c5en9vgro9td9i5uoaanfg",
"fullName": "John Posek"
},
"status": "completed",
"applicantVaspId": "668d5fb69c98ed620c55ae0d",
"counterpartyVaspId": "66b10acdf6c30965b9ea644d"
},
"txnInactive": false
}
If the request fails, you will receive an HTTP response containing an error code along with a message explaining the error. For example:
{
"description": "Invalid txnId '000000000'",
"code": 400,
"correlationId": "3773cd5e8ad50ea28fe40553717ffe3a"
}