# Jak czytać eksport z Trading 212 do PIT-38

Eksport z Trading 212 ma 33 kolumny i dwie z nich kuszą najbardziej: gotowa suma i gotowy kurs. Obie prowadzą do liczby, której nie da się obronić przed urzędem.

Źródło: https://fifio.pl/poradniki/jak-czytac-eksport-trading-212/ · opublikowano 2026-10-15

## Kluczowe wnioski

- Eksport robisz w historii, **osobnym plikiem na każdy rok**, w formacie CSV.
- Kolumn `Total` i `Exchange rate` **nie używaj**. To suma w walucie rachunku po kursie brokera, a polski podatek liczy się po kursie NBP z dnia poprzedzającego.
- Bierz cenę z `Price / share` razem z `Currency (Price / share)` i przeliczaj samodzielnie.
- Każda opłata ma **własną kolumnę waluty** i nie musi być w walucie transakcji. Nie wolno ich po prostu dodać do siebie.
- Podział akcji przychodzi jako **para wierszy** `Stock split close` i `Stock split open`. Sama połowa pary oznacza, że pliku brakuje.

## Który plik pobrać

W historii transakcji wybierasz eksport do CSV i ustawiasz zakres na pełny rok kalendarzowy. Trading 212 generuje osobny plik na każdy zakres, więc przy trzech latach inwestowania masz trzy pliki i wszystkie są potrzebne. Powód opisujemy w tekście o [metodzie FIFO](/poradniki/metoda-fifo-krok-po-kroku/): sprzedaż z tego roku sięga po koszt z roku, w którym kupowałeś.

Właściwy plik poznasz po tym, że w pierwszym wierszu stoją nagłówki, a wśród nich `Action` i `Time (UTC)`. Jeśli tych dwóch kolumn nie ma, masz inny raport.

Tax Certificate to nie to samo. Jest to dokument o podatku u źródła, przydatny przy dywidendach, ale nie zawiera historii transakcji i nie da się z niego policzyć FIFO.

## Dwie kolumny, które kuszą i psują wynik

Plik zawiera kolumnę `Total` z gotową kwotą w walucie rachunku oraz kolumnę `Exchange rate` z kursem. Wygląda to jak oszczędność pracy i jest najczęstszym źródłem rozbieżności między dwoma rozliczeniami tej samej historii.

`Exchange rate` to **kurs brokera z chwili transakcji**, czyli kurs rynkowy powiększony o jego marżę. Polski podatek liczy się po kursie średnim NBP z ostatniego dnia roboczego poprzedzającego, co opisujemy w tekście o [kursie NBP](/poradniki/kurs-nbp-przy-pit-38/). To są dwie różne liczby i różnią się zwykle o ułamek procenta na kursie, ale o kilka procent na wyniku, bo różnica działa na przychód i na koszt w przeciwne strony.

Z tego samego powodu nie używamy `Total`: jest policzone właśnie tym kursem.

Bierzemy więc `Price / share`, czyli cenę w walucie notowania, kolumnę `Currency (Price / share)` z walutą i `No. of shares` z liczbą sztuk, a przeliczenie robimy sami.

## Kolumny, które naprawdę są potrzebne

| Kolumna | Do czego |
|---|---|
| `Action` | rodzaj operacji: zakup, sprzedaż, dywidenda, podział akcji |
| `Time (UTC)` | data zdarzenia, z której bierze się kurs |
| `ISIN` | identyfikator papieru, pewniejszy niż `Ticker` |
| `Ticker`, `Name` | pomocniczo, gdy ISIN-u brak |
| `No. of shares` | liczba sztuk, przy dywidendzie też potrzebna |
| `Price / share` | cena w walucie notowania |
| `Currency (Price / share)` | waluta tej ceny, bez niej liczba nic nie znaczy |
| `Withholding tax` | podatek u źródła przy dywidendzie |
| `Currency (Withholding tax)` | waluta tego podatku, bywa inna niż waluta dywidendy |

Reszta z 33 kolumn albo dotyczy rzeczy spoza PIT-38, albo powiela powyższe.

## Opłaty, czyli pułapka numer dwa

Trading 212 rozbija opłaty na pięć osobnych kolumn i **każda ma własną kolumnę waluty**:

- `Transaction fee`
- `Finra fee`
- `Currency conversion fee`
- `Stamp duty reserve tax`
- `French transaction tax`

W jednym wierszu potrafi stać opłata za przewalutowanie w walucie rachunku, Finra fee w dolarach i francuski podatek od transakcji w euro. Dodanie tych liczb do siebie daje sumę bez znaczenia, bo są w trzech różnych walutach.

Poprawnie przelicza się każdą osobno, jej własnym kursem z dnia zdarzenia, i dopiero złotówkowe wyniki można zsumować. Opłaty w walucie transakcji wchodzą razem z nią, pozostałe liczy się obok.

Pusta kolumna waluty przy niezerowej opłacie oznacza wiersz, którego nie da się rzetelnie przeliczyć. Nasz import zgłasza taki wiersz zamiast zgadywać walutę.

## Dywidendy

Przy dywidendzie Trading 212 nie podaje kwoty łącznej. Podaje cenę za akcję w `Price / share` i liczbę sztuk w `No. of shares`, więc kwotę brutto trzeba wymnożyć.

Podatek u źródła stoi w kolumnie `Withholding tax`, ale jego waluta bywa inna niż waluta dywidendy. Gdy się różnią, nie da się ich zestawić bez dwóch osobnych przeliczeń i nasz import mówi wprost, że ten podatek trzeba dodać ręcznie, zamiast podstawić liczbę w złej walucie.

## Podziały akcji

Podział przychodzi jako dwa wiersze z tą samą datą i tym samym numerem ISIN:

```
Stock split close,2026-06-10,US0378331005,...,4
Stock split open,2026-06-10,US0378331005,...,16
```

Pierwszy zamyka pozycję sprzed podziału, drugi otwiera pozycję po podziale. Stosunek wymiany wynika z obu liczb sztuk, tutaj cztery do szesnastu, czyli jedna akcja zamieniła się w cztery.

To **nie jest sprzedaż i zakup**, choć tak wygląda. Łączny koszt pozycji się nie zmienia, zmienia się tylko liczba sztuk i koszt przypadający na sztukę. Potraktowanie tej pary jako transakcji wygenerowałoby przychód, którego nie było, i podatek od niego.

Niesparowany wiersz, czyli sam `open` albo sam `close`, oznacza niekompletny plik. Bez drugiej połowy nie da się ustalić stosunku wymiany, a zgadywanie kończy się błędnym kosztem przy najbliższej sprzedaży. Zgłaszamy to zamiast zgadywać.

## Operacje, które pomijamy

Wpłaty, wypłaty, odsetki od gotówki, przelewy między rachunkami, operacje kartą, cashback i wypożyczanie akcji nie wchodzą do PIT-38 i nie mówimy o nich nic. O każdej innej nieznanej operacji mówimy, z numerem wiersza, bo cicho pominięty wiersz to cicho zaniżony albo zawyżony podatek.

## Pytania i odpowiedzi

### Czy Trading 212 wystawia PIT-8C

Nie. Żaden zagraniczny broker go nie wystawia i nie pobiera podatku za ciebie. Twój e-PIT nie zobaczy tych transakcji, a brak zeznania nie przejdzie niezauważony, bo informacje o rachunkach zagranicznych i tak trafiają do administracji skarbowej.

### Mam ułamkowe części akcji, co z nimi

Liczba sztuk z ułamkiem jest normalna i wchodzi do rachunku tak samo jak pełna. FIFO działa na ułamkach bez zmian, trzeba tylko uważać przy zaokrągleniach, żeby nie zgubić setnych części sztuki przy wielu drobnych zakupach.

### Czym różni się ten plik od wyciągu z IBKR

Bardzo. Trading 212 daje jedną tabelę z 33 kolumnami i walutą przy każdej pozycji. IBKR daje kilka tabel sklejonych w jeden plik, bez kolumny waluty, za to z walutą rachunku podaną raz na początku. Opisujemy to w tekście o [wyciągu z Interactive Brokers](/poradniki/jak-czytac-wyciag-ibkr/).

### Co jeśli zmieniałem walutę rachunku

Wtedy kolumna `Currency (Total)` nie jest stała w całym pliku i sumy z różnych okresów są w różnych walutach. Nie ma to wpływu na nasz rachunek, bo i tak nie korzystamy z `Total`, ale przy ręcznym liczeniu to kolejny powód, żeby trzymać się ceny w walucie notowania.

Fifio nie jest doradcą podatkowym. Odpowiedzialność za treść zeznania ponosi podatnik.
