Ödeme korumasıAyrıntılar
- Paket kapsamındaki revizyonlar ücretsizdir.
- Teslimattan sonraki 3 gün içinde yanıt vermezseniz iş otomatik olarak onaylanır.
Para, ödeme yaptığınızda bloke edilir ve yalnızca işi onayladığınızda aktarılır.

Örnek sonuç
Merging the monthly sales files of 9 shops into one Excel report
How it is run
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO Folder: sales/2026-10, 9 files found
2026-11-02 09:14:03 INFO shop-01.csv: 1,284 rows
2026-11-02 09:14:04 INFO shop-02.xlsx: 967 rows
2026-11-02 09:14:04 WARN shop-07.csv: 3 rows without a price skipped (lines 88, 412, 913)
2026-11-02 09:14:05 INFO Done: 10,412 rows -> report-2026-10.xlsx (sheets "Sales" and "Totals")
Settings, not code
The column names of each shop live in settings.ini, so a new shop or a renamed column is a line there:
[columns]
date = Date, Sale date, Day
product = Product, Item, Name
quantity = Qty, Quantity, Pcs
price = Price, Unit price
A part of the code
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""Reads one shop's file and gives it the report's column names."""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name}: no column for '{name}' (looked for {', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
Files: a ZIP archive with merge_sales.py (310 lines), settings.ini, requirements.txt and a README with installing Python, running the script and what each message in the log means. The client runs it on their own computer.
Client: a small chain of 9 stationery shops; each shop sends its sales for the month as a CSV or Excel file, with slightly different column names. Task: one script that reads every file in a folder, brings the columns to one shape, and writes a single Excel report with all sales and a sheet of totals by shop.
Müşteri ve tüm ayrıntılar kurgusaldır.
Bu hizmet hakkında
Bankalar ekstreleri kendi CSV düzenlerinde dışa aktarır, muhasebe programları ise kendilerininkini ister: başka sütun adları, GG.AA.YYYY ya da YYYY-AA-GG şeklinde tarihler, eksi işaretli tek bir tutar ya da ayrı borç ve alacak, belirli bir kodlama. Bu Python betiği internet bankacılığınızdan indirdiğiniz ekstreyi, programın verdiği şablona ya da örnek dosyaya göre programınızın içe aktarma dosyasına dönüştürür. Standart paketten itibaren her satırı kurallarınıza göre bir kategoriye de koyabilir, örneğin Kira geçen ödemeler Kira'ya gider. Bilgisayarınızda çalışır ve bankanıza ya da muhasebe programınıza asla bağlanmaz; ekstreyi indirir ve sonucu kendiniz içe aktarırsınız. Yalnızca düzeni değiştirir, rakamları değil; muhasebe ya da vergi tavsiyesi vermez. İlk içe aktarmadan sonra toplamları kontrol edin.
Neler dahil
- Neler alırsınızPython betiğini, adım adım talimatlar içeren bir README dosyasını ve Standart paketten itibaren sütunları ve kategori kurallarını içeren bir ayar dosyasını barındıran bir ZIP arşivi; kod sipariş sayfasında da gösterilir.
- Programınızın formatıİçe aktarma şablonuna ya da örnek bir dosyaya göre
- Tarihler ve tutarlar doğruFormatlar, işaretler ve ondalık ayırıcılar dönüştürülür
- Kurallarınıza göre kategorilerStandart paketten itibaren belirlediğiniz anahtar kelimeler
- Bilgisayarınızda kalırBankaya ya da başka bir yere bağlantı yok
- Okunabilir kodYorumlarla; sonradan kural eklemek kolay
Nasıl çalışır
- 1ÖrneklerBankanızın düzeninde uydurma satırlar ve programınızın şablonunu gönderirsiniz
- 2KodBetiği ve çalıştırma kılavuzunu yazarız
- 3DeneyinBir ekstreyi dönüştürür, deneme şirketine ya da dönemine aktarır ve toplamları kontrol edersiniz
- 4DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz
Sizden neler gerekiyor
Bankanızın CSV'sinin başlık satırı ve uydurma tutarlar, adlar ve hesap numaralarıyla ama aynı düzende 10-20 satır, muhasebe programınızın adı ve içe aktarma şablonu, dokümantasyon sayfası ya da kabul ettiği örnek bir dosya. Standart için kategori kurallarınız (hangi kelimelerin hangi kategoriye gideceği). Premium için her bankadan ya da hesaptan bir örnek. Asla gerçek ekstreler, hesap numaraları ya da banka giriş bilgileri göndermeyin.
Size soracaklarımız:
- Hangi banka dışa aktarımına sahipsiniz?
- Hangi muhasebe programı ve içe aktarma formatı?
- Kategorilere ihtiyacınız var mı?
- Kaç banka ya da hesap?
Paketleri karşılaştırın
| Paketler | TemelTek banka, tek format$16 | StandartAyarlı dönüştürücü$33 | PremiumDönüştürücü aracı$67 |
|---|---|---|---|
| Teslim süresi | 1 gün | 2 gün | 3 gün |
| Revizyonlar | 1 | 2 | 3 |
| Kod | en fazla 150 satır | en fazla 400 satır | en fazla 1.000 satır |
| Kod dosyası | 1 | en fazla 3 | en fazla 8 |
| Ayar dosyası | Hayır | Evet | Evet |
| Anlaşılır hata mesajları ve log | Hayır | Evet | Evet |
| Çalıştırma seçenekleri ve zamanlanmış çalıştırma kılavuzu | Hayır | Hayır | Evet |
| Kurulum ve çalıştırma kılavuzu (README) | Evet | Evet | Evet |
| Dil | Python | Python | Python |
| Sipariş ver Temel | Sipariş ver Standart | Sipariş ver Premium |
Ödeme koruması
Sipariş verirken ödersiniz, ancak para yalnızca onaylanan iş için aktarılır.
- Sabit fiyatPaket fiyatı, ödeme yaptıktan sonra değişmez.
- Para bloke edilirÖdeme yaptığınızda tutar yalnızca bloke edilir. İşi onayladığınızda hizmete aktarılır.
- Teslimattan önce kontrolHer sonuç size ulaşmadan önce kalite kontrolünden geçer ve onaylamadan önce sipariş sayfasında görürsünüz.
- Ücretsiz revizyonlarBrifiniz kapsamında, paketin izin verdiği sayıda değişiklik isteyin.
- 3 gün sonra onayTeslimattan sonraki 3 gün içinde işi onaylamaz veya değişiklik istemezseniz iş otomatik olarak onaylanır. Teslimattan sonra sipariş sohbetine yazarsanız sipariş bekletilir; yanıt verdikten sonra 3 günlük süreyi yeniden başlatabiliriz ve bunu sohbette bildiririz.
- Yeniden yapım veya tam iadeSonuç brifinize uymuyorsa ve revizyonlar sorunu çözmediyse ya da iş teslim süresinin iki katından uzun sürerse sipariş sohbetine yazın: işi yeniden yaparız veya ödemenin tamamını iade ederiz.
Sorular ve yanıtlar
Bankama bağlanır mı?
Hayır. Ekstreyi internet bankacılığınızdan her zamanki gibi indirirsiniz ve betik dosyayı bilgisayarınızda dönüştürür. Kodunda internet erişimi yoktur.
Bankam yalnızca PDF ekstre veriyor.
Bu teklif CSV ya da Excel ile çalışır. PDF'de gerçek metin varsa PDF'den Excel'e tablo teklifimize bakın; taranmış ekstreler kapsam dışıdır.
Kategoriler vergilerim için doğru olacak mı?
Betik verdiğiniz anahtar kelime kurallarını uygular; bir şeyin nasıl kaydedileceğine ya da vergilendirileceğine karar vermez. Bu sizin ya da muhasebecinizin işidir; vergi ya da muhasebe tavsiyesi vermeyiz.
Bankam dışa aktarımını değiştirirse ne olur?
Standart paketten itibaren sütun adları ayar dosyasında durur, bu yüzden adı değişen bir sütun küçük bir değişikliktir. Yeni bir düzen betiğin ayarlanmasını gerektirebilir.
Yanıtınızı bulamadınız mı?