Skip to content

Self-hosted wallet verification

Connect ownership checks to your Travel Rule policies

Self-hosted wallet verification confirms that a customer controls the destination address before you release funds. Regulations such as MiCA require risk-based controls for withdrawals to non-custodial wallets, and many VASPs adopt additional safeguards for higher-value transfers or certain jurisdictions.

Information Circle
When to trigger verification

Common trigger points include first-time withdrawals, amounts above internally defined thresholds, or when analytics tools flag elevated risk. Align the trigger with your transaction monitoring policies so customers experience a consistent flow.

Where it fits in the workflow

  1. Collect the intended withdrawal details (asset, amount, destination wallet).
  2. Decide whether the withdrawal qualifies for a self-hosted wallet check based on your policy.
  3. Run the verification flow before you move funds, and store the result alongside the pending transaction.
  4. Continue with the post-transaction or pre-transaction Travel Rule workflow once ownership is confirmed, or escalate if verification fails.

Verification methods supported by CryptoSwift

  • Cryptographic signature proofs – Customers sign an off-chain message with their private key. CryptoSwift verifies signatures for Bitcoin, Solana, and EVM-compatible networks following CAIP-122.
  • Micro transactions (Satoshi Test) – Customers send a small deposit from the destination wallet within a 48-hour window. CryptoSwift monitors supported blockchains (Bitcoin, Dash, Litecoin, Dogecoin) and flags success automatically.
  • Wallet screenshots – Customers upload evidence from their wallet application for manual review.
  • Self-declaration – Customers tick a checkbox declaring ownership. It is the least secure option but useful as a fallback when stronger evidence is unavailable.

Choose an integration approach

  • Wallet verification widget – Embed a configurable web component or redirect to a hosted flow with minimal engineering effort. Ideal when you want a managed UX and rapid rollout.
  • Wallet verification API – Orchestrate verification completely within your app, combining your own UI with CryptoSwift endpoints for maximum flexibility. Useful for mobile-first or highly customised experiences.

Operational considerations

  • Store verification results with transaction metadata so auditors can confirm when proofs were obtained.
  • Reuse successful verifications according to your risk policy (for example, accept the same wallet for 12 months unless risk scores change).
  • Ensure webhook events are routed to the systems that update withdrawal status—verification outcomes arrive alongside Travel Rule notifications.

Next steps