How to use DeFi (Decentralized Finance) functions

This page explains how to use our DeFi (Decentralized Finance) functions. (The DeFi feature is available for Advanced Plan and above. For pricing plans, please click here.)

Started Support for OpenSea for NFT Transactions in DeFi Functionality (as of August 18, 2023)

  • In cases where multiple NFTs are purchased in a single transaction, as the information regarding the prices of each NFT is not available, it will be necessary for you to manually input the missing details after integrating with the DeFi functionality. Following the integration with the DeFi feature, please use the convert function to input the prices of each NFT by yourself for the respective transaction.
  • Regarding the history of NFT exchange, there are no clear rules for calculating profit and losses, so automatic support is not provided.

Others

  • Curently order book based decentralized exchanges like dYdX,  Aave(borrow) and NFT related transactions are not fully supported. Please select "Fee Only" as a transaction type to exclude the transaction and then add transactions by custom file manually.
  • Also, as of 16th Mar 2023, we have temporarily suspended support for ERC1155 at Avalanche.
  • We've identified an issue where certain Avalanche transaction history information is not available through the API. Our development team is working on a solution, but we can't provide a specific update schedule. If urgent, consider manually editing the transaction history using convert function or excluding it in the DeFi overview and adding necessary details using a custom file.


1. What are DeFi functions

When you add a wallet address, within cryptact's supported network, it will sync the transaction history.  The transactions that the system can identify will be automatically recognized, their details will be reflected, and profit and loss calculations will be performed automatically. In contrast, transactions that cannot be automatically identified, and non-DeFi deposit and withdrawal transactions, will be categorized as "unclasiffied," and manual identification will be required.

Please note:

This feature is available for the Advanced Plan and above.
It's important to mention that this does not provide 100% automatic support for your DeFi transactions. For transactions that cannot be automatically identified, you will need to manually select the transaction type. However, this should significantly reduce the workload of identifying transactions from deposit and withdrawal records and documenting them in custom files.

 

1.1  Cryptact's supported networks

  • BNB Smart Chain
  • Ethereum
  • Polygon
  • Avalanche
  • Fantom
  • Optimism
  • Arbitrum
  • Oasys
  • Astar
  • Polygon zkEVM

  • Base

* We also plan to gradually introduce support for other networks.

*We have started to support EVM wallet for Astar.

 

1.2  DeFi coverage test

Check your wallet from here

You can assess the actual level of manual intervention required before purchasing a plan, ensuring confirmation of the auto-recognition rate for DeFi transactions.

 

2.  Add your wallet address

Let's log in to cryptact and try out the functionality in practice!

First, please add your wallet address that you use for your DeFi. Once this is done, cryptact automatically fetches all historical transactions associated with it. For more details on how to register your wallet address, please refer to here.

 


3.  What are "Unclassified" DeFi transactions

The system analyzes the transactions associated with the wallet address and attempts to identify the associated smart contracts. The system then attempts to determine the background for each transaction. If it can recognize the transaction type, it updates the transaction detail and run the PNL calculation for it automatically. If the system cannot recognize their transaction types or if they are not DeFi, they will be temporarily marked as "Unclassified".

To review "unclassified" transactions, you can go to the "DeFi" page and use the filtering function to select "Unclassified" → "All." 

スクリーンショット 2023-10-11 103557.png

There are 3 types of unclassified transactions:

  • Transfer・・unclassified transfers are deposits/withdrawals in your wallets that are not determined automatically for their transaction types.

    Examples are:

    • Deposits and withdrawals from the exchange to the wallet
    • ICO Participation from the wallet
    • Received cryptocurrencies that are unrelated to Defi through airdrops, hard forks, etc
    • Buying and selling of cryptocurrency through wallets between individuals
  • Unknown transaction type・・unknown transactions are DeFi transactions for which the system could not identify the transaction types. The system refers to the smart contracts associated with the transactions and attempts to identify their transaction types. If the system cannot determine the transaction type, the transaction is flagged as "Unclassified - Unknown transaction type". 
  • Others・・others are irregular transactions or transactions that can't be reflected in the PNL calculation properly due to incorrect edits made in "Unclassified - Transfer" and "Unclassified - Unknown transaction type".

    Examples are:

    • Even though the ASSET MOVEMENTS column only shows "withdrawal" history, "Swap" ( Exchange of one cryptocurrency to another) was selected
    • Even though the ASSET MOVEMENTS column only shows "deposit" history, "withdrawal" related transaction type was selected
    • Even though there is no "Add Liquidity" transaction, "Remove Liquidity" was selected
"Unclassified" transactions are excluded from the PNL calculation. To include them, you will need to manually specify the transaction types.

*We're enhancing DeFi transaction recognition by expanding our transaction type dictionary and syncronizing wallet addresses, which might change "unclassified" transactions. If you've chosen transaction types for those, the system uses your selections for pnl calculation.

 

4.  How to address "Unclassified" DeFi transactions

4-1.  How to address "Unclassified transfers"

Because the system cannot automatically determine their transaction types, you need to manually select the transaction types to resolve the "Unclassified" status.

Let's start by moving to the assistant screen.  *Details about the "assistant" feature can be found here.

スクリーンショット 2023-08-03 093850.png

Once you are on "assistant" screen, click "Classify" on "Let's handle your DeFi transactions" section.

スクリーンショット 2023-10-11 105922.png

You will automatically see only "Unclassified - Transafer" transactions on "DeFi" page.

スクリーンショット 2023-10-11 110238.png

Additional Note: You can also manually select "Unclassified" → "Transfer" from the filtering options, without navigating to the "assistant" screen, to display only the "Unclassfified - Trasnfer" transactions. 

スクリーンショット 2023-10-11 110415.png

For each transfer, select the reason by clicking the appropriate button (the below table gives the outlines for each option).

スクリーンショット 2023-10-11 112551.png

Options for Deposits

Option Outline

Impact to

PNL Calculation

Self A deposit from your other wallet or from the exchange

No impact to PNL. Does not show on the ledger

Receive A cryptocurrency receipt as the result of a purchase (an exchange), or a gift from an individual Bought at market value
Bonus Other than above. A cryptocurrency receipt as the result of staking reward, airdrop, or other types of rewards Considered as a profit at market value
Fee Only Reason for the deposit is unknown, or ICO reward

Excluded from PNL calculation.

 

※We currently do not handle ICO reward. Please select "Fee Only" and add the ICO reward manually as custom trades. 

Options for Withdrawals

Option Outline

Impact to

PNL Calculation

Self A withdrawal to your other wallet or to the exchange

・No impact to PNL. Does not show on the ledger

・If there is a fee associated with the withdrawal, the fee portion alone is reflected as  transfer fee (種別/Type:SENDFEE)

Pay A cryptocurrency withdrawal as the result of a sale (asset exchange), or a gift to an individual Sold at market value
Loss A cryptocurrency withdrawal which qualify as a loss or an expense

Considered as a loss (sold for 0 JPY)

Fee Only Reason for the withdrawal is unknown, or ICO reward

・Excluded from PNL calculation

・If there is a fee associated with the withdrawal, the fee portion alone is reflected(種別/Type:DEFIFEE)

 

※We currently do not handle ICO reward. Please select "Fee Only" and add the ICO reward manually as custom trades. 

 

After selecting the reason for the transfers, click "Sync all". Your selection will be reflected in the system, and the status is updated from "Unclassified" to "Classified".

スクリーンショット 2023-10-11 111139.png


4-2.  How to address "Unclassified - Unknown transactions"

Since the system cannot automatically determine their transaction types, you need to manually select the transaction types to resolve the "Unclassified" status.

Let's start by moving to the assistant screen.  *Details about the "assistant" feature can be found here.

スクリーンショット 2023-08-03 093850.png

Once you are on "assistant" screen, click "Classify" on "Let's handle your DeFi transactions" section.

スクリーンショット 2023-10-11 111741.png

Only "Unclassified - Unkwon transaction type" transactions will be displayed.

スクリーンショット 2023-10-11 111840.png

Additional Note: You can also manually select "Unclassified" → "Unknown transaction type" from the filtering options, without navigating to the "assistant" screen, to display only the "Unclassfified - Unknown transaction type" transactions. 

スクリーンショット 2023-10-11 112015.png

For each transaction, select the transaction type from the pull-down menu (the below table gives the outlines for each option).

You can refer to the information in the link in the DEFI TRANSACTION column and the DETAIL column to make your selection.

スクリーンショット 2023-10-11 112818.png

Available Transaction Type Options

Transaction Type Outline

Impact to

PNL Calculation

Bonus A deposit as the result of an airdrop or other type of reward

・Considered as a profit at market value

・If there is a withdrawal with the same transaction hash, the withdrawal is excluded from the PNL calculation

Loss A withdrawal which qualifies as a loss or an expense

Considered as a loss (sold for 0 JPY)

Pay

A payment for the purchase of services or goods

Sold at market value
Fee Only

The reason for the deposit/withdrawal is unknown and want to only include the fee portion in the PNL calculation

・Excluded from the PNL calculation

・The fee portion alone is reflected as DEFIFEE (always as a deductable)

Fee Only

・exclude the transaction because you are not sure what it is(the fee is reflected as a transfer fee)

・Transfer within your own accounts

・Bridges(tranfser coins to be used on another chain/receive back coins from another chains)

 

・The original transaction is excluded

・The fee is reflected as a transfer fee (DEFIFEE)

Swap/NFT trade

Exchange of one cryptocurrency to another

* To select this type, the deposit/withdrawal history must be present in the ASSET MOVEMENTS column.

Reflected as an exchange of one cryptocurrency to another

* The transaction history will show as either Buy or Sell

* If you purchase two NFTs at the same time in a single transaction, since the purchase price of each NFT is not listed on the chain, one NFT will be "BUY" in the transaction list, reflecting the price of two NFTs, and the other NFT will be "bonus" at 0 price. Please correct the price of each transaction by yourself to the price per NFT, and correct the "Bonus" to "Buy".

ICO reward

 

※We currently do not handle ICO reward. Please select "Fee Only" and add the ICO reward manually as custom trades. 

Harvest Received an interest-like income from the locked coins Considered as a profit at market value
Add Liquidity Deposited a coin pair into a liquidity pool

No impact to PNL at the time of deposit

* PNL calculation method differs depending on your setting. For more details, please refer to here (currently only in Japanese).

Remove Liquidity Withdrew the coin pair from the liquidity pool

・For each coin, determine the type based on the difference in the # of coins deposited and withdrawn

deposited < withdrawn => considered as a profit at market value (BONUS)

deposited > withdrawn => considered as a loss (Sold for 0 JPY)

* PNL calculation method differs depending on your setting. For more details, please refer to here (currently only in Japanese).

Enter Staking Deposited coins for staking

・No impact to PNL at the time of deposit

* If you have a confirmed staking reward from your previously staked coins, the reward is considered a profit (will show as STAKING)

Leave Staking Withdrew coins from staking pool

・Withdrawn - Deposited => considered a staking reward (STAKING) or a profit at market value

・If the staked coin and the reward coin differ, only consider the staking reward as a profit (STAKING)

Enter LP Staking Deposited LP tokens for staking ・No impact to PNL at the time of deposit
Leave LP Staking Withdrew LP tokens from staking pool

・Withdrawn - Deposited => needs to be recognized as a staking reward

* We currently do not handle staking rewards for LP tokens. Please manually upload them as custom trades separately.

Enter Lending Started lending coins

No impact to PNL at the time of starting lending

Leave Lending Received back the loaned coins

Returned - Loaned => considered a lending interest (LENDING) or a profit at market value

Borrow Borrowed coins

・No impact to PNL at the time of borrowing

・Position in borrowed coins increases

Return Return the borrowed coins

Borrowed amount - (Book value of the coin * quantity) => considered as a loss

Approve The fee (gas fee) that incurs when a transaction is approved and sent The fee portion is considered a loss (will show as DEFFEE)
Wrap  

The fee portion alone is reflected in the PNL calculation

* For details on how wrapped tokens are handled, please refer to here (currently only in Japanese).

Unwrap  

The fee portion alone is reflected in the PNL calculation

* For details on how wrapped tokens are handled, please refer to here (currently only in Japanese).

Bridge  

※We currently do not handle bridge trades. Please select "Fee Only" and add the bridge trades manually as custom trades. 

 

After selecting the transaction types, click "Sync all". Your selection will be reflected in the system, and the status is updated from "Unclassified" to "Classified".

スクリーンショット 2023-10-11 113140.png

 

4-3.  How to address "Unclassified - Other"

Since the system cannot automatically determine their transaction types, you need to manually select the transaction types to resolve the "Unclassified" status.

Let's start by moving to the assistant screen.  *Details about the "assistant" feature can be found here.

スクリーンショット 2023-10-11 173043.png

 

Click on "Classify" on "Let's handle your DeFi transactions".

スクリーンショット 2023-10-11 173205.png

 

Only "Unclassified - Others" transactions will be displayed.

スクリーンショット 2023-10-11 173345.png

 

Additional Note: You can also manually select "Unclassified" → "Others" from the filtering options, without navigating to the "assistant" screen, to display only the "Unclassfified - Others" transactions. 

スクリーンショット 2023-10-11 173458.png

 

For each transaction, select the transaction type from the pull-down menu. You can refer to the information in the link in the DEFI TRANSACTION column and the DETAIL column to make your selection.

スクリーンショット 2023-10-11 173746.png

 

After selecting the transaction types, click "Sync all". Your selection will be reflected in the system, and the status is updated from "Unclassified" to "Classified".

スクリーンショット 2023-10-11 173914.png

 


5.How to edit "Classified" DeFi transactions

Please take the following steps if you wish to edit DeFi transactions that are already in "Classified" status. Transactions that were automatically recognized by the system and transactions that you manually recognized (manually selected the transaction types) can both be edited using the following steps.

 

1. Select the DeFi transaction that you wish to edit. Click "Classified". You can filter transactions based on whether they were automatically recognized by the system or manually recognized (manually selected the transaction types).

スクリーンショット 2023-08-02 165451.png

2. Click the "Edit" button.

defi-basic16.png

3. Select the transaction type.

defi-basic17.png

4. Click "Sync All".

defi-basic18.png

5. The newly selected transaction type is reflected in the system.

defi-basic19.png


 

6.  Check "Transactions"

Once all the "unclassified" transactions are resolved in the "DeFi Transactions" page,  proceed to review all transaction history, including DeFi transactions, on the "Transactions" page. If you see the guidance "Troubleshoot and optimize" as shown in the image below, it indicates either ongoing "DeFi unclassified" or "invalid transactions".

Transactions categorized as "Unclassified" on DeFi page,  or "Invalid" on transaction page are not automatically included in profit and loss calculations (due to insufficient information). In cryptocurrency profit and loss calculations, they are excluded. Therefore, it's essential to resolve these categorizations.

スクリーンショット 2023-10-11 174838.png

Disclaimer

As stated in the Terms of Use, Cryptact is not responsible for the calculated pnl. In addition, the information provided here is only a tentative description and does not take into account individual circumstances. If you have any questions about taxation, please contact your tax advisor.