A Beginner's Guide to Crypto Back Office Operations

Tax Accounting

A Beginner's Guide to Crypto Back Office Operations
Confidently set up an efficient, secure, and compliant back office with these actionable insights
Table of Contents
Crypto accounting, simplified.
Schedule a Demo

As blockchain technology and decentralized finance become entrenched in the way we transact, invest, and store value, more and more businesses are confronting the daunting task of integrating cryptocurrency into their existing back office infrastructure—a challenge that encompasses a wide array of technical and operational complexities.

In this beginner’s guide, we will dissect the intricacies of crypto back office operations, provide actionable insights on overcoming the hurdles, and empower you with the knowledge and confidence to set up an efficient, secure, and compliant back office so you can reap the rewards of cryptocurrency and thrive in this brave new world of finance.

What you’re up against

The hurdles that arise from integrating crypto transactions into traditional business operations include:

Incompatibility of traditional ERP software with crypto transactions

Traditional ERP (Enterprise Resource Planning) software is not designed to handle crypto transactions, making the process of recording these entries manual and difficult. Since each blockchain and crypto exchange has its own unique data format, manual entries can easily result in errors. Traditional ERPs were built to be general ledgers for FIAT currencies and since cryptocurrencies do not function in the same way as FIAT they generally do not work in ERPs. Neither a Forex (Foreign Exchange) module nor an Inventory tracking module can handle the complexity of cryptocurrencies since from an accounting perspective crypto is like an inventory item that has price fluctuation.

Issues with data importing from on-chain and off-chain sources

Finding and importing transaction data from both on-chain and off-chain sources can be problematic, as every step must be either manually performed by downloading a block explorer, if one is available. Several blockchains and DeFi protocols do not offer a way to do this at all without integrations. Alternatively you could manually keep a ledger in Excel or a separate system that might not have an integration.

Lack of crypto asset support in traditional accounting systems

Standard accounting systems in traditional ERPs and general ledgers do not accommodate crypto assets. There are no good workarounds for this which is why a crypto back office software is needed.  Web3 and companies with crypto often try to record each cryptocurrency as a separate currency they add to the general ledger or use a foreign currency as a substitute, leading to an increased number of accounts and inaccurate accounting. Having a crypto specific subledger which handles crypto natively, and integrates both with the blockchain and with traditional ERPS and general ledgers is the best way to reflex cryptocurrency transactions and balances in an ERP.

Difficult accounting due to unsupported number systems

Traditional ERP systems typically support numbers with up to two decimal places, while blockchain transactions often involve more than two decimal places, sometimes 16, 18 or even 36 decimal places. This mismatch can result in very inaccurate accounting if you were to try and round up.

How to set up a crypto back office

Whether you’re just starting to dabble in crypto or are a crypto-native enterprise, establishing an efficient back-office operation is crucial to maintain accurate and up-to-date accounting records in compliance with the law.

This guide will walk you through the steps to set up a crypto back office, covering key elements such as building and maintaining GAAP/IFRS-grade crypto ledgers, reconciling on-chain activity with fiat general ledgers, and preparing essential financial reports. By following the framework outlined in the following sections, you'll be well on your way to a streamlined back-office infrastructure tailored to your specific needs.

Step 1: Preparation and documentation

This is the first and most important step in the whole process of setting up a back-office. You need to document the number of entities the project/Dapp has, collect a list of blockchains used, catalog smart contracts interacted with by the wallets, and also note if the entity engages in bridging assets across chains.

Let’s break these down in detail:

a. Number of entities

Each entity will need to maintain a separate set of books of account to ensure that each entity can file accounts, reports to regulators, and complete statutory audits, if applicable.

If entities are located in various jurisdictions or territories, maintaining a separate set of books of accounts becomes even more important since the tax treatment and reporting of each territory may be different.

b. List of blockchains and wallets used by the entity

Prepare a list of all the wallet addresses you have on all the blockchains (including L2s). This will help keep track of different wallets and tag them for their specific use.

c. List of smart contracts interacted with

Preparing a list of smart contracts interacted with on a regular basis will help to understand the most common types of transactions and help prepare a process for accounting of such transactions. This list need not be exhaustive but should ideally cover the most used smart contracts.

d. Bridging assets across chains

Keeping a note of bridges used will help to reconcile transactions and label them accurately. Usually when bridging transactions there will be a sent transaction on one chain and a receipt transaction on another chain; making a list will help to keep a track of such transfers.

e. Centralized Exchanges (CEX) and/or other services used during the year

Similar to how we created a list of all blockchain wallets used, we also need to prepare a list of all CEX and other services (like custody providers, e-commerce apps, OTC etc.) used during the year since even these need to be accounted for.

Once you have completed collecting the data from all the above sources you will need to inventory all your self-custody and third-party custody wallets.

Step 2: Import or sync the transactions and to a sub-ledger software

Once you have completed documenting all the blockchain wallets and third party custodians used, the next step is to centralize all the transactions from on-chain, off-chain, self-custody sources and third-party custodians in a crypto subledger. The marketing leading crypto subledger, Bitwave, has integrations with popular blockchains and centralized exchanges to sync in transactions automatically.

a. Import from self-custody sources:

All blockchains are public ledgers. However, structuring the data from these blockchains in a way that is useful for accounting is very difficult. Popular block explorers such as Etherscan can have limitations, be prone to errors or have instances of inconsistent data and missing transactions. This issue only amplifies with the increase in transactions and chains used.

To accurately index and process on-chain data for accounting and reporting purposes, you need a crypto accounting subledger software like Bitwave.

b. Import from third-party custody sources:

Transaction data from third-party sources can be obtained using either CSVs or API read-only keys. However, using APIs may also have its own set of limitations and inaccuracies depending on the quality of API and the database.

Bitwave streamlines the whole process and enables real time importing of transactions both on-chain and off-chain. It also empowers finance teams with tools to categorize and organize the data, transforming it into enterprise grade ledgers then easily syncing this info into your accounting system or ERP.

c. Organize the transactions

The last action point in this step is to organize the transactions:

  1. Sync all the transactions across wallets, blockchains and third-party custodians
  2. If appropriate, use Bitwave to bring in the fair market value at the time fo the transaction and use that as your cost basis
  3. Categorize all transactions (this should be in line with the chart of accounts) to help in understanding the type of transaction like expense or income etc.  
  4. Separate “gas fees” and other fees paid to third-party custodians as separate transactions so you can mark those as expenses, if appropriate
  5. Identify your contacts and their counterparties for compliance purposes
  6. Select and Inventory treatment for gain loss reporting and tax calculations (First In First Out - FIFO, Average Cost Basis - ACB, etc)
  7. Calculate for gain and loss for each transaction

The ultimate output of this step is a crypto sub-ledger which is the source of truth for all your crypto activity. This report can then be leveraged for financial analysis, accounting and financial reporting.

Step 3: Reconcile the crypto subledger with the chart of accounts

In Step 2 you completed the process of importing transactions and also labeled all the transactions based on the type of income, expense, asset or liability. The next step is to reconcile the crypto subledger with your businesses main FIAT general ledger. You’ll prepare a chart of accounts that includes digital asset revenue or income and liability and expense accounts and map to the crypto sub-ledger.

But before diving into reconciliation, it’s important to understand what is a chart of accounts and how to prepare one.

A chart of accounts is an index of all the financial accounts (bank, payroll, revenue, marketing, legal fees, etc.) in the books of a company. It changes based on the activities of the company during an accounting period.

You will need to create specific accounts for your crypto activity in the chart of accounts. For example:

Account Code Name Type Description
101 ETH Asset Ethereum asset account
102 USDC Asset Circle USD stablecoin asset account
103 BTC Asset Bitcoin asset account
201 Staking rewards Income Interest income account from staking activity
301 Payroll Expense Employee wages
401 Fees Expense Gas fees and third party fees account
501 Realized Gain/Loss Expense Realized gain/loss on crypto activity

The above chart of accounts is for illustrative purposes only and there may be many more accounts required based on the nature and type of activity. It’s also important to note that there are some specific accounts which need to be included in all chart of accounts:

  1. Default accounts:
  • Fees account - expense account
  • Realized Gain/Loss - expense account
  1. Asset accounts:
  • Individual asset account for each crypto asset (USDC, ETH, BTC, etc.)
  • These are all assets and will appear in the balance sheet
  1. Income/Expense accounts:
  • Accounts for each type of income received or expense paid (payroll, staking income, marketing expense, etc.)
  • Accounts may be added based on specific income earned or expense incurred.

Once the chart of accounts is prepared, all the transactions in the crypto sub-ledger need to be mapped to the respective ledger in the chart of accounts. This process is fully automated in Bitwave and users don’t need to do any such mapping manually.

Step 4: Generate audit-ready reports

Once the back office is set up and has integrated all relevant data sources, it plays a crucial role in generating various financial and operational reports to support decision-making and maintain compliance with regulatory requirements. Some of the reports a Bitwave provides includes:

  • Ledger entries report: This report lists all the individual transactions recorded in the general ledger, providing a detailed overview of an organization's financial activities.
  • Cost basis report: A cost basis report calculates the original value of assets, including acquisition costs, fees, and adjustments. This report is essential for determining capital gains or losses when disposing of assets.
  • Unrealized gain/loss: Unrealized gain/loss reports track the difference between an asset's current market value and its cost basis. This helps organizations understand the potential gains or losses they would realize if they were to sell their assets at the current market price.
  • Historical balances report: This report provides a snapshot of an organization's financial position at various points in time by showing the balances of assets, liabilities, and equity accounts.
  • Asset roll forward report: An asset roll forward report tracks the changes in an asset's balance over a specific period. It includes information on beginning balances, additions, disposals, depreciation, and ending balances.
  • Impairment testing and reporting: Impairment testing is used to evaluate whether the carrying value of an asset exceeds its recoverable amount. Impairment reports help organizations identify and record any necessary adjustments to accurately reflect an asset's current value.

With Bitwave, all of the above reports (and many more) are readily available in real-time, offering finance teams valuable insights into an entity's financial health and performance and enabling quick decision making, something particularly important in the volatile world of crypto assets.

Streamline your back-office operations with Bitwave

In the innovative and ever-evolving world of cryptocurrency, Bitwave provides enterprises a complete drop-in solution for handling digital assets. We track every single transaction, help categorize them, then sync this right into your accounting system. Our platform offers complex tax tracking capabilities, automatic mark-to-market capabilities, crypto invoicing, and crypto bill pay. Contact us at to discuss your back-office software solution.

Pioneering digital asset accounting teams use Bitwave
Schedule a Demo
G2 High Performer Winter 2023

Disclaimer: The information provided in this blog post is for general informational purposes only and should not be construed as tax, accounting, or financial advice. The content is not intended to address the specific needs of any individual or organization, and readers are encouraged to consult with a qualified tax, accounting, or financial professional before making any decisions based on the information provided. The author and the publisher of this blog post disclaim any liability, loss, or risk incurred as a consequence, directly or indirectly, of the use or application of any of the contents herein.