BittyTax / BittyTax

Crypto-currency tax calculator with support for all popular wallets, exchanges, explorers and migration from other crypto tax platforms
GNU Affero General Public License v3.0
416 stars 111 forks source link

improving treatment of spouse/charity receiving gifts to avoid (potentially large) tax filing errors #214

Open aleqx opened 2 years ago

aleqx commented 2 years ago

I've been meaning to write this for a very long time but never got around to it. This is about receiving (not sending) gifts as a spouse or charity. This kind of gifts also transfer the cost basis, not just the value. It's actually extremely important and can (and usually does!) lead to tax filing errors. Most tax software treat this incorrectly (e.g. Koinly) which assume cost basis = spot value, which is wrong. This in turn can create, say, 0 gains when the spouse receiving the gift subsequently sells it (e.g. sells it on the same day), when in fact there could be large gains, which then go unreported as it was incorrectly computed. I usually hate all forms of fear mongering, but theoretically HMRC could deem this to be errors resulting from "carelessness" or "negligence" which carries a greater penalty than errors resulting despite "reasonable care" (e.g. me trusting Koinly blindly vs hiring an accountant to confirm the Koinly output before filing).

I was thinking of ways to allow the users to deal with this at least more safely. It's actually not as easy to do as it sounds, as it's complicated by our lovely UK tax rules, and also because BT does not distinguish between a gift received from spouse and other gifts received. In fact, both types of gifts may be problematic (see below). Here are the required manual steps to do it correctly:

The above applies to both a spouse or charity receiving a gift.

In fact, even the treatment of normal gifts made between non-spouses is not 100% clear to me as normally those have cost=spot value at time it's received for the receiver, but the cost does change depending how/if the person making the gift trades the same asset in the next 30 days. It gets even better for companies making gifts to charity, because the bed and breakfast rules for companies are different than for individuals (it's 7 days, not 30, and it's buys matching sales not sales matching buys).

In my experience since I started with crypto tax in the UK, most folks totally ignore the cost basis and don't manually enter a cost value for gifts received, be it from spouse or not. Some popular software don't even have any special treatment for spouse gifts in UK (e.g. Koinly doesn't seem to care, despite me raising this issue with them several times for 1+ years). This can, and usually does lead, to large tax errors, because such gifts are often made at a great time distance since they were acquired.

A few ways spring to mind to improve it for BittyTax users:

  1. make the README clearer about this aspect and detail the above processes that both the person making the gift and the one receiving it must undertake for correct tax computation.

  2. the best fix would be add a Gift-Received-Spouse transaction type to distinguish it from Gift-Received (*). This allows BT to give an Error if the Buy Value is not populated, since that is required, and thus would enforce correct tax computation. At the same time, BT could include a link in the error message, pointing to the README section describing the procedure that the two parties must follow. Note that even if the gift is made on the same day as it was acquired, which normally means the cost is equal to the spot value, ultimately the actual cost can still change within the next 30 days if the spouse making the gift makes further disposals within 30 days, yay!

  3. as a temporary workaround until , if the word "spouse" is detected in the Note field, then raise a warning just like the above Error, to alert the user.

  4. the same warning could be raised for all Gift-Received that lack a Buy Value. However, there are plenty of legitimate gifts that are not from spouses, which could create too many warnings (I have tons of them from cashback/promos/referrals/etc). To mitigate this, the user could add some predefined string to the Note field to prevent the warnings.

nanonano commented 2 years ago

Thanks for raising this, I think adding the new transaction type is the best option.

There's also special handling required for gifts to/from connected people, see https://github.com/BittyTax/BittyTax/issues/198.

nanonano commented 2 years ago

It gets even better for companies making gifts to charity, because the bed and breakfast rules for companies are different than for individuals (it's 7 days, not 30, and it's buys matching sales not sales matching buys).

It's actually 10 days for companies.

aleqx commented 2 years ago

10 days indeed, of course ... my mind is playing tricks it seems (maybe remnants from my last year business tax nightmare)

aleqx commented 2 years ago

I forgot to say - there is something else BT can do, and that is to warn the sender of the gift when they use Gift-Spouse, the warning message telling them:

All this can be done quickly as it involves no changes to any of the tax code, and can help a lot because the person making the gift can correctly inform the person receiving it.

I'll look into all this myself later this year and may push a PR from my fork

aleqx commented 2 years ago

There's also special handling required for gifts to/from connected people, see #198.

As nasty as that is (and it really is), it has no bearing on gifts to spouses or charity as far as I can read in there. Spouses and charity are still a separate category with the same rules as before.