Annual Statement

Hi, I downloaded the annual statement from the financial reports. I asked customer support for help figuring out what information to include on my income tax return in Italy, but their answers weren’t helpful.

Is there anyone here who has already filed their tax return and can help me?

Thank you

You could try to use ChatGPT and upload the relevant data (annual statement), including income tax return form, and have ChatGPT assist you in filling out the form.

Might even add in further links / context with respect Italian income tax form guidance notes to ensure accuracy in form filling as much as possible.

Example prompt:

"You are a specialist tax accountant in Italy. Can you please assist me in filling in the attached Income Tax Form using the attached annual statement data?

Feel free to consult official Italian government tax form guidance notes that may be publicly available online"

That’s probably what I would do, if you’re ok with sharing personal data with an AI agent.

PS: I don’t represent T212. Just a normal T212 user.

I have explored that route, and it leads into murky waters. The LLMs look very confident when you seek advice, only for them to apologise when you check the facts and show them they are wrong.

First and foremost, I am not a tax advisor, and I have no formal training in this area, so what I am about to explain might be wrong or incomplete. Another quick warning: I usually deal exclusively with accumulating ETFs, which are highly tax-efficient in Italy. I will touch on that later, but here is what I have learned and implemented based on the Agenzia delle Entrate’s documentation.

Let’s start with the types of taxation. The main one is the tax on financial income, or Imposta Sostitutiva. This applies to the profits generated by your investments, which are categorised into capital income, like dividends and interest, and miscellaneous income, like capital gains from selling an asset at a profit. The standard rate is 26% for most financial instruments, including shares, corporate bonds, ETCs, and the majority of ETFs. However, a reduced rate of 12.5% applies to Italian and whitelisted foreign government bonds, as well as the portion of funds or ETFs invested in those specific bonds.

Then there is the wealth tax. Italy levies an annual tax on the market value of your financial assets, taking one of two forms depending on where the assets are held. If you use an Italian intermediary, you pay the Imposta di Bollo, a 0.2% annual stamp duty. If your assets are held abroad, you are subject to the IVAFE, the Imposta sul Valore delle AttivitĆ  Finanziarie all’Estero. This is also calculated at 0.2% per year on the market value of your investments and must be declared and paid through your annual tax return. Finally, there is the Tobin Tax, which is a financial transaction tax levied specifically on the purchase of shares issued by highly capitalised Italian companies and their related derivatives. You pay 0.10% for transactions on regulated markets and 0.20% for over-the-counter trades.

When calculating taxable capital gains, Italy uses the Last-In, First-Out, or LIFO, system. When you sell a fraction of an accumulated position, the tax authority assumes you are offloading the most recently purchased shares first, making the price you paid for those specific shares your cost basis. To calculate the gain or loss, you identify the quantity sold and the execution price, then work backwards chronologically from your most recent purchase to match that quantity. You multiply the quantity sold by the purchase price of that latest batch to get your cost basis, and subtract this from the total sale proceeds to determine your gain.

For a practical example, imagine you build a position in an ETF over two months. In January, you buy 100 units at €50 each, costing €5,000. In February, you buy another 100 units at €60 each, costing €6,000. In March, the price rises to €70, and you decide to sell 50 units. Under LIFO, those 50 units are assumed to come from your February purchase. Your cost basis is 50 units multiplied by €60, which is €3,000. Your sale proceeds are 50 units multiplied by €70, which is €3,500. Your taxable capital gain is therefore €500. You then apply the standard 26% Imposta Sostitutiva to that €500 gain, resulting in a tax liability of €130.

Moving on to filling out the Modello 730. If you do not have much else to declare, I suggest using the ā€œPrecompilatoā€ available on the Agenzia delle Entrate website. For your investments, you will need to complete Quadro M, Quadro T, and Quadro W. Keep in mind that the declaration is always compulsory, even if you lost money or had no earnings, because the Imposta di Bollo or the IVAFE are always due.

The reason I invest almost exclusively in accumulating ETFs is that you do not pay taxes on capital gains until you actually sell the ETF. This is brilliant because your investments compound using the money that would have otherwise gone to taxes if you had invested in dividend-paying stocks or crypto. Speaking of crypto, it faces much higher taxation for assets bought from 2026 onwards.

The bottom line is that I have not described everything, as the finer details heavily depend on what you hold, where you hold it, and with whom. Once you get the hang of it, calculating taxes is not excessively difficult, but making mistakes is incredibly easy. Depending on the size of your investments, these errors could cost you dearly. If your investments generate tax liabilities of around €1,000 or more, I strongly recommend seeking the help of a tax advisor. Once you have a solid grasp of the subject and feel confident, you can try doing it yourself. Also, remember that tax rates change over time, so you must keep yourself updated.

Just one final important reminder before I wrap this up: when it comes time to actually pay the taxes you owe, whether it is your capital gains tax or the IVAFE, you will need to settle the payment using an F24 form, which you can typically process through your bank’s online portal.

I hope this helps clear things up a bit.

Hi, and thank you so much for the thorough and detailed explanation.

I’d like to clarify a few key points to make sure I don’t make any mistakes:

  1. IVAFE and Tobin Tax: Since Trading212 is a foreign broker (self-reporting system), I know I’ll have to calculate and pay the IVAFE on my own. As for the Tobin Tax on Italian and foreign stocks (where applicable), does Trading212 handle this directly by withholding it at the time of purchase, or do I also need to calculate that in the financial sections?

  2. Manual LIFO Management: Can you confirm that this is the correct approach? When I sell, I take the proceeds from the sale and compare them to the tax basis of the most recently purchased securities (working backward until I cover the sold shares). The difference will result in a capital gain or loss. This means that for partial sales, I’ll have to ā€œtrackā€ and deduct the lots already sold for future calculations. Doing this manually is truly a nightmare.

  3. Reliability of the Trading212 Report: If I understand correctly, the annual statement issued by the broker cannot be used directly for Italian tax purposes. Upon reviewing it, I noticed that it uses the weighted average price method for sales, which does not correspond to our local LIFO method. Customer support assures me that the calculations are correct, but I imagine they’re referring to standard foreign tax regulations. Furthermore, the report’s value includes cash, for which the average annual balance would need to be calculated to determine whether it exceeds the €5,000 threshold (stamp tax/IVAFE on cash)—a detail that’s missing from the report. On that note: in the event of an audit by the Italian Revenue Agency, how do you prove the average cash balance in a foreign account if the broker does not provide a specific account statement?

  4. Sections of the Precompilato Form: I usually use the Precompilato form. I was thinking of integrating the data by filling out Section W (formerly RW for monitoring and IVAFE) and the sections for miscellaneous income/capital gains (I assume you meant sections RT and RM, or the corresponding sections in the current Section W). Can you confirm that these are the areas I need to cover?

  5. Python Script: To address the complexity of the LIFO method, I’m writing a Python script to process the CSV file of transactions in order to automate batch tracking and the calculation of capital gains. Do you have any advice on specific libraries to use (e.g., Pandas) or on which ā€œspecial casesā€ (e.g., stock splits, EUR/USD exchange rates on the transaction date) to implement to avoid calculation errors?

Thanks again for your time—your help is invaluable!

Hi @Gae!

Let’s address your requests in order.

Regarding the IVAFE and Tobin Tax, foreign brokers like Trading212 generally act as withholding agents for the Italian Financial Transaction Tax, commonly known as the Tobin Tax. This fee is automatically deducted at the time of execution for applicable Italian shares, which are defined as those with a market capitalisation exceeding €500 million, and their related derivatives. The Tobin Tax is treated strictly as a transaction cost that increases your cost basis, meaning you do not need to calculate or declare it separately in your financial sections. For foreign equities, local transaction taxes are similarly withheld at source. Regarding IVAFE, your assessment is correct. Because you operate under the regime dichiarativo, this wealth tax is not withheld by the broker. You are entirely responsible for its calculation and payment whenever you discuss or finalise your trading tax obligations.

On the manual LIFO management, your interpretation of the Last In, First Out method is entirely accurate. When a sale is executed, the proceeds must be matched against the tax basis of the most recently acquired lots of that specific security. The differential determines your capital gain or loss. It is critical that these consumed lots are systematically tracked and deducted from your active inventory to prevent them from being reused in subsequent calculations. Managing this pipeline manually, particularly when dealing with partial liquidations and recurring monthly purchases, is mathematically demanding and highly susceptible to human error.

For the reliability of the Trading212 Report and Cash Balances, the standard annual statements provided by foreign brokers are structurally incompatible with Italian tax legislation. They inherently rely on the weighted average cost method rather than LIFO, and they fail to apply the official daily Bank of Italy exchange rates for transactions in foreign currencies. Regarding the average cash balance, calculating the giacenza media is an absolute requirement to determine if the €5,000 threshold has been exceeded, which would trigger the €34.20 flat IVAFE on liquidity. Because the broker will not supply an official certification of this metric, you must derive it mathematically from the raw ledger data. Should the Agenzia delle Entrate initiate an audit, your defence will rely exclusively on providing the raw CSV exports and the verifiable mathematical proof of your daily balances. Note that I understand CAAFs tend not to accept your calculation even if you provide a declaration of responsibility. That is because, I have been told, clerks must have specific training on this kind of calculation which, of course, is a cost for the CAAF itself. As they hire temporary workers for the tax season, they will not pay for the training. This is the main reason why I rolled up my sleeves and did the work on my own. If you ask a service to do the calculations, and your tax burden is low, the fees are often multiple times the taxes you actually owe. So, I have learned how to do it and taken the risk. I created an application that uses Streamlit to handle all the calculations and reporting. It also writes a final report detailing the methodology and all calculations, including examples. That would be my line of defence for my calculations should I receive an inspection.

The Modello 730 Precompilato has been significantly updated for recent tax years. As you said, you will need to integrate your data by completing Quadro W, which replaces the former Quadro RW, to manage fiscal monitoring and the calculation of IVAFE. Additionally, Quadro M has replaced Quadro RM for capital income, such as your dividends and interest, while Quadro T replaces Quadro RT to account for miscellaneous income, specifically the capital gains and losses derived from your LIFO calculations.

I agree that Python is an excellent choice to process the CSV transaction ledgers and automate the LIFO tracking, and Pandas is unequivocally the superior library. Its architecture is explicitly designed for vectorised operations and time-series data, making it the ideal engine to power a Streamlit application (as I did), particularly when parsing specific ledgers like an ā€˜Investments:log’ and syncing data via Google Sheets APIs. Your Pandas logic must target the precise column headers of your dataset, ensuring it extracts the exact ā€˜quantity’ for the LIFO queue rather than generic share terms. Every foreign currency transaction must be dynamically converted using the official Bank of Italy exchange rate for the exact settlement date. Corporate actions, notably stock splits and spin-offs, dictate that your script must retroactively adjust the quantities and cost bases of the historical lots residing within the queue. Finally, ensure the logic cleanly isolates gross dividends and any applied foreign withholding taxes, as these require separate classification for Quadro M.

I know I’m repeating myself, but remember: I am not a pro: I 'm just reporting what I do for my own personal investments.

Good luck with your declaration!