Custom File for any other trades

For unsupported exchanges, you can still upload trade history by preparing for a custom file. 

Please read the following instructions and create an Excel(.xlsx) or CSV (.csv) file, and upload it in "Custom" box at the upload screen of Cryptact.

【Important notes】

Transfers between your own addresses and accounts do not need to be included in your ledger. This is because these transfers do not impact your overall cryptocurrency balance (excluding fees).

■Deposit & Withdrawal History for Cryptocurrency


Table of contents

1. The format of a custom file

 1.1 Sample files

 1.2 File headers

 1.3 The format

2. Custom file examples - case by case

    1. Trades at unsupported exchanges, dealing with hard forks, send crypto to the third party for free
    2. Joined ICO
    3. Purchase goods or service by cryptocurrencies
    4. Mining
    5. Transaction fee
    6. Unsupported coins
    7. Missing prices
    8. Received coins by bonus, campaign, or AirDrop
    9. Lend coin, Interests from coin lending, and retrieve the coin
    10. Staking reward
    11. Derivative Transactions Focusing on Increase or Decrease in Margin
    12. Borrowing/Returning between individuals
    13. LOSS
    14. Give a tip / Decrease the position
    15. Expense paid in Fiat currency
    16. SWAP
    17. Fees resulting from DeFi
    18. NFT
    19. Redenomination
    20. Liquidity

1. The format of a custom file

1.1 Sample files

Please check the following files which contains all samples.

If you download a CSV version and modify it Excel, the format for timestamps and the encoding of the file is likely to change. This usually results in the file no longer being able to be uploaded to our service. If you plan to work in a spreadsheet suite like Excel, please download Excel versions of the sample files.

1.2 File headers

A B C D E F G H I J
Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment

 

1.3 The format

・Except "Comment", they are all mandatory field to fill in.
(※1)When base currency is Supported Coins, if  thie price field is empty and counter currency is fiat, crypact will look up the price instead if we have the one.
(※2)Please do not use 「'」「"」「\」as these symbols cause errors.
Name Description
Timestamp Trade datetime in YYYY/MM/DD HH:mm:ss(Ex.:2016/12/23 12:23:34)
Action Please select action types from here.
Source data source name (exchange or shop name).
Base Base currency
Please choose fromSupported Coins
Volume Amount of change of base currency (in absolute value)
Price

Base currency price in Counter currency. (※1)

Counter Counter currency
Please choose from the Supported Coins
Fee Fee for the trade. Please input 0 if there was no fee for the trdes.
FeeCcy Fee currency
Please choose from the Supported coins
Comment Optional. Please use this field for your own purpose as Cryptact doesn't use this.(※2).

 

2. Custom file examples - case by case

2.1.Trades at unsuported exchanges, send crypto to the third party for free, and exchanges

Example 1: Buy 2BTC and pay total of 5 million JPY. The commission was 0 yen.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any BTC 2 2500000 JPY 0 JPY optional

 

Example 2: Buy 2BTC at the market price. The commission was 0 yen.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any BTC 2 Blank *1 JPY 0 JPY optional
*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.

 

Example 3: Buy ETHBTC ( i.e. pay BTC to get ETH) at an unsupported exchange

You bought 2 ETH and paid BTC when the price of ETH was 0.5 BTC. The fee was 0.01 ETH.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any ETH 2 0.5 BTC 0.01 ETH optional

 

Example 4: Gave coins away for free to a thirdparty

Giving coins away for free to a third-party

 

Example 5: Currency exchange

I exchanged 149.0964 USDT for 413.75 XRP, and the fee was 0 JPY.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
exchange datetime BUY any XRP 413.75

0.360353836858006(149.0964/413.75)*1

USDT 0 JPY

optional

*1 USDT/XPR(149.0964/413.75)=0.360353836858006

 

Example: You joined ICO of XP by sending ETH. You sent 10ETH and got 500XP.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any XP 500 0.02 *1 ETH 0 JPY optional

*1 ETH/XP(10/500)=0.02

If the rewards are distributed in multiple installments, please input them as a single transaction rather than listing them separately when the total number of rewards is determined at the time of participation.  

 

Example 1: You paid 0.01 BTC to get a product worth 5,000 JPY. Given the price of the product and the amount of BTC paid, the rate of BTC is 1BTC=500,000JPY.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime when you bought the product PAY any BTC 0.01 500000*1 JPY 0 JPY*2 optional

*1 5,000/0.01 = 500,000
*2 Please make fee currency and counter currency to be the same.

 

Example 2: You paid 0.01BTC for a service whose price is quoted only in BTC.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime when you bought the product PAY any BTC 0.01 Blank *1 JPY 0 JPY*2 optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*2 Please make fee currency and counter currency to be the same.

 

Example 3: Cryptocurrency XYZ was not in the supported coin list. You paid 5 XYZ for a product. You know 1 XYZ was 300 JPY at that time.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime when you bought the product PAY any USER-XYZ *1 5 300 *2 JPY 0 JPY*3

optional

*1 Please use the custom coin (or dummy symbol)
*2 Please find the rate by yourself.
*3 Please make fee currency and counter currency to be the same.
 

 

2.4.Mining

Specify mining cost to the Fee column. 

Example 1: Mined a coin whose price is available in Cryptact. You mined ETH and got 1 ETH. The cost was 10 USD.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime when you mined MINING any ETH 1 blank*1 JPY 10 USD

optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.

 

Example 2: Mined a coin whose price is NOT available in cryptact. You mined LSK and got 10LSK. The LSK price at that time was 1,000JPY per LSK. The cost was 1 USD.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime when you mined MINING any LS 10 1000 JPY 1 USD

optional

 

 

By default, fee is used only to reduce the position. If you want fee to be included into loss, please specify it in the settings screen.
 

Example: You spent 0.001 BTC for transfer.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Transfer datetime SENDFEE any BTC 0.0001 blank*1  JPY*2 0*2 JPY *2

optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*2 We don't use Counter, Fee, FeeCcy columns. Please follow the example above.
 

 

・Coins that do not appear when searching for cryptact supported coins are referred to as "unsupported coins." If you want to represent "unsupported coins" in a custom file, please create a "custom coin" using the following method: (How to create a custom coin)

・Please always include custom coins in the base currency. Since price data cannot be obtained for custom coins, if they are included in counter currencies or fees, they will be categorized as invalid transactions due to missing price.

Example 1: You exchanged an unsupported coin with a supported coin.

You purchased 10 ETH when 1 ETH was 0.1 LLL. You paid 1 LLL and 0.01 ETH fee for the trade. LLL was not supported by Cryptact at the time so this trade became invalid.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime SELL any USER-LLL*1 1 10*2 ETH 0.01 ETH

optional

*1 Please always include custom coins in the base currency. 
*2 ETH/USER-LLL (10/1)=10
 

 

Example 2: You exchanged an unsupported coin with another unsupported coin

・Since custom coins can only be listed under the base currency, it is necessary to record two transactions (selling LLL and purchasing NNN) through the fiat currency, requiring two lines of entry.

・You will need to research the price of either coin yourself.

You purchased 10 NNN for 2 LLL. The fee was 5 JPY. Both LLL and NNN were not supported by Cryptact, so the trade became invalid. You looked up the price by yourself and found that 1NNN = 10 JPY at the time.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime SELL any USER-LLL*1 2 50*2 JPY 0 JPY

optional

*1 Please always include custom coins in the base currency. 
*2 1NNN=10JPY. 1LLL=50JPY. 
 
Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any USER-NNN*1 10 10*2 JPY 5 JPY

optional

*1 Please always include custom coins in the base currency. 
*2 1NNN=10JPY. 1LLL=50JPY. 
 

 

Example 3: FeeCcy (fee currency) is not supported

・Since custom coins can only be listed under the base currency, it is necessary to record two transactions (selling LLL and purchasing NNN) through the fiat currency, requiring two lines of entry.

・You will need to research the price of either coin yourself.

You purchased 2 ETH in BTC when the price of ETH was 0.01 BTC. You paid 1 LLL for the fee. LLL was not supported by Cryptact at the time, so the trade became invalid. 1 LLL was 50 JPY at the time.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any ETH 2 0.01 BTC 50 JPY

optional

 

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime SELL any USER-LLL 1 50*1 JPY 0 JPY

optional

*1 You need to look up the price by yourself.

 

Example 4: You received a bonus in an unsupported coin

You participated in Exchange's Chat Campaign and received 0.1 LLL bonus reward. LLL was not supported by Cryptact at the time and the trade became invalid. You looked up the price by youself and found that 1 LLL = 10 JPY.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
timestamp of when you received BONUS any USER-LLL 0.1 10*1 JPY 0 JPY

optional

*1 You need to look up the price by yourself.

 

2.7. Missing prices

For example, if you search for "ELON", and if it is supported by Cryptact but Cryptact is missing prices for it, it would display "No price data available" for trade history.

__________2023-05-17_111815.png

Please always include "Missing Price" coins under the [Base Currency].
Since price data cannot be obtained for "Missing Price" coins, if they are listed under counter currency or fee, they will be categorized as invalid transaction due to missing prices.

Example 1: you exchanged two supported coins and one of them is missing prices

You bought 10 ETH for 1 ELON when the price of ETH was 0.1 ELON. You paid 0.01 ETH for the fee. Cryptact did not have the price for ELON at the time, so the trade became invalid.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime SELL any ELON*1 1 10*2 ETH 0.01 ETH

optional

*1 Please always include price missing coins in the base currency. 
*2 10/1=10

 

Example 2: You exchanged two supported coins and both are missing prices

・"Missing price" coins can only be used under the base currency, so please list them as two transactions (selling ELON and purchasing NNN) through the fiat currency.
・Please research the price of either coin yourself.

You bought 10 NNN for 2 ELON and the fee was 5 JPY. Cryptact did not have the prices for ELON and NNN at the time, so the trade became invalid. You looked up the price by yourself and found that 1 NNN = 10 JPY at the time.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime SELL any ELON*1 2 50*2 JPY 0 JPY

optional

*1 Please always include price missing coins in the base currency. 
*2
NNN/ELON(10*10)/2=50

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any NNN*1 10 10*2 JPY 5 JPY

optional

*1 Please always include price missing coins in the base currency. 

 

Example 3: Price was missing for FeeCcy (fee currency)

・Since "Missing price" coins can only be used under the base currency, please separate the decrease in fees (using "Missing Price Data" coins) into a separate line.
・Please research the price of at least one of the coins yourself.

You bought 2 ETH in BTC when the price of ETH was 0.01 BTC. The fee was 1 ELON. Cryptact did not have the price for ELON at the time, so the trade became invalid. 1 ELON was 50 JPY at the time.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BUY any ETH 2 0.01 BTC 50 JPY

optional

 

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime SELL any ELON 1 50*1 JPY 0 JPY

optional

*1 Please look up the price by yourself.
 
 

Example 4: you received a bonus in a coin with missing prices

You participated in Exchange's Chat Campaign and received 0.1 ELON bonus reward. Cryptact did not have prices for ELON at the time, so the trade became invalid. You looked up the price by youself and found that 1 ELON = 10 JPY.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BONUS any ELON 0.1 10*1 JPY 0 JPY

optional

*1 Please look up the price by yourself.

 

Example1: You joined an exchange's trade campaign, and received 0.01BTC.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BONUS any BTC 0.01 blank *1 JPY*2 0 JPY

optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*2 We only supports fiat currencies as Counter for this trade type.

 

Example2: You received BTC by hard fork.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
Trade datetime BONUS any BTC 10 0 *1 JPY*2 0 JPY

optional

*1 Please input 0 for price, and fiat currency for counter. However, if the coin has price when you received it, please input the price.
*2 We only supports fiat currencies as Counter for this trade type.

 

Example: You lent 10ETH to an exchange, and received 0.1ETH as an interest, then retrieved 6ETH.

▼Lending ETH
Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime when you lent LEND any*1 ETH 10 blank *2 JPY*3 0 JPY

optional

 
▼Receieving ETH
Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of the interest LENDING any*1 ETH 0.1 blank *2 JPY*3 0 JPY

optional

 
▼Recovering ETH
Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime when you retrieved RECOVER any*1 ETH 6 blank *2 JPY*3 0 JPY

optional

*1 The sources for "Lending (LEND)" and "Recovery (RECOVER)" must always match. Since the lending quantity is tracked separately for each source, there may be errors if the sources are different.

*2 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*3 We only supports fiat currencies as Counter for this trade type.

 

Entering staking and leaving staking do not have any impact on profits or losses, so uploading the history of them is not necessary.

Example: You got two LSK as a reward for staking.  

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of the interest STAKING any LSK 2 blank *1 JPY*2 0 JPY

optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*2 We only supports fiat currencies as Counter for this trade type.

When rewards are distributed separately and cannot be immediately withdrawn, or when they are distributed in multiple installments, it is necessary to recognize the profit at the fair value at the time when the rewards are determined. Therefore, even if the rewards cannot be withdrawn, please enter them as a single transaction if the rewards have been determined. However, since there are no clear guidelines from the National Tax Agency, please confirm with your tax office for final confirmation.

 

2.11.Derivative Transactions Focusing on Increase or Decrease in Margin

The below examples only focus on the increase and decrease of margin.

Example1:Derivative trading results in a profit and a 0.1 increase in BTC, the margin.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of increase BONUS any BTC 0.1 blank *1 JPY*2 0 JPY

optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*2 We only supports fiat currencies as Counter for this trade type.

 

Example2:Derivative trading results in a loss and 0.1 BTC is taken as margin.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of increase LOSS any BTC 0.1 0  *1 JPY*2 0*1 JPY

optional

*1 Please always input 0 for price and fee.
*2 We only supports fiat currencies as Counter for this trade type.

 

2.12.Borrowing/Returning between individuals

As there are no clear guidelines for DeFi, etc., there is a possibility that the content may change in the future.

Example: Borrowing 3BAT at compound, then returned.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of the borrowing BORROW any*1 BAT 3 blank *2 JPY*3 0 JPY

optional

*1 Cryptact uses the info in the Source column to link BORROW and RETURN. Please ensure to match the Source column for BORROW and RETURN. 
*2 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*3 We only supports fiat currencies as Counter for this trade type.
 
 
Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of the returning RETURN same as above *1 BAT 3 blank *2 JPY*3 0 JPY

optional

*1 Cryptact uses the info in the Source column to link BORROW and RETURN. Please ensure to match the Source column for BORROW and RETURN. 
*2 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.
*3 We only supports fiat currencies as Counter for this trade type.

 

2.13. LOSS

Regarding the handling of coins that cannot be withdrawn due to various reasons such as the closure of an exchange or loss, there is no clear guidance from the National Tax Agency. Therefore, whether it is possible to record the loss depends on your own confirmation with the responsible tax office.

Example:The exchange was shut down and unable to retrieve 0.1 BTC holdings. Checking with the tax office in charge and confirmed that allowed to record a loss.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of loss LOSS Any BTC 0.1 blank *1 JPY 0*2 JPY

optional

*1 Please leave the price as blank.
*2 Please note that Fee needs to be populated as 0. If there are fees that can be taken into PNL calculation, you can adjust Volume to include the fee amount if it is in the same currency as BASE or you can enter the fee amount as a separate trade.

 

2.14.Decrease the position without affectig the profit and loss

Example:The exchange was shut down and unable to retrieve 0.1 BTC holdings. Checking with the tax office in charge and confirmed that not allowed to record a loss.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of giving a tip REDUCE Any BTC 0.1 blank *1 JPY 0 JPY

optional

*1 Please leave the price as blank.

 

2.15.Expenses paid in a fiat currency

Example: There is 2,000JPY in expenses that can be included in the cost of mining.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of payment CASH Any JPY*1 0 0 JPY*1 2000*2 JPY *1

optional

*1 Fiat currency only. If you paid in USD or other fiat currency, please fill USD in Base, Counter, and FeeCcy.
*2 Please input the amount in the fiat currency.

 

2.16.SWAP

・Depending on which coin you choose for the Base, the Action will change.
・Please refer to here when the transaction includes cryptact's non supported coins.

Example:Swapped 120 BUSD to 2 BNB

Example1):Base on BNB

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of SWAP BUY*1 Any BNB 2 60*2 BUSD 0 JPY

optional

*1 Since BNB is Base currency, the action type will be BUY.
*2 BUSD/BNB(120/2)=60

 

Example2):Base on BUSD

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of SWAP SELL*1 Any BUSD 120 0.0166666666*2  BUSD 0 JPY

optional

*1 Since BUSD is Base currency, the action type will be SELL.
*2 BNB÷BUSD(2/120)=0.0166666666

 

2.17. Fees resulting from trading DeFi

Example: when you swapped tokens at PancakeSwap, you paid 0.01 BNB as the gas fee.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
datetime of SWAP DEFIFEE Any BNB 0.01

blank*1

JPY*2 0*2 JPY*2

optional

*1 Please blank the price column.

*2 Counter, Fee, FeeCcy columns are not used. Please input these columns as above.

 

2.18.NFT

Please refer to here for details.

 

2.19 Redenomination (change in the currency unit)

There are no clear rules on how to treat currency redenomination. Ultimately, you will need to consult your tax consultant or your local tax office for guidance.

Below are some examples of how to represent currency redonimation on your ledger. In the first example, it is represented as first selling off the original position and buying it back again to open a new position. This results in a PNL.

Example : 1 DREPOLD was redenominated and became 100 DREP

1) When selling DREPOLD and buying DREP (This results in a PNL)

▼ Sell 1 DREPOLD

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
timestamp SELL Any DREPOLD 1

blank*1

JPY 0 JPY

optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.

▼Buy 100 DREP

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
timestamp BUY Any DREP 100*1 

market price *2

JPY 0 JPY

optional

*1 Volume is x100 of the original DRPOLD position.
*2 Please lookup the price by yourself. If Cryptact is pricing DREP at the time, you can leave Price as blank and Cryptact will get the market price automatically.

 

2) The book value of the position remains the same (no PNL is generated.)

▼ Sell 1 DREPOLD

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
timestamp SELL Any DREPOLD 100 

book value*1

JPY 0 JPY

optional

*1 If you blank the price column and input fiat currency in counter column, crypact will look up the price instead if we have the one.

 

▼Buy 100 DREP

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
timestamp SELL Any DREP 100*1

book value *2

JPY 0 JPY

optional

*1 Volume is x100 of the original DRPOLD position.
*2 Please input book value of the coin.

 

2.20.Liquidity

Please refer to here for details.

 

2.21 Income in the fiat currency

Example: Recieved 2000 yen from the exchange.

Timestamp Action Source Base Volume Price Counter Fee FeeCcy Comment
timestamp CASH Any JPY*1 0

0

JPY*2 -2000*3 JPY*2

optional

*1 Fiat currency only. If you paid in JPY or other fiat currency, please fill JPY in Base, Counter, and FeeCcy.
*2 Please input the negative amount in the fiat currency.