Celo.Tax
  • About Celo.Tax
  • Pricing
  • Product Guide
    • Transaction Labelling & Tax Treatment
    • Wallets
    • Settings
      • CSV Format
    • NFTs
  • Blockchain Guide
    • Celo.Tax
      • Wallet Compatibility
      • Supported Transactions
      • Supported Tokens
  • Extras
    • Contact Support
    • Newsletter / Early Access
    • Terms of Service
  • Blog
    • Top 3 Crypto Tax Mistakes
    • Income Tax Guide for Celo
    • Capital Gains Tax Guide for Celo
Powered by GitBook
On this page
  • General Notes on Importing CSVs
  • Celo.Tax CSV Format
  • Importing a CSV into Koinly [last update Dec 8 2021]
  • Koinly Import Errors
  • Tagging Transactions in Koinly after Import
  • Koinly FAQ

Was this helpful?

  1. Product Guide
  2. Settings

CSV Format

PreviousSettingsNextNFTs

Last updated 3 years ago

Was this helpful?

WARNING: Manually importing Celo blockchain transactions into other crypto tax software typically results in certain tokens and transactions (especially involving liquidity pools) being ignored or misrepresented.

  • As a first choice, we recommend excluding/removing all Celo blockchain transactions from your primary software (e.g. TokenTax, Koinly), and using Celo.Tax to separately calculate income and gains for Celo blockchain transactions.

  • If you still prefer to import Celo transactions into your primary software, we provide limited guidance below.

General Notes on Importing CSVs

  • In the "Settings" tab, you can select a CSV format. We currently support:

    • Celo.Tax format - most comprehensive and includes all transactions as well as portfolio and tax summaries. See the section below for further details.

    • Tokentax - csv format details here:

    • Zen Ledger - csv format details here:

    • Koinly - see section below.

    • TurboTax.

  • You can also manually re-format or adjust the Celo.Tax CSV format for other software. Here are some useful guides:

  • Tax rules differ by jurisdiction. Celo.Tax provides no warranty as to the accuracy, format or appropriateness of data presented by the CSV Export tool for your jurisdiction.

Celo.Tax CSV Format

The format of the csv is provided below.

In addition, detailled information is provided at the bottom of the csv file, covering:

  • Gains, interest and rewards - broken down by token and year.

  • Portfolio cost basis and market value - broken down by token.

  • As of February 4th 2022, NFTs are included in the these detailed summaries.

Column Name
Type
Example
Notes

Date

Date

2021-12-20 17:18:26

Sent Amount

Number

Sent Currency

Text

Received Amount

Number

2

Received Currency

Text

cUSD

Fee Amount

Number

0.001

Fee Currency

Text

CELO

Net Worth Currency

Text

EUR

base currency you specify

Price in Net Worth Currency

Number

0.82

price of the sent or received currency in your base currency

Net Worth Amount

Number

1.64

transaction value in the Net Worth Currency

Label

Text

Reward

transaction type

Cost Basis

Number

580.44

Realised Gain

Number

284.44

blockHash

Hexadecimal

0xb4...9c8b

blockNumber

Number

10493622

confirmations

Number

12836

contractAddress

Hexadecimal

0x765...1282a

cumulativeGasUsed

Number

1893937

from

Hexadecimal

0xcc...9e10

gas

Number

900000

gasPrice

Number

500000000

gasUsed

Number

27221

TxHash

Hexadecimal

0x1e...7926

input

Hexadecimal

0xa9...0000

logIndex

Number

39

nonce

Number

73

timeStamp

Number

1640046157

to

Hexadecimal

0x2b...41c0

tokenDecimal

Number

18

tokenName

Text

Celo Dollar

transactionIndex

Number

8

Notes:

  • Celo.Tax csv files only have one token transfer per row.

    • A trade of one token for another will show as two rows, one with a Sent Amount and another with a Received Amount. The gas fee is associated with the Sent Amount.

    • A liquidity pool deposit will typically appear as three rows, a row each for the two tokens deposited, and a third row for the LP token received.

Importing a CSV into Koinly [last update Dec 8 2021]

2. Give your wallet a name, e.g. "Valora wallet" and then click the blue link below to add a custom wallet.

3. Confirm your wallet name and click "Import from file"

4. Browse and select the csv you received via the Celo csv tool

5. You'll now see a number of options for how to tag deposits ("Tag deposits as"). The wallet type will determine your selection. Most commonly, the best option is to leave this blank ("-"), meaning that deposits will not be counted as income, rewards or interest. Rather, deposits will count towards your capital gains cost basis, which is typically appropriate for purchases using crypto and for trades. Note that certain transactions will need to recategorized fixed after you upload the csv. Here are some exceptions where you may want to select differently:

a. If you have a wallet you use to receive payment for goods or services, it may be best to select the "income" option for deposits.

b. If you have a wallet where inbound transactions are primarily rewards or interest, then it may be best to select rewards or interest. Usually though, it is still best to choose ("-") as wallets often have trades.

Note: Celo.Tax is not affiliated with nor has any partnership/affiliate relationship with Koinly.

Koinly Import Errors

Koinly will report an error and ignore the following:

Tagging Transactions in Koinly after Import

* Swaps/trades - Any token swaps (one crypto for another) will be represented by two transactions. One a deposit and the other a withdrawal. This is typically the correct treatment.

* Rewards/interest - If you received any rewards or interest, you will need to go through your transactions and correctly tag them in Koinly as rewards (e.g. claimed from farming on Ubeswap) or interest (e.g. if earned on Moola when withdrawing deposits). It helps to view transactions one wallet at a time on Koinly and filter for Deposits. Celo.Tax is working on an automatic tagging of rewards (check out our Roadmap).

* Liquidity Pool tokens - LP tokens currently will import into Koinly with zero cost basis and be sold at zero price. This means that gains or losses on liquidity pool tokens are not captured. Note that when you enter or exit a liquidity pool, the Celo CSV Tool and Koinly do capture the deposits into the pool (treated as a withdrawal for you) and withdrawals from the pool (treated as a token deposit for you). Note that the Celo.Tax Roadmap includes the provision of a native calculation of capital gains for liquidity pool transactions.

* Airdrops - you can tag any airdrops manually.

Note - you can easily reimport a csv for the same wallet at a later date (including new transactions) and Koinly will only include new transactions - a nice feature.

Koinly FAQ

What tokens can be imported into Koinly?

Koinly supports the import of tokens that are listed on Coingecko. Unsupported tokens are simply ignored by Koinly - and you will have to compute any income or gains separately from the Koinly platform. Two specific examples:

1. Moola mcUSD and Moola mcEUR are not yet on Coingecko or Koinly. By default, the Celo csv Tool replaces mcUSD with cUSD and mcEUR with mcEUR. This will shortly be addressed in the Celo.Tax Roadmap.

2. sCELO (savings Celo) is not supported by Coingecko or Koinly. When you import your csv, you will see that the import of these tokens will fail. You will need to filter all sCELO transactions and - separately to Koinly - calculate income and gains/losses.

How are fees handled by the CELO CSV Tool?

The Celo CSV Tool generates data columns for transaction fees, assuming that fees have been paid in Celo. Koinly generates a separate transaction for each transaction fee (gas). If you prefer not to account for gas fees, you can simply delete the transaction fee columns in your spreadsheet before uploading.

Does Koinly correctly identify transfers between csv upload wallets and other connected wallets/exchanges?

Koinly generally does a good job in matching transfers between wallets you upload via csv and wallets/exchanges you have integrated within Koinly. For example, if you transferred 5 CELO from your Coinbase account to your Valora wallet, Koinly will identify this transfer once you upload your csv with Valora transactions and - in most jurisdictions - this will not be a taxable transaction/transfer. This is typically well handled regardless of what option you select for deposit tagging.

How can I correctly account for liquidity pools in Koinly?

Koinly does not allow for easy import of liquidity pool transactions for unsupported blockchains. The best you can do is probably as follows - shown by means of an example:

* Consider adding liquidity of 1 CELO and 5 cUSD to a liquidity pool on Ubeswap in return for 10 ULP (Ubeswap Liquidity Pool tokens).

* The CELO csv tool will produce three transactions from this, a withdrawal of 1 CELO, a withdrawal of 5 cUSD and a deposit of 10 ULP.

* Once you import the CELO csv into Koinly, you will need to convert each of these two withdrawal transactions into a trade transaction as follows:

* Manually update the withdrawal of 1 CELO into a trade of 1 CELO for 5 NULL tokens. NULL tokens are what Koinly uses for unsupported tokens. You should set the cost basis for these NULL tokens as equal to the value of the 1 CELO.

* Manually update the withdrawal of 5 cUSD into a trade of 5 cUSD for 5 NULL tokens. You should set the cost basis for these NULL tokens as equal to the value of the 5 cUSD.

* Lastly, delete the withdrawal of 10 ULP tokens from Koinly. Now, your 10 ULP tokens are represented as NULL tokens, half swapped for 1 CELO and half swapped for 5 cUSD.

* When you exit the pool, the reverse manual operations are required and you will trade NULL tokens for the underlying tokens.

* Any rewards you receive for holding ULP tokens, you should tag manually as a Reward, once imported into Koinly.

* If you farm ULP tokens, you will see in the Celo CSV download that your ULP tokens are withdrawn. Many tax jurisdictions do not consider staking as a token trade. If this is the case, you can simply delete any staking transactions. However, be sure to mark any rewards earned as rewards in Koinly.

1. Navigate to and click the blue "Add wallet / exchange" button.

* Transactions involving very small amounts, which Koinly recognises as zero. This has been flagged by a .

* Locked Celo - if you locked some Celo, this will appear as a withdrawal. You will typically want to mark this as "Sent to Pool" and vice versa for when you unlock Celo, this will appear as a "Deposit" and you should mark it as "Received from Pool". When you receive tokens back, you may receive make more than you put in originally, so you typically would need to break the transaction into two, with one portion "received from pool" and the remainder marked as a "reward". More details from Koinly support.

* Loans and collateral - Typically any crypto you receive as a loan should already be marked as a deposit and marked as a withdrawal when the loan is repaid - so typically no action required. However, Celo CSV Tool and Koinly will typically also regard provision of collateral as a withdrawal and retrieval of collateral as a deposit - both of which you typically will want to mark as "Sent to pool" and "Received from pool" respectively. If you provide stables as collateral, the tax implications of correcting the labels will be less important than if you are providing volatile cryptos (e.g. Celo) as collateral. Either way, it helps to look at one wallet at a time and filter by "Deposits and Withdrawals". More info on handling loans from Koinly.

TokenTax
Zen Ledger
Cointracker
Cointracking
Bitcoin Tax
https://app.koinly.io/p/wallet...
user on the Koinly forum
here
here