Blog'a Dön
9 Haziran 2026

PDF Banka Ekstresinden İşlemleri Otomatik Çıkarma — Tam Rehber

Özet

Bir PDF banka ekstresinden işlemleri çıkarmak için dosyayı, tablo düzenini otomatik algılayan ve her satırı tarih, açıklama, tutar ve bakiye olarak döndüren bir parser'a yükleyin. Metin tabanlı PDF'ler doğrudan ayrıştırılır; taranmış PDF'ler önce OCR gerektirir. Sonucu CSV, Excel veya JSON olarak dışa aktarın ya da bir API'den çekin.

PDF Banka Ekstresinden İşlemleri Otomatik Çıkarma

Her ay banka ekstrelerini manuel olarak Excel'e girmek, muhasebecilerin en çok zaman harcadığı işlerden biri. Bu rehberde bu süreci tamamen otomatize etmenin yollarını gösteriyoruz.

Neden Zor?

Her banka PDF'i farklı format kullanır:

  • Bazı bankalar sütun bazlı tablo tercih eder
  • Bazıları satır bazlı, alt bilgilerle çalışır
  • Uluslararası bankalar farklı tarih ve tutar formatları kullanır
  • Çok sayıda dil ve karakter seti söz konusu olabilir

Regex veya template tabanlı çözümler her format güncellemesinde bozulur.

Çözüm 1: REST API (En Kolay)

import requests

response = requests.post(

"https://api.bankstatementparser.net/extract",

headers={"X-Api-Key": "pex_your_key"},

files={"file": open("ekstre.pdf", "rb")}

)

data = response.json()

print(f"Format: {data['bankKey']}")

print(f"İşlem sayısı: {len(data['transactions'])}")

for txn in data['transactions']:

print(f"{txn['date']} | {txn['description'][:40]} | {txn['amount']}")

Çözüm 2: CSV Export ve Excel'e Aktarım

import requests

import pandas as pd

resp = requests.post(

"https://api.bankstatementparser.net/extract",

headers={"X-Api-Key": "pex_your_key"},

files={"file": open("ekstre.pdf", "rb")}

)

df = pd.DataFrame(resp.json()["transactions"])

df.to_excel("islemler.xlsx", index=False)

print(f"{len(df)} işlem Excel'e aktarıldı.")

Toplu İşleme

Birden fazla dosyayı döngüyle işleyin:

import os, requests, pandas as pd

api_key = "pex_your_key"

pdf_folder = "./ekstreler"

results = []

for filename in os.listdir(pdf_folder):

if not filename.endswith(".pdf"):

continue

resp = requests.post(

"https://api.bankstatementparser.net/extract",

headers={"X-Api-Key": api_key},

files={"file": open(f"{pdf_folder}/{filename}", "rb")}

)

txns = resp.json().get("transactions", [])

for t in txns:

t["source_file"] = filename

results.extend(txns)

pd.DataFrame(results).to_excel("tum_islemler.xlsx", index=False)

Ücretsiz Başlayın

[Hesap Oluştur →](https://bankstatementparser.net/tr/kayit) — Her ay ilk 50 sayfa ücretsiz.

Ücretsiz Başlayın

Aylık 50 sayfaya kadar ücretsiz. Kredi kartı gerekmez.

Hesap Oluştur