Update transactions via bulk import

Update transaction data with bulk import.

The bulk import method of our API allows you to update any field in the previously submitted transactions.

When updating transactions, pay attention to the following conditions:

  • The bulk method expects transactions to be passed as a valid NDJSON with the Content-Type: application/x-ndjson header.
  • It is required to submit all transaction fields (regardless of its change).
  • Rescore will be run for the transaction restatement and checking travel rules matching.
  • If no matching data.txnid is found, a new transaction will be created.

Learn how this functionality works using a finance transaction as an example.

Update finance transaction with bulk import

If some of the transaction parameters have been specified after its initiation, you can update these fields by using the bulk import method.

Original transaction

{
  "txnId": "rv4mkr2i2yq144irrbopxp",
  "applicant": {
    "address": {
      "country": "DEU",
      "formattedAddress": "Chauseestr. 60, 10115, Berlin, Germany"
    },
    "paymentMethod": {
      "type": "card",
      "accountId": "eg_hash_of_credit_card_number",
      "issuingCountry": "DEU"
    },
    "device": {
      "fingerprint": "mzb5usxm3pt",
      "ipInfo": {
        "ip": "87.141.63.130"
      }
    },
    "institutionInfo": {
      "code": "DEUTDEDB101",
      "name": "Deutsche Bank"
    }
  },
  "counterparty": {
    "externalUserId": "qgux1ieyrqama40jm7i6ds",
    "fullName": "Jack Posek",
    "type": "individual",
    "paymentMethod": {
      "type": "account",
      "accountId": "eg_hash_of_iban",
      "issuingCountry": "CHE"
    },
    "institutionInfo": {
      "internalId": "CRESCHZZXXX",
      "name": "Credit Swiss (Schweiz)"
    }
  },
  "info": {
    "direction": "out",
    "amount": 101.42,
    "currencyCode": "GBP",
    "paymentDetails": "Birthday Present"
  },
  "props": {
    "customProperty": "Custom value that can be used in rules",
    "dailyOutLimit": "10000"
  },
  "txnDate": "2024-01-23 16:08:58+0200"
}

Updated transaction

Here, the accountId, paymentDetails, and amount fields have been changed. The import is performed via this API method.

{
  "applicantId": "659c0a51ba660a4c741cc35f",
  "data": {
    "txnId": "rv4mkr2i2yq144irrbopxp",
    "applicant": {
      "address": {
        "country": "DEU",
        "formattedAddress": "Chauseestr. 60, 10115, Berlin, Germany"
      },
      "paymentMethod": {
        "type": "card",
        "accountId": "SADFWERIFWIF123123",
        "issuingCountry": "DEU"
      },
      "device": {
        "fingerprint": "mzb5usxm3pt",
        "ipInfo": {
          "ip": "87.141.63.130"
        }
      },
      "institutionInfo": {
        "code": "DEUTDEDB101",
        "name": "Deutsche Bank"
      }
    },
    "counterparty": {
      "externalUserId": "qgux1ieyrqama40jm7i6ds",
      "fullName": "Jack Posek",
      "type": "individual",
      "paymentMethod": {
        "type": "account",
        "accountId": "eg_hash_of_iban",
        "issuingCountry": "CHE"
      },
      "institutionInfo": {
        "internalId": "CRESCHZZXXX",
        "name": "Credit Swiss (Schweiz)"
      }
    },
    "info": {
      "direction": "in",
      "amount": 1010.42,
      "currencyCode": "GBP",
      "paymentDetails": "testesttest"
    },
    "props": {
      "customProperty": "Custom value that can be used in rules",
      "dailyOutLimit": "10000"
    },
    "txnDate": "2024-01-23 16:08:58+0200"
  }
}