PNL Calculation for Each Transaction Type in cryptact for Tax Filing (Canada)

This page provides guidance on the methods for calculating profits and losses for each type of transaction.

How we handle the trading fees on cryptact:

  • Trading fee at the exchanges (PNL: capital gain/loss) : based on the opinion of tax accountants, cryptact processes transaction fees based on the fee currency. For more details, please refer to the help page 3. Fee handling.
  • Trading fee at margin trade (PNL: capital gain/loss): when cryptact can recognize fees from the transaction history, it records them as increases or decreases in the fee currency and includes them in the gain and loss calculation.
  • Transaction fee at DEX: based on our interpretation, cryptact records the fee as: Cost basis x Number of coins used for fees = Capital loss

Transactions types on cryptact:

Please refer to the following for each transaction type and their respective processing methods on the cryptact transaction page.

No.

Transaction type

How it is processed

PnL event?

Examples

1 BUY  Buy at the price *1 on the transaction date and time × - Buy crypto on exchanges/Peer to peer trading
2 SELL Sell at the price *1 on the transaction date and time Capital gain/loss

Sell crypto on exchanges/Peer to peer trading

3
BONUS

Profit recognized at the price *1 on the transaction date and time 

 



Income Airdrop
Income Campaign reward/Referral reward
Capital gain Profits from cryptocurrency-denominated margin trading
4
LOSS
Loss recorded at the cost basis*2

 
Income (negative) -
Capital loss

Losses from cryptocurrency-denominated margin trading

5 REDUCE

Decrease the quantity*3 without affecting the PNL

× -

The exchange shut down, but the tax office doesn't allow it to be reported as a loss or cost/expense.

6 STAKING Profit recognized at the price*1 on the transaction date and time Income Staking reward
7 LENDING Profit recognized at the price*1 on the transaction date and time Income Receive lending interests
8
LEND Locks the coins in the stated quantity ×  - 

Lend coins to friends or exchanges 

9
RECOVER Unlocks the coins in the stated quantity × - Receive back the coins that were lent to lending services
10 MINING Profit recognized at the price*1 on the transaction date and time Income Receive a mining reward
11 SENDFEE

The following processes are applied to coins used for fees:

1. Generate a transaction to sell the coins used for fees at market value and record the profit or loss as a Capital Gain/Loss.

2. Record the number of coins used for fees × market value as an Expense.

1. Capital gain/loss

 

2. Expense

 

Pay a transfer fee
12 PAY Sell at the price*1 on the transaction date and time Capital gain/loss Pay for goods/services in  cryptocurrency
13 BORROW

Incorporate the price as of the recorded date into the cost basis*2

× - Borrow coins
14 RETURN

PNL is calculated as (price at the time of borrowing - cost basis) x quantity

Capital gain/loss

Return the borrowed coins
15 EXPENSE

The following processes are applied to coins used for fees:

1. Generate a transaction to sell the coins used for fees at market value and record the profit or loss as a Capital Gain/Loss.

2. Record the number of coins used for fees × market value as an Expense.

1. Capital gain/loss

 

2. Expense

Exchange shutdown, software purchases, etc. (subject to the tax office to confirm those can be treated as expenses)
16 LEVELUP Add to the cost basis *2 of NFTs  × - Level-up in STEPN
17 CASH Loss in fiat currency - Expense Purchasing goods/services with fiat currency

*1 Price: the market value obtained from cryptact (for supported coins only) / the transaction price provided by the exchange / the price entered by the user.

*2 Cost basis: The cost basis is determined based on the selected calculation method.

*3 Quantity: Volume of the coin.

 

Transactions types on the cryptact (DeFi):

Please refer the below help page for more details.

DeFi: PNL calculation for each transaction type (Canada)

What is cryptact’s DeFi Feature? (Reference: How to use DeFi functions)

When you add a wallet address to cryptact, the transaction history within that wallet address is reflected in cryptact for the networks that cryptact supports. The system automatically identifies and reflects the transactions it can recognize, and automatically calculates profits and losses. However, transactions that cannot be automatically classified or non-DeFi deposit/withdrawal transactions are categorized as "Unclassified," requiring manual identification.