# Convert Turkish bank statements to Excel

Tallyscope reads Turkish column headers, dates and numbers in your browser and checks every row against the running balance before you export to Excel or CSV.

Canonical page: https://tallyscope.app/bank-statement-to-excel-turkish | Last updated: 2026-11-07

What Tallyscope reads in Turkish (Türkçe) statements. The site is in English; no bank names are used or implied.

## Turkish bank statements to Excel

Turkish has letters that ordinary lower-casing handles badly: the dotless i, the dotted capital İ, and ş, ç, ğ, ö and ü. The file is read in your browser tab and every row is checked against the printed running balance. The Turkish-specific parts follow.

## Turkish column headers the reader recognises

| Column | Turkish words |
| --- | --- |
| Date | Tarih |
| Value date | Valör Tarihi |
| Description | Açıklama |
| Debit (money out) | Borç |
| Credit (money in) | Alacak |
| Amount | Tutar |
| Balance | Bakiye |

The statement-level labels **Açılış bakiyesi** and **Kapanış bakiyesi** 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 Turkish sample, row by row

The figures below are synthetic and use Turkish conventions for headers, dates and numbers. The opening label Açılış bakiyesi 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.

| Tarih | Açıklama | Borç | Alacak | Bakiye |
| --- | --- | --- | --- | --- |
| Açılış bakiyesi | 1.250,20 |  |  |  |
| 02.01.2026 | Maaş |  | 2.722,00 | 3.972,20 |
| 15.01.2026 | Kira | 820,50 |  | 3.151,70 |
| 20.01.2026 | Market | 87,96 |  | 3.063,74 |
| 28.01.2026 | İade |  | 18,22 | 3.081,96 |

- 02.01.2026 is read as 2 January 2026. 2.722,00 in the Alacak column becomes **+2,722.00**, and the printed balance 3.972,20 is 3,972.20, which equals 1,250.20 plus 2,722.00.
- 15.01.2026 is read as 15 January 2026. 820,50 in the Borç column becomes **-820.50**, and the printed balance 3.151,70 is 3,151.70.
- 20.01.2026 is read as 20 January 2026. 87,96 in the Borç column becomes **-87.96**, and the printed balance 3.063,74 is 3,063.74.
- 28.01.2026 is read as 28 January 2026. 18,22 in the Alacak column becomes **+18.22**, and the printed balance 3.081,96 is 3,081.96.

Opening 1,250.20, plus the four movements (net +1,831.76), gives 3,081.96, the last printed balance 3.081,96. Every row agrees with the running balance, so this statement is shown as Verified.

## Money out and money in in Turkish statements

This sample uses two money columns, a layout found in many Turkish-language statements: Borç holds money out and Alacak 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.

## Turkish OCR at a glance

| Model code | `tur` |
| --- | --- |
| Writing system | Latin letters |
| Bundled English model | Reads digits and Latin letters; the tur model improves accented or special letters |
| Text PDF, spreadsheet, bank file | No OCR and no model download |

## Dates in Turkish statements

Ocak is read as January. Dates such as 15.01.2026 are read day first.

Examples that are read correctly: `15 Ocak 2026`, `15.01.2026`.

## Numbers and signs

Amounts like 1.234,56 are 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 Turkish statements and the OCR model

Turkish is written in the Latin alphabet, so the bundled English model is tried first; a Turkish model helps when the special letters decide whether a header is recognised. 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 Turkish, its model (tur) is the first one tried. Choosing Turkish 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](https://tallyscope.app/convert-bank-statement-without-uploading)).

## What is specific to Turkish

Header text is folded before matching: the dotless ı is treated as i, and accents and cedillas are stripped, so Açıklama and a scan that renders it as Aciklama are the same header to the reader. Without that fold, a lower-cased dotless i would fail to match.

Borç is read as money out and Alacak as money in; Bakiye is the running balance, and Açılış bakiyesi and Kapanış bakiyesi are recognised as the opening and closing balance lines.

## Convert a Turkish statement

Add the file to [Tallyscope](https://tallyscope.app/) (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](https://tallyscope.app/pricing)). Several Turkish and non-Turkish files can be [merged](https://tallyscope.app/merge-bank-statements) into one table.

No accuracy percentage is claimed: layouts vary, and the arithmetic check says whether a given statement reconciled ([how verification works](https://tallyscope.app/how-verification-works)).

## Frequently asked questions

### Does Tallyscope read Turkish bank statements?

It recognises Turkish 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 Turkish?

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 Turkish (tur) 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 Turkish 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.

## Related guides

- [Bank statement OCR](https://tallyscope.app/bank-statement-ocr): In-browser OCR, repairs only when arithmetic proves them
- [Scanned statement to Excel](https://tallyscope.app/scanned-bank-statement-to-excel): Photos and scanned PDFs read by in-browser OCR
- [Polish bank statements to Excel](https://tallyscope.app/bank-statement-to-excel-polish): Polish headers, dates and numbers
- [Arabic bank statements to Excel](https://tallyscope.app/bank-statement-to-excel-arabic): Arabic headers, dates and numbers
- [Multi-currency statements](https://tallyscope.app/multi-currency-bank-statements): Many currencies, one reporting currency, live rates
