Skip to content

Automatically detected incoming transactions

Detect inbound blockchain transfers to confirmed custodial wallets and create incoming transaction records.

CryptoSwift can monitor your eligible confirmed custodial wallets. When it detects an inbound on-chain transfer, it automatically creates a transaction with direction: "INCOMING", even if no Travel Rule message has been received from the originator VASP.

Automatically detected records have travelRuleMessageSource: "Automatic". They use the standard incoming transaction API and webhook mechanism and can enter your usual risk assessment, Rule Engine, and compliance review processes where applicable. For the operational steps and response actions, see the incoming transactions workflow.

Prerequisites

Before using automatic detection:

  • The feature must be activated for your tenant.
  • The custodial wallets you want to monitor must be registered and confirmed.
  • Each monitored wallet must have a valid, non-empty address and use a supported blockchain.
  • In Production, the supported networks are Bitcoin, Ethereum, and Solana mainnet.
Sandbox limitations

In the Sandbox environment, automatic detection of incoming transactions currently supports Ethereum mainnet only. Counterparty VASP detection is also limited because blockchain analytics tools are disabled in Sandbox.

Activate incoming transaction detection

Feature activation is managed in the CryptoSwift Client Dashboard. Follow this setup flow:

  1. Register your custodial wallets with the Wallets API or the Client Dashboard.
  2. Open the main Settings section in the Client Dashboard.
  3. Activate Automatically detect incoming transactions.
  4. Configure transaction webhooks and verify webhook signatures.
  5. Process automatically detected records through your standard incoming transaction compliance workflow.
Credit usage starts when activated

Activating automatic detection starts using one credit for every newly created INCOMING transaction, regardless of whether it was automatically detected or received through another integration. See Credit usage for the current usage rates across CryptoSwift features.

Wallet monitoring is asynchronous

Wallet synchronization with the blockchain monitoring infrastructure happens asynchronously. Activating the feature may therefore not take effect immediately. New wallets, wallet changes, confirmations, and removals are synchronized automatically; you do not need to resubmit the feature setting after changing your wallet inventory.

Deactivating Automatically detect incoming transactions asynchronously removes eligible wallets from automatic monitoring. It does not delete incoming transactions that CryptoSwift already created.

Automatically detected transaction data

Automatically detected records come from observed blockchain activity rather than a Travel Rule message supplied by another VASP. The initial record includes the observed asset and amount and blockchain information such as the network, transaction hash, and origin and destination addresses. Converted USD and EUR amounts are included when price data is available.

Because the originator did not supply a Travel Rule message, originator and other Travel Rule information may initially be incomplete. CryptoSwift screens the observed originator wallet for sanctions and applies incoming risk scoring and Rule Engine processing where those capabilities are available and configured. CryptoSwift may also use available wallet intelligence to try to identify the originator VASP, but identification is not guaranteed.

Some enrichment can finish after the initial record is created. When later enrichment adds originator VASP or wallet-risk information, you may receive another transaction webhook containing the updated record.

Missing Travel Rule data

Do not wait for an originator VASP to be identified in every case. If the originator's Travel Rule information is unavailable, follow the missing Travel Rule data workflow to backfill the record or file a claim when appropriate. Counterparty VASP detection is especially limited in Sandbox because blockchain analytics tools are disabled there.

Webhooks and processing

Automatically detected incoming transactions use the normal transaction webhook mechanism. Verify every notification using the webhook signature, reconcile updates by transaction id, and route the record into your standard incoming compliance workflow.

Use travelRuleMessageSource: "Automatic" to distinguish an automatically detected transfer from an incoming Travel Rule message received through another source. The automatically detected record normally begins with status: "DELIVERED". Use the existing incoming transaction documentation and compliance workflow for applicable statuses and response actions rather than creating a separate status model.

You can incorporate the Travel Rule Risk Score and Rule Engine result into your release, review, or block decision where those results are available. Missing originator data should continue through your established exception process.

Credit usage

Incoming transaction credits

While automatic detection of incoming transactions is active, every newly created INCOMING transaction consumes one credit. This applies regardless of source, including automatically detected transactions and incoming messages received through other integrations. Updates to an existing incoming transaction do not consume another incoming-transaction credit. Activating or deactivating the feature does not retroactively change credit usage for existing transactions. See Credit usage for the current usage rates across all features.

Related documentation