General Use Case

How to use Virtual Accounts

Introducing the Crypto Exchange Use Case

A crypto Exchange is a web application where end-users can trade their crypto assets. The Owner of the Exchange is the one who owns the private keys to all of the user's crypto assets - in this case, we are talking about a Custodial Exchange leveraging a Custodial Wallet.

‌Trades are not performed on the blockchain (on-chain), as this would be slow and expensive. All the trades are virtual transactions between end-user accounts (off-chain).

Exchange Workflow

Step 1: Setting up the application

Includes prerequisites like blockchain wallet creation and creating exchange service accounts for gathering fees.

Step 2: Registration of new end-users in the application

The steps that need to be executed when new users register in the exchange

Step 3: End-user application journey

What kind of actions end-users can take while in the application

Step 4: Trading

Enabling end-users to trade their assets

Step 5: Observe Security Basics

Additional information is available in the following article.

Good to Know

  • A custodial wallet is a wallet where a third party holds the private keys, not the crypto assets owner. The provider has full control over crypto assets, while end Users only have permission to send or receive payments.
  • Every Exchange must have wallets for every crypto asset it supports.
  • Every end-user of the Exchange must obtain accounts for every asset they are trading.
  • The exchange operator defines the trading pairs that can be traded by users and usually charges a fee for every trade performed.

📘

Virtual Accounts can only handle one (1) single currency per Virtual Account.

Disclaimer

  • The Tatum Virtual Accounts Use Case is based on a Custodial Exchange, where the user ("you") holds the PrivateKeys and Mnemonics on behalf of their end-users.
  • You are expected to hold 1:1 asset liquidity between the VA off-chain ledger and your end-users on-chain assets.
  • Tatum does not hold Mnemonics and or PrivateKeys. Additional information is available in the following article.
  • Virtual Accounts are designed to hold a limited number of deposit addresses (1-5), similar to standard practices in Exchanges. While adding many deposit addresses may appear functional, this setup often leads to unrecoverable synchronization issues across users over time.

🚧

To avoid potential disruptions and ensure consistent performance, we recommend adhering to the intended usage of 1-5 deposit addresses per Virtual Account.