Patch transaction with chain transaction ID

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Overview

Use this method to attach a blockchain transaction ID to an already approved transaction. This associates the transferred asset result (transaction identifier) with the asset transfer details.

📘

Info

The data we exchange includes the Sumsub transaction ID and the transaction ID derived from your system.

Request example

curl -X PATCH \
     'https://api.sumsub.com/resources/kyt/txns/66cd891eefa135789ce5264f/data/info' \
     -H 'content-type: application/json' \
     -H 'X-App-Token: <your-app-token>' \
     -H 'X-App-Access-Sig: <your-signature>' \
     -H 'X-App-Access-Ts: <unix-timestamp>' \
     -d '{
           "paymentTxnId": "3213654zdrgsetrr51435ergh453t5z43rb"
         }'

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

As a result of successful request, paymentTxnId is added to the data.info attributes.

{
  "id": "66fbbc072c633f3ea10c9dad",
  "applicantId": "66fbbc072c633f3ea10c9da9",
  "externalUserId": "1jhdkl44pqyud1kovvfwmm",
  "clientId": "your_cool_id",
  "data": {
    "txnId": "p3p0s3g2liovkgibmym1h",
    "txnDate": "2024-10-01 09:08:22+0000",
    "applicant": {
      "externalUserId": "1jhdkl44pqyud1kovvfwmm",
      "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": "9l5y22eqpso"
      }
    },
    "counterparty": {
      "externalUserId": "hnd2iim6y4phntbn3c6c3",
      "fullName": "John Posek",
      "type": "individual",
      "paymentMethod": {
        "type": "",
        "accountId": "0X7B1E4AFE1659FB2FF41E70C89BC03A92895C76FE"
      }
    },
    "type": "travelRule",
    "info": {
      "paymentTxnId": "0x5b5d6e9fb1a4c8f7e9205f59b40c76ecba58f3427b4a3c1a1f7f390000000000",
      "type": "withdrawal",
      "direction": "out",
      "amount": 0.01,
      "currencyCode": "ETH",
      "currencyType": "crypto",
      "amountInDefaultCurrency": 23.798191337458352,
      "defaultCurrencyCode": "EUR"
    },
    "props": {
      "customProperty": "Custom value that can be used in rules",
      "dailyOutLimit": "10000"
    }
  },
  "score": 0,
  "review": {
    "reviewId": "AmXvZ",
    "attemptId": "iKPbc",
    "attemptCnt": 2,
    "elapsedSincePendingMs": 27534,
    "createDate": "2024-10-01 09:08:23+0000",
    "reviewResult": {
      "reviewAnswer": "GREEN"
    },
    "reviewStatus": "completed",
    "confirmed": false
  },
  "createdAt": "2024-10-01 09:08:23+0000",
  "scoringResult": {
    "score": 0,
    "dryScore": 0,
    "matchedRules": [
      {
        "id": "660547476b52d214c9d29c8b",
        "name": "TRI0-pre-tra-rule-inf-exc-gLTR",
        "revision": 1,
        "title": "Prepare Travel Rule information exchange",
        "score": 0,
        "dryRun": false,
        "action": "score"
      },
      {
        "id": "6657029686972147ead159eb",
        "name": "TRI12-ena-unh-wal-ver-if-no-att-fou-IYZA",
        "revision": 1,
        "title": "Enable unhosted wallet verification if no attribution found",
        "score": 0,
        "dryRun": false,
        "action": "score"
      },
      {
        "id": "66fbbc222c633f3ea10c9dee",
        "name": "auto-adj-app-sco-dIIv",
        "title": "[AUTO] Adjust applicant score",
        "score": 0,
        "action": "score"
      }
    ],
    "action": "score",
    "ruleCnt": 6,
    "dryRunRuleCnt": 0
  },
  "travelRuleInfo": {
    "protocolName": "sns",
    "applicant": {
      "externalUserId": "1jhdkl44pqyud1kovvfwmm",
      "fullName": "John Posek"
    },
    "counterparty": {
      "externalUserId": "hnd2iim6y4phntbn3c6c3",
      "fullName": "Jack Posek"
    },
    "status": "completed",
    "applicantVaspId": "66b10acdf6c30965b9ea644d",
    "counterpartyVaspId": "668d5fb69c98ed620c55ae0d"
  },
  "txnInactive": false
}
📘

Note

The finished status will be assigned asynchronously; not in response to the request.

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"
}

Path Params
string
required
Body Params
string
Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here!