Monitor and prevent fraudulent activities on time.

A transaction is an attempt of your applicants to commit a financial operation like a crypto transfer, deposit, or gambling bet.

Each time a transaction is created, it triggers a set of rules intended to verify its legitimacy and—depending on the rule configuration—perform such automatic actions as:

  • Assign a score to the give transaction.
  • Put the transaction on hold so that it can be processed by the dedicated compliance officer. All transactions that are put on hold receive the Requires action status and distributed to queues for manual review.
  • Mark the transaction as awaiting actions from the applicant.
  • Reject the transaction automatically.

In the Dashboard, a list of transactions is available on the Transactions page, which encompasses inbound and outbound transactions of your applicants.

Submit transactions via API

To send transactions via the Sumsub API:

Create transactions in the Dashboard

To create transactions in the Dashboard:

  1. Go to the Transactions page.
  2. Click Create transaction manually.
  3. From the drop-down list, select an applicant on behalf of whom you want to produce the transaction. When creating a Travel Rule transaction, select No applicant (Travel Rule only) and follow the instructions provided in this article.
  4. Switch between the simplistic (visual representation) form and JSON payload (digital data).
  5. When using a simplistic form, select a Use Case (a transaction type):
    • Fiat — foreign currency transactions.
    • Crypto transaction — cryptocurrency transfers.
    • Gambling bet, Gambling limit change, and Gambling bonus changebets and betting rules for gambling platforms.
  6. Select whether the transaction is inbound or outbound (for Fiat and Crypto transactions only).
  7. Enter the transaction information based on the transaction type:
    • Fiat — amount, currency, payment details (the purpose of payment), beneficiary full name and external user ID, and the transaction date (custom or current).
    • Crypto transaction — amount, asset (cryptocurrency), payment details (the purpose of payment), blockchain TXID, sender full name, external user ID, applicant wallet address, and the transaction date (custom or current).
    • Gambling bet — amount, currency, result amount, bet type (sports, casino, poker, other), and the transaction date (custom or current).
    • Gambling limit change — limit change type (deposit, loss, wager, session time, self-exclusion), amount, currency, period, and the bet change date (custom or current). Select the respective checkbox if you want the change to be reverted later.
  8. Set the custom transaction date by selecting the associated checkbox if necessary.
  9. Click Create transaction.

Upload transactions in bulk

You can upload up to 1000 transactions in bulk via this API method, JSON, or CSV files.

Bulk upload available upon request. To extend the default upload limit, reach out to your Customer Success Manager or Support team.

To upload transactions:

  1. Go to the Transactions page.
  2. From the kebab menu, select Upload transactions.
  3. Select the Score saved transactions checkbox if you want your previously saved transactions to be scored.
  4. Drag and drop the file or select it on your computer.
  5. Click Upload.

When uploading transactions via API, use the Newline Delimited JSON (ndjson) format, as the following example demonstrates:

{"applicantId":"SomeApplicantId1","data": {"txnId": "SomeTxnId1", "applicant":{"externalUserId":"SomeApplicantExternalUserId1", "address": {"country": "DEU"},"paymentMethod": {"type": "card","accountId": "eg_hash_of_credit_card_number","issuingCountry": "DEU"},"device": {"fingerprint": "SomeDeviceFingerprint1","ipInfo": {"ip": ""}}},"counterparty":{"externalUserId":"SomeCounterpartyExternalUserId1","fullName":"CounterpartyFullName1", "institutionInfo": {"name": "Credit Swiss (Schweiz)","code": "CRESCHZZXXX"}},"info": {"direction": "out","amount": 865.42,"currencyCode": "JPY","paymentDetails": "Birthday Present"}, "props": {"customProperty": "Custom value that can be used in rules"}}}
{"applicantId":"SomeApplicantId2", "data": {"txnId": "SomeTxnId2", "applicant":{"externalUserId":"SomeApplicantExternalUserId2", "address": {"country": "GBR"},"paymentMethod": {"type": "card","accountId": "eg_hash_of_credit_card_number","issuingCountry": "GBR"},"device": {"fingerprint": "SomeDeviceFingerprint2","ipInfo": {"ip": ""}}}, "counterparty":{"externalUserId":"SomeCounterpartyExternalUserId2","fullName":"CounterpartyFullName2","institutionInfo": {"name": "Credit Swiss (Schweiz)","code": "CRESCHZZXXX"}},"info": {"direction": "in","amount": 2,"currencyCode": "BTC","paymentTxnId": "SomePaymentTxnId","paymentDetails": "Birthday Present"}, "props": {"customProperty": "Custom value that can be used in rules"}}}

When uploading transactions in CSV, pay attention to the following conditions:

  • The date should be formatted as M/D/YY (for example, 1/1/2022).
  • The amount fields should not include currency signs or commas.
  • All transactions should contain the information about their date, payee, and amount.
  • Empty fields can cause issues.
  • Your spreadsheet should use exactly the same column headers as provided in the example below.

If your transactions are successfully imported, you will receive the corresponding message. If not, you will get an error message describing the issues and the strings that cannot be parsed.

Create KYC transactions during onboarding

The option of creating KYC transactions during onboarding of new applicants can help you customize the risk policy, perform cross-checks, and calculate transaction risk score that affects the total applicant onboarding risk score.

When this option is enabled, every time a new applicant is being onboarded, the rules installed from the Basic Onboarding bundle are triggered and automatically applied to determine whether the applicant data such as email, phone number and/or IP address matches the rules parameters. For example, whether the email was created on a disposable platform or the phone number has been used in suspicious transactions, and so on.

Once the applicant data is checked, you receive the transaction score, which in turn affects the applicant onboarding risk score. The applicant is approved, rejected, or delegated to you for review, depending on the results of multiple cross-checks described in the installed rules.


Mind the following:

  • At least one of the rules from the Basic Onboarding bundle must be installed for the option to take effect.
  • The option of creating KYC transactions during onboarding is mandatory for the applicant onboarding score calculation (based on the transaction score).

To enable KYC transactions during onboarding:

  1. Set up a verification level to conduct onboarding KYC transactions.
  2. In the General section, expand More options.
  3. Select the Create KYC transactions during onboarding checkbox.
  4. Click Save.

Review transactions

To review transactions:

  1. In the Dashboard, open the Transactions page.
  2. Click a transaction record and review its details. Each transaction comprises fields that may vary, depending on the transaction and the applicant type. In the transaction body, you will also see the list of matched rules.
  3. Manage results as necessary.

Learn more about events

Events log any activities on transaction status change. Every time a transaction receives a new status, such an event is saved for future references.

To see the events, in the Dashboard, open the Events page.

Each event is mapped to the associated applicant and transaction, so that you can quickly open an applicant profile or transaction card for more details.

Study analytics

Analytics help you get a bird's-eye view of your applicant’s financial activity and make informed decisions regarding questionable transactions.

To view analytical information about your applicants' transactions:

  1. In the Dashboard, open the Transactions page and select any transaction.
  2. Open the Analytics tab to see the full transaction history for the selected user and specify the period to display the analytical data.

For financial transactions, you can review such information as: Transactions volume, Transactions count, Transactions count by status, and the Transactions volume for the specified period as a graph.

For gambling bets, you can review such information as: Gross gambling revenue, Profit/Loss, Total bonus sum, Transactions volume, and Total bet volume.

The information should be interpreted in the following manner:

Data TypeDescription
Transactions volumeThe amount of money sent, received, or withdrawn by the user.
Transactions countThe number of transactions performed within the specified period.
Transactions count by statusThe number of approved, declined, or suspended transactions split by direction.
Gross gambling revenueThe sum of the gaming revenue after extracting the player's wins and bonuses.
Profit/LossThe difference between the player’s deposit and the sun they withdrew.
Total bonus sumIssued bonuses.
Total bet volumeThe sum of the initial bet.



All the sums are displayed in the default currency specified in the General settings.