Skip to the article

Transactions and movements

Why a transaction holds several movements, why gas is always a fee, and which category the ledger shows for a transaction.

Where to find it:your-organization.conta.financeTransactions

The ledger has two levels. A transactionOne on-chain transaction or one exchange operation. It holds one or more movements. is one on-chain transaction or one exchange operation. A movementOne asset going into or out of one of your accounts. A transaction has one movement per account and asset. is one asset going into or out of one of your accounts. Each row of the Transactions page is a transaction, and you expand it to see its movements.

One movement for each account and asset

A transaction holds one movement for each of your accounts it touched and each asset that moved for that account, in each direction. The movement is what the books read: it has its own amount, value and categoryThe accounting label of a movement, such as Purchase or Fee. Cost basis reads it..

Two examples:

  • A payment to a supplier. One account sends USDC. The transaction holds the USDC movement out, plus the gas movement.
  • A transfer between two of your accounts. Account A sends ETH to account B. Conta Finance sees it from both sides, so the transaction holds two movements: A out and B in, plus the gas that A paid. The Account column of the expanded row tells the two sides apart.

The transfer between your own accounts is still one transaction. The two movements cancel out: your accounts form one portfolio, so the asset moves and no gain is realized. See Cost basis methods.

On an exchange, one order can be filled in many pieces. The row adds them up and shows a mark with the number of pieces.

Gas is a movement with the category Fee

The gas a transaction pays is a movement of its own: the platform's coin leaving the account that paid. Its category is always Fee, and you cannot change it.

The reason is cost basis. Cost basis reads the category of each movement to decide what counts. If a gas movement had another category, for example Internal transferAn asset moving between two of your accounts. It is not a disposal, so no lot is consumed., it could leave your books. So:

  • you cannot select a gas movement in the table;
  • a rule cannot give gas a category other than Fee;
  • a gas movement cannot join a transaction linkA group of movements from different transactions that share one category, set by hand on all of them at once..

You can still give gas a subcategoryA second, free label for your own analysis. It changes no figure., with a rule. A subcategory changes no figure, so it is safe, and it is useful to tell one kind of gas from another.

The category the row shows

A transaction has no category of its own. The row shows the category of one movement, chosen this way:

  1. Gas is set aside, unless the transaction holds only gas. A transaction that is only gas shows Fee.
  2. Among the movements that remain, the ones with a category come first.
  3. Of those, the movement with the highest value speaks for the row. With no price, the largest amount does.

So a token purchase that paid gas shows the category of the purchase, not Fee. If the token movement has no category, the row shows Unclassified, even though the gas has one. The row always shows one category, never "mixed". Hold the pointer on the pill to see which rule set it.

You can also label a whole transaction from its details window. That label is for reading the ledger only. The movements keep their own categories, and cost basis still reads those. See Categorize movements.

An example: a swap that pays gas

Your account Treasury swaps 1 000 USDC for 0.4 ETH on a blockchain, and pays 0.002 ETH of gas. A rule categorizes the two legs of the swap as Swap.

AccountDirTokenAmountCategory
TreasuryoutUSDC−1 000Swap
TreasuryinETH+0.4Swap
TreasuryfeeETH−0.002Fee

The row of this transaction reads:

ColumnShows
Inflow+0.4 ETH
Outflow−1 000 USDC
Fees−0.002 ETH
Net valueThe value of the inflow, minus the outflow, minus the fees
CategorySwap

The category is Swap because gas is set aside. The two legs carry the same category, so either one gives Swap.

For cost basis, the USDC movement is a disposalAn asset leaving your portfolio, by a sale, a swap or a payment. It consumes lots. and the ETH movement is a new lotOne acquisition of an asset: how much came in, when, and at what cost.. Each movement counts on its own, by its own category.