Investments & brokers
Exporting Interactive Brokers data for your Swiss tax return (2025)
Which Interactive Brokers report to use for a Swiss tax return, which to ignore, and how to build the Activity Flex Query XML export step by step.
By PaperTax TeamTax year 20255 minLast checked
On this page · 8 sections
Interactive Brokers gives Swiss residents no electronic tax statement, so the first job every spring is getting your own data out in a usable form. One export does it, and most of the difficulty is knowing which one.
Key takeaways
- The Activity Flex Query, exported as XML, is the file you want. Every Swiss conversion tool expects it.
- Tick the dividend and withholding-tax section, not just positions and trades. Without it the DA-1 claim for foreign withholding tax has nothing to work from.
- IBKR's US tax forms (1042-S, 1099) are not for a Swiss return. They answer a different country's questions, and using them is how people declare the wrong figures.
- Set the date range to 1 January – 31 December. "Last 365 days" will not line up with the tax year, and the statement will be incomplete.
- You build the query once and reuse it every year. Budget about ten minutes the first time.
Which IBKR document, and which to ignore
Public advice contradicts itself, sometimes inside the same thread, from "no reports are needed at all" to broker tax packs being worse than useless. The resolution is simple.
| IBKR document | Use it for a Swiss return? |
|---|---|
| Activity Flex Query (XML) | Yes. This is the one. Complete, structured, and what Swiss conversion tools expect |
| Activity Statement (PDF) | Only for reading. Fine to keep as evidence, useless as an input |
| US "Tax Forms" (1042-S, 1099) | No. These are built for US filing, not Swiss. Using them is how people end up declaring the wrong figures |
| Trade Confirmations | A fallback if the Flex Query fails; laborious |
The US forms are labelled "tax", which is why people use them. A 1042-S reports what the US withheld: a cross-check on your DA-1 total, not a substitute for the securities schedule (WertschriftenverzeichnisWertschriftenverzeichnisSecurities scheduleFRétat des titresITelenco dei titoliThe list of everything you own in securities and bank accounts, with year-end values and the income each produced. It is also where you reclaim the 35% anticipatory tax.Where you see itA main section of the tax return itself, in ZHprivateTax.Open in the glossary → / état des titres).
IBKR's everyday Activity Statement is built for reading, not for tax software. A Flex Query lets you choose which data sections and fields to include and export them as a clean XML file, the format a Swiss tax statement is built from. That is why every tool that turns IBKR data into a Swiss return asks for the Flex Query XML rather than a PDF.
Building the query, step by step
- Open Flex Queries. In the IBKR Client Portal, go to Performance & Reports → Flex Queries.
- Create a new Activity Flex Query. Select the + (create) icon next to Activity Flex Query.
- Name it something you will recognise next year, for example Swiss tax 2025.
- Add these seven sections, and select all fields in each. Do not skip Cash Transactions: it holds the dividends and the withholding tax, which positions and trades alone do not report. Add: Account Information (name and account ID); Trades (every buy and sell, with date, ISIN, quantity, price, currency, commission); Open Positions (what you held at year-end); Cash Transactions (dividends, withholding tax, interest, fees); Cash Report (cash balance per currency); Corporate Actions (splits, mergers, name changes); Transfers (securities or cash moved in or out).
- Set the format to XML (not text or CSV).
- Save the query. You will not have to repeat steps 1–5 next year.
- Run it for the full tax year. Pick Custom Date Range and set it to 1 January to 31 December of the year you are filing.
- Download the XML file. That single file contains everything above.
- 1Build the Activity Flex Query onceAbout ten minutes, in the Client Portal
- 2Select all seven sections, all fieldsAccount, Trades, Open Positions, Cash Transactions, Cash Report, Corporate Actions, Transfers
- 3Set the format to XMLNot text, not CSV
- 4Run it for 1 January – 31 DecemberNot "Last 365 days". The tax year is the period that counts
- 5Convert or type the resultAn eCH-0196 statement your canton imports, or manual entry for a few positions
The first three rows are one-time. Every following year starts at running the query.
When something is missing
- A field or section is absent from the output: edit the saved query and re-tick "select all fields".
- You got something other than XML: the format in step 5 is still set to text or CSV.
- Joint or multiple accounts: run the query for each account and keep each file separately.
- The numbers stop part-way through the year: the date range was left on a rolling window rather than the calendar year.
Common mistakes
- Using the US tax forms. They are built for a US return and will not stand in for the securities schedule.
- Exporting only trades. You need positions, dividends and withholding tax, not just the transaction list.
- Leaving the date range on "Last 365 days". It nearly matches the tax year, which is what makes it dangerous.
- Rebuilding the query every year. It is saved. Run the existing one with a new date range.
- Leaving it until March. Corporate actions and dividend details can settle late, and a paid conversion takes longer still.
Common questions
Which export do I need from Interactive Brokers?
An Activity Flex Query in XML format, covering 1 January to 31 December of the tax year, with all fields selected in the seven sections above.
Does IBKR issue a Swiss tax statement?
No. Interactive Brokers does not produce an eSteuerauszugeSteuerauszugElectronic tax statementFRrelevé fiscal électroniqueITestratto fiscale elettronicoA securities statement in the Swiss eCH-0196 standard that every canton can import directly, filling in your securities for you. Swiss banks issue one; foreign brokers do not.Where you see itDownloaded from your Swiss bank's e-banking, usually from January.Open in the glossary → (electronic tax statement) in the eCH-0196 standard that cantons import directly. You export your own data and convert or enter it yourself. See foreign brokers and Swiss tax for the options and what they cost.
Do I have to convert the file at all?
No. Converting produces a file your canton can import, which saves typing. With only a few positions, entering them into the securities schedule by hand is perfectly acceptable and often faster.
Can I use the same query for a joint account?
Run it once per account. Each IBKR account produces its own file, and merging them by hand before conversion is where errors get introduced.
How PaperTax helps
PaperTax reads the Flex Query XML along with the rest of your documents and tells you what to enter in your own cantonal app, including the DA-1 claim that the export alone does not fill in. You still file yourself.
This article is general information, not tax, legal, or financial advice. Broker export formats change between seasons; confirm the sections available in your own Client Portal. PaperTax helps you complete your own official cantonal tax return. It does not file on your behalf. For advice on your own situation, consult a qualified Swiss tax professional or your cantonal tax office.
Sources
- Interactive Brokers — Create an Activity Flex Query: the sections, the field selection and the output formats — ibkrguides.com
- eCH — eCH-0196 electronic tax statement (eSteuerauszug) standard, version 2.2.0, the format Swiss cantonal tax applications import — ech.ch
- ESTV — form DA-1 (605.040.03d), tax period 2025: the supplementary sheet claiming credit for foreign source taxes, which the broker export alone does not complete — estv.admin.ch
PaperTax turns your broker export into the boxes you type. Start your 2025 return →