Understand transaction types, how to label them, and how to address warnings.
What do all the transaction types stand for?
There are four main types of transactions in Divly. These are deposits, withdrawals, trades, and transfers.
A deposit occurs when you receive crypto to your wallet. By default, Divly assumes you have purchased crypto at the daily market rate when a deposit occurs. This is unless the deposit is labeled or matched with a withdrawal to form a transfer.
A withdrawal occurs when you send crypto out of your wallet. By default, Divly assumes you have sold your crypto at the daily market rate when a withdrawal occurs. This is unless the withdrawal is labeled or matched with a deposit to form a transfer.
A trade occurs when you exchange one cryptocurrency for another cryptocurrency or fiat currency. In most countries a trade is considered to be a taxable event even when you trade crypto for crypto. You can change this in Settings if needed.
A transfer represents a transaction between two of your wallets. For example when sending crypto from an exchange to a hardware wallet or vice versa. Transfers are created by matching a withdrawal from one wallet to a deposit in another wallet. You can read more about transfers and the matching process here.
Transfers typically do not represent taxable events as the wallets are owned by the same person.
What are labels and when should I use them?
Every deposit and withdrawal has the option to be tagged with a label. Labels are used to ensure that the transaction is correctly represented and taxed accordingly. You can easily set labels in Divly in the Transaction tab to properly calculate your taxes.
Divly provides a system to label withdrawals and deposits. Every label has its own specific rule set which when used is applied to a transaction. Not only is it nice to have a better labeled overview of your transactions, but it also ensures that the taxes are calculated correctly. The rules applied depend on the country you specified as your country. Divly provides tax guides for supported countries where the effect of each label is explained in detail.
In some cases labels may be automatically set when importing your transactions. This depends on the specific integration with the wallet or exchange. In other cases you will need to set a label manually in Divly. You can either do this one transaction at a time or batch edit many at once if it helps you save time.
It is important to label transactions correctly to ensure you pay the correct amount in taxes.
Do I need to label all transactions?
Not all deposits and withdrawals need to be labeled. Sometimes a withdrawal should just be a withdrawal, and a deposit should just be a deposit. Trades and transfers are never labeled.
Divly handles unlabeled transactions accordingly:
A deposit is assumed to be a purchase of cryptocurrency using the price in local currency on the day of the deposit. This affects the cost basis.
A withdrawal is assumed to be a sale of cryptocurrency using the price in local currency on the day of the withdrawal. In many countries this is a taxable event.
If the default assumption is correct, then you can leave them unlabeled. However, if a label suits the transaction more appropriately then please use that label.
In some cases the deposit or withdrawal should represent one side of a transfer between your own wallets. You can read more about transfers and how to ensure they are correctly matched in the FAQ.
How are trading fees accounted for?
Divly ensures that trading fees are included in your capital gains tax calculations. Accounting for trading fees can help reduce the taxes you pay. This is one of the benefits of automating your crypto taxes.
Handling trading fees can be tedious and time consuming. However, Divly automates the complexity assuming the fees are included in the transaction data. Divly handles fees differently when the fee is in a Fiat currency (USD, EUR, SEK etc) versus a cryptocurrency (BTC, ETH, ADA etc). We will explain the methodologies and differences below.
Assume you purchased 1 Bitcoin for $1000 with a trading fee of $20. In this case Divly would add the trading fee to the purchase price of the Bitcoin. Effectively you will have purchased 1 Bitcoin for $1020 (cost basis). If you sell 1 Bitcoin for $1100, you will have made $80 profit ($1100 - $1020) assuming no trading fee when selling.
Assume from the previous example that you sold 1 Bitcoin for $2000, however now you paid a trading fee of $30 to sell it. In this case Divly will subtract the trading fee from the sale price so it equals $1970 ($2000 - $30). Your total profit will be $950 ($1970 - $1020). By accounting for both of the fees you have decreased your taxable profit by a total of $50.
Assume instead that you sold 1 Bitcoin for 10 Ether with a trading fee of $30. In this case we would have to avoid double counting the fee and need to choose whether the fee should reduce the sale price of the Bitcoin, or increase the purchase price of the Ether. Currently Divly will do the latter and increase the purchase price of the 10 Ether. Assuming 10 Ether is equal to $2000 on the time of the trade, the following will happen:
1 Bitcoin will incur a profit of $980 ($2000 - $1020).
10 Ether will have a cost basis of $2030 ($2000 + $30).
In many scenarios, a trading fee may be denominated in a cryptocurrency such as BTC, USDT, or ETH. This adds some extra complexity to the equation as using crypto to pay for an exchange service is in many countries seen as a taxable event.
In this case Divly will first calculate the capital gains on the crypto associated with the fee. Divly will then apply the same value in local currency to the fee calculations explained above. Let's take a look at the previous example but assume the fee was paid with 0.1 LTC worth $30 on the date of the trade. We will assume that you previously purchased the 0.1 LTC for $15.
1 Bitcoin will incur a profit of $980 ($2000 - $1020).
10 Ether will have a cost basis of $2030 ($2000 + $30).
0.1 LTC will have a profit of $15 ($30 - $15).
How does Divly match transfers between different wallets?
In cases when you send crypto from one wallet to another it is important that the withdrawal and corresponding deposit match as a transfer. Transferring crypto between your own accounts is not a taxable event and you should be able to do this without worrying about profits or losses. Divly has built an algorithm that matches transfers automatically for you.
Practically speaking, a transfer boils down to matching a withdrawal from one wallet to a deposit in another wallet. Since the wallets don't know if you own the other wallet, all the matching of transfers needs to be handled by you (or your tax system). If left unmatched they can create incorrect tax consequences. As such it is important that you check all unlabeled withdrawals and deposits to ensure that they should not in fact be a transfer.
Fortunately, Divly has built an algorithm that automates this process and matches transfers for you. The logic follows:
Check if a withdrawal and a deposit has the same transaction hash. If true, match the transfer. If false, go to step 2.
Check if a withdrawal and deposit sent/received the same cryptocurrency. If true, go to step 3.
Check that the withdrawal did not occur after the deposit (you must send the crypto before you receive it). If true, go to step 4.
Check that the withdrawal amount is not less than the deposit amount (you cant receive more than you sent). If true, go to step 5.
Check that the deposit happened within 12 hours of the withdrawal. If true, go to step 6..
Check that the withdrawal amount is max 1.2 times the amount of the deposit. If true, match the transfer.
The algorithm is not bulletproof but does a great job matching the majority of transfers. There are scenarios that could cause a transfer to remain unmatched or incorrectly matched. These include:
The user forgot to import one side of the transfer (either the deposit or the withdrawal).
Transactions were imported using different time zone data.
The transaction took over 12 hours to be processed by the network (included in a block).
The user sends several transfers within 12 hours with values within 20% causing the wrong withdrawals and deposits to match.
It is always worth checking that all transfers have been matched. If not, try to understand why it did not match from the information above so you can fix it.
How do I fix “Missing price information”?
This issue means Divly can’t find the price for a specific cryptocurrency on the day of your transaction. To avoid paying the wrong amount in taxes, Divly needs your help in providing the correct market price expressed in your local fiat currency. This is done by editing the “Value in local currency” of the transaction found in Divly.
Divly automatically fetches cryptocurrency prices and converts them to your base currency using different pricing API’s. This means you don’t need to worry about finding the correct conversion rate for every transaction! This is a large time saver and a great reason to use a crypto tax automation tool in the first place.
For most transactions Divly will be able to find the prices automatically and perform all the necessary tax calculations. We use a crypto pricing API that covers thousands of cryptocurrencies and FX API’s that ensure we can convert them to your base currency.
However, in some situations Divly won’t be able to find a price. This can occur when:
The cryptocurrency is not covered by our pricing API. Usually this occurs when the crypto is very small or new to the market.
The cryptocurrency is covered by our pricing API, but not for the specific date of the transaction. This is often the case if you traded prior to 2014.
When you see a transaction with “Missing price information” it is best to resolve it to avoid paying the wrong amount in taxes. Divly will otherwise assume the crypto is worth 0 USD on the date of the transaction.
When there is a missing price, Divly flags this as an issue under the Transactions tab. You will also see issue notifications on the Tax Report tab.
Follow these steps to resolve the issue(s):
Go to the Transaction tab and use the filter button to see all the transactions with issues.
For each affected transaction, research what the cryptocurrency was worth in your local base currency when the transaction occurred. You may first need to figure out what it was worth in a larger cryptocurrency (Bitcoin or Ethereum) and then convert that to your base currency.
In Divly, edit the “Value in local currency” associated with the transaction so it correctly matches what the entire transaction should be worth in your base currency. Once you click “Save”, Divly will recalculate your taxes.
Repeat for all transactions that are flagged with “Missing price information”.
How do I fix “Missing purchase history”?
This issue means Divly can’t find a historical record of where you purchased the cryptocurrency you are currently selling or withdrawing. To avoid potentially paying too much in taxes, Divly needs your help understanding what price you paid for the cryptocurrency to calculate the correct cost basis.
Divly automatically calculates the cost basis of every cryptocurrency you have transacted with. The cost basis is the same thing as the price you paid to purchase your cryptocurrency (including associated trading fees). The cost basis is used when calculating your taxable gains:
Taxable gains = Sale price - cost basis - transaction fee.
The larger the cost basis, the lower your taxable gains. Unless provided, Divly will assume you purchased the cryptocurrency for 0 USD. Consequently, it is important to include all historical transactions to ensure the cost basis is correct and you don’t overpay in taxes!
Firstly, ensure that you have imported ALL of your transactions into Divly. We use your historical transaction data to calculate your cost basis. There are several methods you can use to import your transactions. Assuming your transactions are all included, then this issue should be resolved.
If you happen to have lost transaction records and don’t know what to do then follow these steps:
If you know WHEN you acquired the crypto, then add a deposit manually in Divly for that crypto on the correct date. Instructions can be found here. Divly will calculate the value for the crypto on the date provided. Only do this if you can provide supporting evidence that your local tax authorities will accept.
If you have no recollection of when the crypto was acquired or for what price, then don't do anything. It is safest to assume the purchase price was 0 USD even if that means you might pay more in taxes.
How do I manually add transactions in Divly?
You can always add singular transactions in Divly directly in the interface. This is often the most practical way to import a handful of transactions, especially if your wallet is not integrated. You can easily add new transactions from the Transactions page in Divly.
You can always add Deposits, Withdrawals, and Trades manually in Divly. However you cannot manually add transfers as they are matched automatically by Divly.
Make sure you have a wallet to add the manual transactions to. This can either be an existing wallet with imported data, or a manual wallet you added without any prior transactions. New wallets are added from the Wallet page in Divly.
Below is a summary of the fields available when adding a manual transaction:
|Deposited Amount||Withdrawal Amount||Bought Amount|
|Transaction Time||Transaction Time||Wallet|
|Label (Optional)||Label (Optional)||Date|
|Fee (Optional - added soon)|