Hi,
in the crypto-space airdrops are a common ting. That is when someone (more or less) gifts you crypto assets. This can be, e.g., part of a promotion.
Regarding the accounting of this there are two things to consider:
- Someone just gifted you money. I'd account that as some sort of income.
- You might need to pay taxes on this gift.
Tax-wise an airdrop itself isn't taxed. It is assumed that I "bought" the asset at a cost basis of 0. If I sell the asset later, everything I'll receive in exchange for the airdropped asset counts as gain—as I can't deduct any costs. In other words: The taxation of the airdrop is delayed to the time when I sell the airdropped asset. And at that point the airdrop gets fully taxed at the current asset price.
If you want to account only for (1) or (2) this is fairly easy. But I'd like to account for both. This is where my problems come:
- For tax-purposes I need to post a transaction leg with a cost basis of 0
- For income tracking purposes I need to post a transaction with a cost basis of whatever the airdropped asset is priced at the moment of the airdrop
It seems that accounting for the actual income and for tax purposes is mutually exclusive:
option "booking_method" "FIFO"
option "operating_currency" "USD"
plugin "beancount.plugins.auto_accounts"
2021-01-07 * "Coinbase Earn" "Coinbase Earn Airdrop $XLM" #airdrop
utc: "2021-01-07T05:34:19Z"
Assets:Crypto:CEX:Coinbase:XLM 29.1631914 XLM { 0 USD } @ 0.28 USD; @@ 8.17 USD
Income:Crypto:Airdrops
This example creates this transaction context:
** Transaction Id --------------------------------
Hash:01ed10463f3915cbc81b0999886944ab
Location: Test.Airdrop.bean:6
** Balances before transaction --------------------------------
Assets:Crypto:CEX:Coinbase:XLM
Income:Crypto:Airdrops
** Unbooked Transaction --------------------------------
2021-01-07 * "Coinbase Earn" "Coinbase Earn Airdrop $XLM" #airdrop
utc: "2021-01-07T05:34:19Z"
Assets:Crypto:CEX:Coinbase:XLM 29.1631914 XLM {0 USD} @ 0.28 USD
Income:Crypto:Airdrops
** Transaction --------------------------------
2021-01-07 * "Coinbase Earn" "Coinbase Earn Airdrop $XLM" #airdrop
utc: "2021-01-07T05:34:19Z"
Assets:Crypto:CEX:Coinbase:XLM 29.1631914 XLM {0.00 USD, 2021-01-07} @ 0.28 USD ; 0.0000000 USD
** Residual and Tolerances --------------------------------
Tolerances: XLM=5E-8
** Balances after transaction --------------------------------
* Assets:Crypto:CEX:Coinbase:XLM 29.1631914 XLM {0 USD, 2021-01-07}
Income:Crypto:Airdrops
Logically, there isn't any income. Is there any way to post a lot with a cost basis of 0 while accounting for the factual income of 8.17 USD?
I guess, I want to eat the cake and have it (accounting wise). Is that possible?