Comments (14)
Can you type:
rp2_us --version
and report what it says? If RP2 is the latest version then perhaps the problem is the opposite and the example files are old: can you download the latest version of https://github.com/eprbell/rp2/tree/main/input/crypto_example.ods and https://github.com/eprbell/rp2/tree/main/config/crypto_example.config and try again?I ran it manually and it works ok (with latest versions of rp2, crypto_example.ods and crypto_example.config):
rp2_us -m fifo -o output -p crypto_example_ crypto_example.config crypto_example.ods INFO: Country: us INFO: Accounting Method: fifo INFO: Configuration file: crypto_example.config INFO: Input file: crypto_example.ods INFO: Processing BTC INFO: Processing ETH INFO: Generating output for plugin 'rp2.plugin.report.rp2_full_report' INFO: Plugin 'rp2.plugin.report.rp2_full_report' output: <snip> INFO: Generating output for plugin 'rp2.plugin.report.us.tax_report_us' INFO: Plugin 'rp2.plugin.report.us.tax_report_us' output: <snip> INFO: Log file: ./log/rp2_2022_02_26_07_22_31_149180.log INFO: Generated output directory: output INFO: Done
Thank you. It worked. I think my files were old.
from rp2.
Thanks, yeah definitely helps. I'll study more of the examples and will probably ask more questions here. Thanks a lot.
from rp2.
Thanks for all the good questions and feedback: this will be useful for others too.
Here's my understanding on the topic of theft, displacement and rug pulls:
- crypto theft/displacement is not tax deductible (therefore it doesn't need a new transaction type in RP2)
- rug pulls are treated as a normal loss (so again, no need for a new transaction type in RP2)
Here are articles that discuss this topic:
- https://www.blog.cointracking.info/do-you-pay-taxes-stolen-hacked-lost-crypto
- https://cryptotrader.tax/blog/reporting-stolen-or-lost-cryptocurrency-for-tax-purposes
From the perspective of RP2 the only question is: is a new transaction type required? I think the answer is no (existing ones are sufficient to capture these scenarios), but I'm happy to stand corrected if anybody has a better understanding.
from rp2.
No, you're asking good questions and it's good to discuss publicly so that others can read too. Also thanks for the link.
from rp2.
Thanks for reporting! This is most likely because you're not using the latest version of RP2 (v0.9.16 or better). I recently added to RP2 the unique_id field, which captures transaction hash and I updated crypto_example with this new field. As a result the example no longer works with previous versions of RP2. Documentation always points to top-of-tree version of files, so this kind of issues can happen, especially during heavy development.
So in a nutshell: update to the latest version of RP2 and let me know if the problem disappears or if it's still there.
from rp2.
Thanks for reporting! This is most likely because you're not using the latest version of RP2 (v0.9.16 or better). I recently added to RP2 the unique_id field, which captures transaction hash and I updated crypto_example with this new field. As a result the example no longer works with previous versions of RP2. Documentation always points to top-of-tree version of files, so this kind of issues can happen, especially during heavy development.
So in a nutshell: update to the latest version of RP2 and let me know if the problem disappears or if it's still there.
Yes I actually used the latest one for it.
❯ rp2_us -v
RP2 0.9.16 (https://pypi.org/project/rp2/)
from rp2.
Can you type: rp2_us --version
and report what it says? If RP2 is the latest version then perhaps the problem is the opposite and the example files are old: can you download the latest version of https://github.com/eprbell/rp2/tree/main/input/crypto_example.ods and https://github.com/eprbell/rp2/tree/main/config/crypto_example.config and try again?
I ran it manually and it works ok (with latest versions of rp2, crypto_example.ods and crypto_example.config):
rp2_us -m fifo -o output -p crypto_example_ crypto_example.config crypto_example.ods
INFO: Country: us
INFO: Accounting Method: fifo
INFO: Configuration file: crypto_example.config
INFO: Input file: crypto_example.ods
INFO: Processing BTC
INFO: Processing ETH
INFO: Generating output for plugin 'rp2.plugin.report.rp2_full_report'
INFO: Plugin 'rp2.plugin.report.rp2_full_report' output: <snip>
INFO: Generating output for plugin 'rp2.plugin.report.us.tax_report_us'
INFO: Plugin 'rp2.plugin.report.us.tax_report_us' output: <snip>
INFO: Log file: ./log/rp2_2022_02_26_07_22_31_149180.log
INFO: Generated output directory: output
INFO: Done
from rp2.
Sorry I have some questions regarding the example file. I don't know if I should open a new issue or I should just describe it here.
In the generated full report file, BTC In-Out, row 24, 26, 27, why is it a taxable event? Is it a taxable event to Bob?
Same goes with row 16, 17, why is it a taxable event? Is it a taxable event to Bob?
from rp2.
No worries, here is fine, since it's still related to crypto_example.
Row 16 and 17 are a gift and a donation by Bob, which are taxable events (see fields highlighted in yellow for the fiat amount of the event). They are reported in the Donations and Gifts tab in the tax_report_us.ods output file.
Rows 24, 26, 27 refer to the fees for moving funds from one account to another (again, see highlighted field). Technically these fees are similar to very small sales and they do affect the in/out relationships among lots, so RP2 captures them in the full report and groups them together in the "Investment Expenses" tab in the tax_report_us.ods output file. I'm not 100% sure if transfer fees are taxable or not (see also this relevant FAQ: you can either err on the side of safety and treat them as sales or double check with a tax professional (show them the "Investment Expenses" tab in tax_report_us.ods).
Hope this helps.
from rp2.
How do we handle crypto loss? i.e, from scam or from forgetting keys?
from rp2.
Gotcha, that makes sense. Thanks.
from rp2.
I looked at the "Investment Expenses". I don't understand how transfer fee is considered as gain. When I see this data:
- BTC In-Out row 24 on Full Report
- Investment Expenses row 8 on FIFO Tax Report
The way I see it is that I paid fee to the Blockchain network for 0.01. I don't own this 0.01 anymore. Could you explain why this is taxed? Sorry I'm not an expert in tax related matters.
I.e, say I am a dropshipper. I buy a doll from A for $100 with shipping fee to my warehouse for $1, then someone buys my doll for $110. I send that person this doll for $1 shipping fee. Doesn't that mean that my gain is
$110 - ($100 + $1 + $1) = $8
But in the crypto Investment Expenses above, it seems that I am actually gaining the transfer fee?
from rp2.
The transfer fee affects the in/out relationship (because it's crypto that is coming out of your stash) and as such they need to be part of tax calculation, so RP2 captures them in their own "Investment expense" category. However RP2 doesn't tell users what is taxed/not taxed on any given year: it performs lot fractioning and in/out lot pairing (according to the selected accounting method), and then it groups all lot fractions in categories (corresponding to each sheet in the tax_report_us output). How to treat each category from the tax perspective is the user's responsibility: if you're not 100% sure what to do, speaking with a tax professional is a good idea.
In the specific case of the transfer fee I heard two interpretations:
a) it's a non-taxable investment expense;
b) it's crypto that is coming out of your stash, so it's similar to a sale and therefore it needs to be taxed.
If anybody has a definitive answer to this quesiton (with a source) I can add it to the FAQ.
If you use a) then you can ignore the investment expense tab altogether, otherwise you have to use it to file taxes.
To summarize, RP2 does all the calculations and groups all possible taxable events, but it doesn't tell you what actually needs to be filed or what forms to use (that can change from year to year).
Hope this helps.
from rp2.
The transfer fee affects the in/out relationship (because it's crypto that is coming out of your stash) and as such they need to be part of tax calculation, so RP2 captures them in their own "Investment expense" category. However RP2 doesn't tell users what is taxed/not taxed on any given year: it performs lot fractioning and in/out lot pairing (according to the selected accounting method), and then it groups all lot fractions in categories (corresponding to each sheet in the tax_report_us output). How to treat each category from the tax perspective is the user's responsibility: if you're not 100% sure what to do, speaking with a tax professional is a good idea.
In the specific case of the transfer fee I heard two interpretations: a) it's a non-taxable investment expense; b) it's crypto that is coming out of your stash, so it's similar to a sale and therefore it needs to be taxed. If anybody has a definitive answer to this quesiton (with a source) I can add it to the FAQ.
If you use a) then you can ignore the investment expense tab altogether, otherwise you have to use it to file taxes.
To summarize, RP2 does all the calculations and groups all possible taxable events, but it doesn't tell you what actually needs to be filed or what forms to use (that can change from year to year).
Hope this helps.
Oh I see, okay I think I got it confused. That makes sense. Thanks.
As for the investment expense. This seems to be the source.
https://www.blog.cointracking.info/is-transferring-bitcoin-between-wallets-taxable
It seems that it is indeed an investment expense.
from rp2.
Related Issues (20)
- Short term vs. long term gains HOT 5
- Parameter 'crypto_fee' has zero value HOT 3
- Open Positions affected by "from date" HOT 1
- Spending from Exchange with zero balance HOT 14
- option to specify columns in config.ini by letter HOT 1
- Non-zero balances when zero is expected HOT 2
- Few minor suggestions HOT 1
- Uncertain, but considering making a python wallet reader HOT 1
- Per wallet/exchange Specific Identification (FIFO, LIFO, etc...) Resolution HOT 27
- Exception when executing HOT 3
- Question about "Open Positions by Asset" report HOT 2
- Crypto fee in OUT table HOT 24
- FIFO and exchange/wallet cost-basis calculation HOT 5
- RP2 process runs after "DONE" HOT 5
- Investment Expenses can no longer be used for Deductions HOT 10
- Call for GUI coders: create an intuitive GUI to drive RP2 and DaLI HOT 3
- I can def help HOT 2
- Using Pionex data to Rp2 using dali isn't working. __crypto_sent = unknown HOT 4
- Error total in-transaction crypto value < total taxable crypto value HOT 1
- [Request] Expose settings for what constitutes a taxable event HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rp2.