Freedom24

PIT-38 from Freedom24: dates written as numbers and a direction padded with spaces

Freedom24 exports in three shapes, and in the commonest one the dates are not dates but numbers. Below is exactly what our engine reads.

Where to get the file

  1. In the client area open the transaction history report for the whole tax year.
  2. Download XLSX or CSV — we read both.
  3. If you sold something bought earlier, download those years too.

What is inside

Settlement date in its own column
A rarity among brokers: Freedom24 gives both the trade day and the settlement day. The latter sets the NBP rate, so the return comes out more precise than where it must be guessed.
Dates as serial numbers
In the XLSX a date is a count of days since 1900 — 45498 means 23 July 2024. Read raw it looks like an arbitrary number.
Direction padded with spaces
The direction column holds “ Buy ” and “ Sell ” with spaces around them. A plain comparison with “Buy” misses and the row drops out of the return.
Separate fee and result columns
Fee and Profit sit beside the amount, not inside it.

Where it goes wrong

A number taken for a date
The commonest mistake: 45498 enters the return as the year 45498 or as an empty date. The trade then falls outside the tax year and the tax is computed without it.
Spaces inside values
Direction, and sometimes the ticker, arrive with invisible padding. Filtering by hand in a spreadsheet simply loses those rows.
Three different export shapes
CSV, XLSX and JSON carry different column names and different date encodings. Instructions written for one do not work for the others.

What we compute from it

Shares and ETFs — section C/D
FIFO per account, art. 30b ust. 7.
Rate from the settlement day
Since the broker gives the settlement day, we take the NBP rate from the day before it — art. 11a ust. 1, with nothing guessed.
Commission as cost
Added from its own column.

Run this once

claude mcp add --transport http taxroam https://taxroam.com/mcp --header "Authorization: Bearer $TAXROAM_KEY"

Documentation · How it works · Pricing

Where this export usually goes wrong

The NBP rate
The trade-date rate
PIT/ZG
The attachment never filed

All Polish tax cases

Questions about Freedom24

Which format should I send?

Any of the three — we detect it. If you have the XLSX, it is the fullest.

The broker gives a settlement date. Does that change anything?

Yes, for the better. The rate comes from the day before income is realised, and with most brokers that day is missing from the file and has to be reported as absent.