2 Punkte von GN⁺ 2026-01-03 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Mit Beancount wurden persönliche Finanzen 10 Jahre lang in einfachen Textdateien erfasst und dabei rund 45.000 Datenzeilen und 10.000 Transaktionen verwaltet
  • Jeden Monat werden 30–45 Minuten investiert, um CSV-Dateien mit Kontoauszügen zu importieren und manuell sowie automatisch zu bereinigen; zur besseren Lesbarkeit werden die Daten in Jahresdateien aufgeteilt
  • Eine eigene Python-basierte Importer-Bibliothek für deutsche Banken wurde entwickelt und mit Beancount integriert; ein Teil davon wird bis heute gepflegt
  • Weil der Einstieg in Beancount für Anfänger schwierig sein kann, wurde ein Einsteigerleitfaden geschrieben, der in der Community positiv aufgenommen wurde
  • Alle Daten werden auf dem lokalen Gerät und in einem Git-Repository gespeichert, was im Vergleich zu bestimmten Apps oder Services mehr Beständigkeit und Kontrolle bietet

Struktur des Beancount-Ledgers über 10 Jahre

  • Seit 2016 werden Finanzdaten mit Beancount verwaltet; insgesamt sind 45.011 Zeilen an Einträgen in 16 .beancount-Dateien gespeichert
    • Die Datei main.beancount bildet den Kern, Jahresdateien werden per include eingebunden
    • Insgesamt gibt es etwa 9.895 Transaktionen und darin 19.743 Postings (Buchungssätze)
  • Es existieren 1.086 Konten (accounts), die jedoch nicht nur reale Bankkonten sind, sondern vor allem virtuelle Klassifizierungskonten
    • Beispiel: Konten für Supermarktausgaben, Einnahmen, Abo-Dienste und andere Detailkategorien
  • 507 PDF-Dokumente sind an Transaktionen angehängt, sodass sich relevante Belege etwa für die Steuererklärung leicht prüfen lassen
  • Die Zahl der Postings pro Jahr stieg von 715 im Jahr 2016 auf 2.651 im Jahr 2023; 2023 war damit das aktivste Jahr

Monatlicher Verwaltungsablauf

  • Pro Monat werden etwa 30–45 Minuten aufgewendet, um Kontoauszüge als CSV herunterzuladen und in Beancount zu importieren
    • CSV wird verwendet, weil es sich leichter parsen lässt als PDF
    • Ein Python-basierter Importer wandelt die CSV-Daten in das Beancount-Format um
  • Nach dem Hinzufügen der konvertierten Transaktionen zur .beancount-Datei werden sie nach dem Prinzip der doppelten Buchführung so angepasst, dass der Saldo 0 ergibt
    • Ein Teil wird automatisch kategorisiert, ein Teil manuell angepasst
  • Mit Beginn eines neuen Jahres werden die Transaktionen des Vorjahres in die Datei <year>.beancount verschoben und über main.beancount eingebunden
  • Alle Transaktionsdaten sind als Textdateien in einem einzigen Verzeichnis organisiert

Entwicklung von Beancount-Importern für deutsche Banken

  • Beancount kennt standardmäßig die Formate von Bankauszügen nicht, daher ist eine Umwandlung über Importer-Klassen nötig
  • Da deutsche Bankkonten verwendet werden, wurden mehrere Importer direkt selbst entwickelt
  • Die ersten drei Bibliotheken werden weiterhin aktiv gepflegt und genutzt

Vom Nutzer zum Autor

  • Die Dokumentation von Beancount ist umfangreich, aber für Einsteiger ist die Einstiegshürde hoch
  • Auf Basis der durch Versuch und Irrtum gewonnenen Erfahrungen wurde ein Einsteigerleitfaden geschrieben
    • Veröffentlicht auf personalfinancespython.com
    • Erwähnt auf der Seite external contributions der offiziellen Beancount-Dokumentation
    • Leserrezensionen fielen positiv aus

Fazit

  • Alle Finanzdaten sind als lokale Textdateien mit Versionsverwaltung per Git gespeichert
  • Die Daten befinden sich auf dem eigenen Gerät und sind nicht an eine bestimmte App oder einen bestimmten Service gebunden
  • Mit den Werkzeugen des Beancount-Ökosystems lassen sie sich frei analysieren
  • Dieser Ansatz des Plaintext Accounting ist eine leistungsfähige Form der Finanzverwaltung, die länger bestehen kann als jede einzelne App

Noch keine Kommentare.

Noch keine Kommentare.