Convert Polish bank statements to Excel
Tallyscope reads Polish column headers, dates and numbers in your browser and checks every row against the running balance before you export to Excel or CSV.
What Tallyscope reads in Polish (Polski) statements. The site is in English; no bank names are used or implied.
Polish bank statements to Excel
Polish uses the Latin alphabet with extra letters (ą, ć, ę, ł, ń, ó, ś, ź, ż), and the letter ł is one that standard accent-stripping does not touch. The file is read in your browser tab and every row is checked against the printed running balance. The Polish-specific parts follow.
Polish column headers the reader recognises
| Column | Polish words |
|---|---|
| Date | Data |
| Value date | Data waluty |
| Description | Opis, Tytuł |
| Debit (money out) | Obciążenia, Wypłaty |
| Credit (money in) | Uznania, Wpłaty |
| Amount | Kwota |
| Balance | Saldo |
The statement-level labels Saldo początkowe and Saldo końcowe are recognised as the opening and closing balance. Matching ignores case, accents and punctuation, and the lists hold more words than shown. An unrecognised header can be assigned by hand in the column mapper.
A Polish sample, row by row
The figures below are synthetic and use Polish conventions for headers, dates and numbers. The opening label Saldo początkowe is the statement's starting balance. The same table, saved as a CSV, is read by the real parser in our automated tests, so what follows is what the reader actually does with it.
| Data | Opis | Obciążenia | Uznania | Saldo |
|---|---|---|---|---|
| Saldo początkowe | 1 333,60 | |||
| 02.01.2026 | Wynagrodzenie | 2 796,00 | 4 129,60 | |
| 15.01.2026 | Czynsz | 845,50 | 3 284,10 | |
| 20.01.2026 | Zakupy | 96,22 | 3 187,88 | |
| 28.01.2026 | Zwrot | 20,16 | 3 208,04 | |
- 02.01.2026 is read as 2 January 2026. 2 796,00 in the Uznania column becomes +2,796.00, and the printed balance 4 129,60 is 4,129.60, which equals 1,333.60 plus 2,796.00.
- 15.01.2026 is read as 15 January 2026. 845,50 in the Obciążenia column becomes -845.50, and the printed balance 3 284,10 is 3,284.10.
- 20.01.2026 is read as 20 January 2026. 96,22 in the Obciążenia column becomes -96.22, and the printed balance 3 187,88 is 3,187.88.
- 28.01.2026 is read as 28 January 2026. 20,16 in the Uznania column becomes +20.16, and the printed balance 3 208,04 is 3,208.04.
Opening 1,333.60, plus the four movements (net +1,874.44), gives 3,208.04, the last printed balance 3 208,04. Every row agrees with the running balance, so this statement is shown as Verified.
Money out and money in in Polish statements
This sample uses two money columns, a layout found in many Polish-language statements: Obciążenia holds money out and Uznania holds money in, and each amount is printed without a sign because the column carries the direction. The reader takes the direction from the column and then checks it against the balance; if a column were swapped, the balance would not follow and the statement would not be marked Verified.
Polish OCR at a glance
| Model code | pol |
| Writing system | Latin letters |
| Bundled English model | Reads digits and Latin letters; the pol model improves accented or special letters |
| Text PDF, spreadsheet, bank file | No OCR and no model download |
Dates in Polish statements
The genitive month stycznia in 15 stycznia 2026 is read as January. Numeric dates like 15.01.2026 are read day first.
Examples that are read correctly: 15 stycznia 2026, 15.01.2026.
Numbers and signs
A space for thousands and a comma for cents (1 234,56) is read as 1,234.56.
Examples that are read correctly: 1 234,56, 1.234,56. The running balance is the final judge of every sign.
Scanned Polish statements and the OCR model
The bundled English model reads digits and plain Latin letters. With the OCR language set to English only, nothing is downloaded; in automatic mode (the default) a poor read can trigger up to three trial model downloads from the jsDelivr CDN (cdn.jsdelivr.net), plus any language remembered from this session or detected earlier, and no statement content is ever sent. If your browser's language is Polish, its model (pol) is the first one tried. Choosing Polish by hand in the OCR language setting turns auto-detect off, and scans are then read with that model.
The file stays in your tab (every network use is listed here).
What is specific to Polish
Header matching folds the stroked l (ł) into l by hand, since Unicode decomposition does not split it. So Wypłaty matches its plain-ASCII form as well.
Obciążenia and Wypłaty are read as money out, Uznania and Wpłaty as money in. Data waluty stays separate as the value date.
Convert a Polish statement
Add the file to Tallyscope (10 files at once are free), read each statement's status, fix flagged rows on the Review tab, then export: CSV is free for the first 25 rows; unlimited CSV and Excel, PDF, JSON, OFX, QuickBooks CSV, Xero CSV and a reconciliation report (PDF, plus an Excel sheet) come with the Day pass or Pro (pricing). Several Polish and non-Polish files can be merged into one table.
No accuracy percentage is claimed: layouts vary, and the arithmetic check says whether a given statement reconciled (how verification works).
Frequently asked questions
Does Tallyscope read Polish bank statements?
It recognises Polish column headers, balance labels, dates and number formats, and checks the rows against the running balance. The website itself is only in English.
Do I need to download an OCR model for Polish?
Not necessarily. The bundled English model reads digits and Latin letters first. If a scan reads poorly, auto-detect (the default) may download a language model such as Polish (pol) from the jsDelivr CDN (cdn.jsdelivr.net), or you can pick it by hand. Only a model file is requested; no statement content is sent.
Are my Polish statements uploaded?
No. Files are read in your browser tab. The only OCR download is a language model file from the jsDelivr CDN, requested only when a scan needs a non-English model; no statement content is sent with it.