Accounting Basics

Double-Entry Bookkeeping

Modern accounting is built around the notion of double-entry bookkeeping, which means that every transaction recorded has at least two line items.

For each transaction, we are tracking where the money came from and where it went to. That's all we mean when we say "double-entry". Each transaction has two accounts involved.

This should be pretty easy to understand in the case of transferring money between two bank accounts. If you send $100 from your Bank of America account to your US Bank account, that's a +100 line item for US Bank and a -100 line item for Bank of America.

But what if you mow someone's lawn and they pay you with a $100 check deposited to your US Bank account? The "to" account in this transaction is pretty obvious: the US Bank account.

But what's the "from" account? The customer's checking account? Nope. It's an Income account. Even though Income accounts aren't bank accounts like your checking account, they can be treated like one for bookkeeping purposes.

Building Your Chart of Accounts

In CoinReporting, you should create an Income account for every type of income you receive, and you should create an Expense account for every type of expense that you pay. Then you should create an account for every bank, credit card, loan, digital currency wallet, or exchange account that you have.

The idea is to build out a chart of accounts in the CoinReporting software that mirrors the actual accounts that exist in your business.

Account Types

CoinReporting supports several different account types, so we'll try to explain those here.


Assets are economic resources (such as cash balances or digital currency holdings) that are yours. Examples of assets include your bank balance, your digital currency wallets, and your money on deposit with an exchange.

CoinReporting includes account types Bank, Exchange, and Digital Wallet which are specialized versions of the Asset account type and should be used where appropriate.


Liabilities represent what you owe to other parties. Liabilities include credit card balances, and loan balances.

CoinReporting includes account types Credit Card and Margin Loan/Swap which are specialized versions of the Liability account type and should be used where appropriate.


Income accounts represent money that was earned by you or your business.


Expense accounts represent money that was spent by you or your business.

CoinReporting includes the account type Cost of Goods Sold which is a specialized versions of the Expense account type and is often used to represent variable costs of goods sold, as opposed to general business expenses.


Equity accounts represent money invested in or drawn from a business.


CoinReporting automatically creates a pair of special accounts called trading accounts for each foreign currency you have represented by an account.

These trading accounts are used automatically in the background by CoinReporting to track trading activity between currencies.