3 Punkte von GN⁺ 2024-09-17 | 1 Kommentare | Auf WhatsApp teilen
  • Plain Text Accounting (PTA) ist ein Ansatz, bei dem Buchhaltungsdaten in Klartextdateien erfasst und mit kommandozeilenfreundlichen Werkzeugen wie Ledger, hledger und Beancount verarbeitet werden; diese Website ist ein Portal, das die zugehörigen Ressourcen an einem Ort bündelt
  • Die Community-Aktivitäten sind auf Matrix/IRC, Foren, Reddit, Lemmy, Hacker News, Mastodon, X, Bluesky verteilt, sodass sich Fragen, Neuigkeiten und projektbezogene Gespräche über mehrere Kanäle verfolgen lassen
  • Die Lernmaterialien sind in App-Vergleiche, offizielle Dokumentation, Buchhaltungsgrundlagen, Einführungen, Cheat Sheets, Cookbook, FAQ, Folien und Videos gegliedert, sodass auch Einsteiger schrittweise an PTA herangeführt werden
  • Das App-Ökosystem bietet rund um Ledger, Beancount und hledger mehrere Implementierungen und Funktionsmatrizen; die drei wichtigsten Werkzeuge basieren jeweils auf C++/Python/Haskell und haben Release-Historien bis 2025–2026
  • Von Import/Umwandlung über Editor-Plugins, Rechnungen, Kursabfragen, Reporting, Zeiterfassung, UI und Workflows bis hin zu Bibliotheken lässt sich Klartext-Buchhaltungsdaten in unterschiedliche Arbeitsumgebungen einbinden

Das Konzept von PTA und die Rolle von plaintextaccounting.org

  • Plain Text Accounting ist ein Ansatz, bei dem Buchführung und Rechnungswesen mit Klartextdateien und effizienten, kommandozeilenfreundlichen Programmen wie Ledger, hledger und Beancount durchgeführt werden
  • plaintextaccounting.org dient als Portal zu den Werkzeugen, Dokumentationen und Praxisbeispielen der PTA-Community
  • Man kann Updates des Website-Repositorys abonnieren; außerdem werden Finanzberichte und Hinweise zur Unterstützung bereitgestellt

Community und Diskussionskanäle

  • Echtzeitgespräche laufen über Matrix mit #plaintextaccounting, den plaintextaccounting-Matrix-Space und den IRC-Kanal #plaintextaccounting auf Libera Chat
  • Diskussionen und Neuigkeiten sind auf mehrere öffentliche Kanäle verteilt
  • Auf Stack Exchange werden Tags und Suchlinks für ledger-cli und hledger angeboten
  • Verlinkt sind auch projektspezifische Mailinglisten und Chats sowie This Week In Hledger

Dokumentation und Lernmaterialien

  • Die Materialien zum App-Vergleich umfassen eine Liste von PTA-Apps, eine Funktionsmatrix, die FAQ „Welche PTA-App sollte ich wählen?“ sowie eine Syntax Quick Reference
  • Verlinkt sind offizielle App-Dokumentationen für Ledger, hledger, Beancount, rustledger, Ledger(Go), Tackler und pta
  • Die Buchhaltungsgrundlagen umfassen die PTA-FAQ, hledgers Accounting basics/links, Beancounts Double-Entry Counting Method, „Accounting for Computer Scientists“ und mehr
  • Die Einführungen sind nach Einstiegspunkt gegliedert
  • Cheat Sheets, Cookbook, FAQ, Folien und Videomaterial sind ebenfalls in eigenen Abschnitten organisiert; im Videobereich gibt es den Hinweis, dass sich PTA-Videos auf YouTube schwer finden lassen

Wichtige PTA-Apps und Funktionsvergleich

  • Wer mit PTA beginnt, kann eine oder mehrere der auf der Website gelisteten Apps ausprobieren; im Allgemeinen ist eine Datenmigration zwischen den Apps möglich
  • Die aktuelle Liste wichtiger Apps enthält mehrere Projekte
    • Ledger: C++, gestartet 2003, letztes Release 2025, etwa 245 Committer, etwa 5.9k Stars
    • Beancount: Python, gestartet 2008, letztes Release 2026, etwa 103 Committer, etwa 5.5k Stars
    • hledger: Haskell, gestartet 2007, letztes Release 2026, etwa 194 Committer, etwa 4.4k Stars
    • Ebenfalls in der aktuellen Liste: Transity, Ledger(Go), Abandon, zhang, Tackler, rustledger, knut, acc, ledg
  • Frühere oder inaktive Projekte sind separat aufgeführt, darunter placc, budget-cli, mynt, awk-pta, pta, blossom, .Net Ledger, monescript, Penny, UMM und cl-ledger
  • Die Funktionsmatrix für Ledger, hledger und Beancount wurde mit Stand 2024-09 aktualisiert und vergleicht Benutzeroberfläche, Installation, Hilfe, Ein-/Ausgabeformate, Befehle, Konfiguration, Erweiterbarkeit, Kontonamen, Budgets, Diagramme, Kursabfragen, Queries und Validierung
  • Die zentralen Unterschiede konzentrieren sich auf Punkte, die sich direkt auf die Werkzeugwahl auswirken
    • Für die CLI sind Ledgers ledger, hledgers hledger und Beancounts beanquery verlinkt
    • Einfache Installation und Konfiguration sind bei Ledger/hledger mit yes, bei Beancount mit no markiert
    • hledger bietet die Ausgabeformate text/html/csv/tsv/fods/beancount/sql/json
    • Die Validierung bei Beancount ist als immer strikt gekennzeichnet, bei Ledger und hledger als konfigurierbar

Software-Ökosystem

  • Im Abschnitt AI finden sich der lokal ausgerichtete Multi-Model-AI-Agent accountant24 für hledger sowie ein Setup-Beitrag, der Claude Code als Agentenschicht mit hledger und einem Obsidian-Vault nutzt
  • Als alternative Distributionen/Konfigurationen sind Full-fledged hledger, hledger-flow, Lazy Beancount, hledger-youtube-business, rtrLEDGER und docker-finance aufgeführt
  • Datenumwandlung und -import nehmen viel Raum ein: Zusätzlich zu den eingebauten CSV-Konvertern von Ledger und hledger sind das Import-Werkzeug von Beancount v2, banks2ledger, beancount-import, beancount2ledger, hledger2beancount, ledger2beancount, plaid2text und weitere gelistet
    • Auch Werkzeuge zum Umstieg von GnuCash, Intuit/QuickBooks/QIF, KMyMoney und YNAB nach *ledger oder Beancount sind in eigenen Unterabschnitten organisiert
  • Werkzeuge zur Datenerzeugung werden für Preisbuchungen, Abschreibungen, Zinsen, wiederkehrende Transaktionen und Capital-Gains-Postings verwendet
  • Editor-Plugins sind nach Emacs, JetBrains-IDE, Nano, Sublime, TextMate, Vim und VS Code gegliedert
    • Beispiele: ledger-mode, beancount-mode, hledger-mode, vim-ledger, vim-beancount, hledger-vscode, vscode-beancount
  • Als Formatierungswerkzeuge sind beancount-black, beancount-black web app und hledger-fmt gelistet
  • Bei den Rechnungswerkzeugen wird das Go-Tool kairos vorgestellt, das aus hledger-timedot-Dateien Rechnungen erzeugt

UI, Reporting, Workflows und Bibliotheken

  • Zu den Werkzeugen für Kursabfragen gehören Beancounts bean-price, hledger-stockquotes, ledger-get-prices, pricehist sowie Tools für Aktien- und Wechselkursabfragen auf Basis von Yahoo Finance
  • Reporting-Werkzeuge decken Budgets, Vermögensanalyse, Differenzberichte, internen Zinsfuß, Diagramme, Sankey, PDF-Ausgabe und Kapitalgewinnberechnung ab
  • Werkzeuge zur Zeiterfassung umfassen org, Taskwarrior-Hooks, Toggl-CSV, timeclock-Konvertierung und Beispiele für hledger-basierte Zeiterfassung
  • Terminal-UIs wie hledger add, hledger-ui, hledger-iadd, bean-add, ledger xact, puffin und regdel unterstützen die Eingabe, Abfrage und Bearbeitung von Buchungen
  • GUI-, Web- und Mobile-UIs sind ebenfalls als eigene Werkzeuge verlinkt
    • Web: fava, hledger-web, Paisa, BeanHub
    • Mobil: Beancount Mobile CE, beancount-mobile, NanoLedger, cashier, cone, MoLe
    • GUI: fruit-credits, Ledgera, Prudent, Surebeans und weitere
  • Der Workflow-Abschnitt behandelt Setups zum Erzeugen von hledger-Journals aus CSV sowie Docker-basierte Konfigurationen zum Tracking und Reporting traditioneller Finanzen und Krypto-Finanzen
  • Im Bibliotheksabschnitt sind Entwicklungsbausteine wie der Beancount-Parser, die BeanHub API, hledger-lib, die hledger-web JSON API, node-hledger und pyhledger gesammelt, um PTA-Dateien zu parsen, abzufragen, zu reporten und in andere Systeme zu integrieren

1 Kommentare

 
GN⁺ 2024-09-17
Hacker-News-Kommentare
  • Systeme, die sofort eine strikte Kategorisierung verlangen, passen nicht zu jedem. In einem früheren Unternehmen nutzten wir einen zweistufigen Ansatz: Zuerst wurde in iPhone-Notizen kurz etwas wie -50 Alice tools, +20 Bob returned loan eingetragen, später wandelte ein Skript das anhand von Datum, Schlüsselwörtern, Gegenpartei und internen Analyseposten in eine Vorlage für die doppelte Buchführung um
    Was das Skript nicht erkannte, wurde manuell klassifiziert und bei Bedarf zur Regelliste hinzugefügt; außerdem gab es eine personenspezifische Zuordnungsliste, damit Alice und Bob nicht denselben Wortschatz verwenden mussten
    Wenn Geld den Besitzer wechselt, stehen Leute oft gerade an, fahren Auto oder sind im Gespräch — schwer vorstellbar, dass sie dann jedes Mal ein Format wie Cat1:cat2:cat3 ausfüllen. Am Ende kehrt man wahrscheinlich doch wieder zu kurzen Notizen oder Chats zurück oder versucht eher am Wochenende als direkt am Tagesende, es „aus dem Gedächtnis“ nachzutragen

    • Das klingt am Ende auch einfach nach Plain-Text-Buchhaltung. Ich arbeite fast genauso, nur dass ich nicht direkt in die Hauptbuchdatei schreibe, sondern alles erst in KMyMoney erfasse und dann per Skript in eine ledger-Datei umwandle
      Bei textbasierten Tools kann man den gewünschten Workflow frei bauen, etwa indem man ein Skript anhängt, das iPhone-Notizen entgegennimmt und ins ledger-Format umwandelt — deshalb wirkt es etwas seltsam, das als Kritik zu sehen
    • Wir tippen unsere ledger-Datei auch nicht direkt ein; statt Freiform-Notizen zu konvertieren, schreiben wir in das Notizfeld der Banking-App und der Zoho-Spesenabrechnungs-App, welches Konto angewendet werden soll
      Einmal pro Quartal laden wir CSVs von Bankkonten, Kreditkarten und Zoho herunter, und ein Ruby-Skript schaut ins Notizfeld und wandelt alles in eine ledger-Datei um. Das Skript und das Ergebnis müssen zwar leicht nachbearbeitet werden, aber zu über 95 % ist alles automatisiert
      Zusätzlich fügen wir der ledger-Datei Konsistenzprüfungen hinzu, etwa ob sie mit dem von der Bank gemeldeten Saldo übereinstimmt und ob Posten im aktuellen Zeitraum liegen
  • Seit dem Start in die Selbstständigkeit nutze ich nun seit fast 20 Jahren ledger-cli und bin damit sehr zufrieden, auch wenn es nicht perfekt ist. Alles ist Plain Text, daher lässt es sich skripten, in VIM lesen und leicht auswerten
    Die ledger-Datei eines meiner heute noch laufenden Unternehmen ist eine 2-MB-Textdatei mit Transaktionen seit 2016. In einer sehr feinen Unterteilung von Konten/Kategorien habe ich nie großen Wert gesehen, aber für die Gesamtverfolgung war das Tool unverzichtbar
    Es hat auch Spaß gemacht, die von Tools wie ledger verwendete doppelte Buchführung zu lernen; rückblickend war das nicht schwer und wirkt wie eine lebenslang nützliche Fähigkeit

    • Ich nutze solche Tools noch nicht, aber da QuickBooks und meine Bank ein paar Transaktionen ausgelassen haben und ich das gerade bereinige, kam dieser Beitrag genau zum richtigen Zeitpunkt
      Für die Konto-/Kategoriestrategie richte ich mich nach den Ausgabenkategorien, die die kanadische Steuerbehörde auf der Steuererklärung verlangt. Anfangs hatte ich logische Kategorien wie Hosting-Kosten oder Prototyping-/Fertigungskosten angelegt, aber nach einigen Jahren des Rück-Mappings auf CRA-Kategorien wurde klar, dass eine Ausrichtung an den Steuerkategorien die Jahresendmeldung von Anfang an viel einfacher macht
    • Beim Verkauf meines Hauses schickte die Escrow-Gesellschaft im Rahmen der Abschlussabrechnung einen Erstattungsscheck über etwa 3.000 Dollar, aber ich habe diesen Scheck nie erhalten. Erst fünf Jahre später, als ich anfing, ledger-cli zu nutzen, fiel mir das auf
    • Eine Stimme für ledger. Es war das Beste, was ich bisher benutzt habe, und dass es skriptbar ist, ist enorm. Seit ich es nutze, ist meine Steuererfassung seit über zwei Jahren korrekt
    • Wenn ich länger darüber nachdenke, ist mein größtes Bedauern die allgemeine Plain-Text-Grenze des Fehlens von Anhängen. Ich habe ein persönliches System gebaut, das bestimmte Dateien referenziert, und sogar eine Mac-App erstellt, die beim Ablegen einer Datei auf eine Transaktion diese in einen bestimmten Ordner kopiert und die Transaktion taggt
      Wären die Daten in SQLite gespeichert, wäre das viel einfacher umzusetzen gewesen, aber dann ginge der Vorteil verloren, sie direkt im Texteditor bearbeiten zu können
  • Dank LLMs ist es viel einfacher geworden, Plain-Text-Buchhaltung konsequent durchzuhalten. Besonders beim Import von Kontoauszügen in hledger hilft das, manuelle Eingaben zu vermeiden
    Ich nutze eine JSON-Datei, die Banktransaktionen auf hledger-Konten abbildet; wenn es neue Transaktionen ohne Mapping gibt, erzeugt ein Python-Skript einen Prompt für Claude. Claude schaut auf die Kontoliste, schlägt ein Mapping für die neuen Transaktionen vor und gibt darauf basierend hledger-Buchungen zurück
    Danach gibt ein anderes Skript die hledger-Buchungen des Monats sauber formatiert aus, und nach ein paar Minuten Nacharbeit ist alles final. Selbst Mapping-Anweisungen, die früher ein fragiles Sammelsurium aus regulären Ausdrücken und if-Bedingungen gewesen wären, lassen sich nun in natürlicher Sprache formulieren

    • Hältst du LLMs für nicht fragil? Und deine Bankdaten an Anthropic zu schicken, ist auch ziemlich gewagt
  • Ich mochte beim Einsatz von Beancount den Lernprozess, das Schreiben von Import-Tools und die direkte Arbeit mit der Buchhaltung. Aber mein letzter Datenimport liegt fast ein Jahr zurück, und obwohl ich es monatlich machen wollte, ist es trotz recht viel Automatisierung lästig, weil es 30–60 Minuten dauert

    • Ich wünschte, Banken würden Datenexporte nicht so aktiv erschweren. Früher hatte ich ein Skript gebaut, das den Login-Prozess per OCR rückentwickelte und fehlerhafte Einträge bereinigte, aber der Wartungsaufwand war einfach zu hoch
      Als dann auch noch eine Bestätigung per Mobilgerät nötig wurde, habe ich einfach aufgegeben
    • Genau dieselbe Erfahrung habe ich mit GnuCash gemacht. Wenn man es wöchentlich macht, ist es okay, und 1–3 Wochen zu verpassen ist noch verkraftbar, aber danach wächst der Aufwand zum Aufholen schneeballartig
      Bei mir ist der letzte Import ebenfalls etwa ein Jahr her, und um wieder einzusteigen, fällt mir nur ein, es in kleine Stücke zu zerlegen und jeweils einen Monat über mehrere Tage hinweg hochzuladen
    • Wenn man mit etwas Unbehagen leben kann, ist Plaid einen Blick wert. Für den privaten Einsatz gab es eine ausreichend gute Teststufe, und bis zu 100 verbundene Konten waren möglich
      https://plaid.com/
    • Mit teller.io ist die Einrichtung deutlich einfacher als bei Plaid. Ich nutze es, um Chase-Bank- und Kreditkartenabrechnungen mit Google Sheets zu synchronisieren
  • Ich nutze ledger für Buchführung und Rechnungswesen privat und für mehrere LLCs. Wenn man sich im Terminal wohlfühlt, die CLI gut beherrscht und häufig mit vim oder emacs, den Grundlagen von sed/awk sowie bash/python/perl/ruby-Skripting arbeitet, ist es sehr wahrscheinlich deutlich zufriedenstellender als die aktuelle Arbeitsweise, ledger und die doppelte Buchführung zu lernen und darauf umzusteigen
    Zum schnellen Importieren von Transaktionen ist reckon nützlich: https://github.com/cantino/reckon
    Es ist auch gut, Probleme mit include aufzuteilen. bal --dc ist für US-Steuerberater vielleicht etwas vertrauter, aber viele verstehen offenbar nicht richtig, wie ledger mit negativen Zahlen umgeht, daher war es einfacher, ein paar Skripte zu schreiben, die in einen DR/CR-Stil umwandeln. Ich war erstaunt, wie schlecht die Buchhalter, mit denen ich zu tun hatte, mit Abstraktionen umgehen konnten

    • Den ersten beiden Tipps stimme ich zu. Der dritte scheint auch gut zu sein, aber ich habe ihn nie gebraucht
      Wenn ich nur einen Tipp ergänzen dürfte, dann diesen: Alles mit einem Makefile oder etwas Ähnlichem zusammenbinden. Oft gibt es viele nach Konten aufgeteilte Transaktionsdateien, und die Befehle, um die richtigen Dateien einzubinden, werden schnell lang
      Auch bei diversen Diagramm- und Zusammenfassungs-Skripten kann ich mir die genaue Syntax nie jedes Mal merken; mit make kann man sie dann einfach so aufrufen wie make cashflow, make balance 'A=Checking', make balance-plot 'A=retirement'
  • Ich habe mehrere Beiträge mit Praxisrezepten dazu geschrieben, wie man Ledger über das grundlegende Tutorial hinaus in komplexeren Situationen effektiv nutzt: https://felixcrux.com/blog/ledger-practices

    • Als jemand, der ledger intensiv nutzt, sind diese Rezepte hervorragend. Ich verwende ein Muster, bei dem Kunden und Lieferanten detailliert nachverfolgt werden und Auszahlungen bzw. Einnahmen bestimmten Projekten und deren Unterkategorien zugeordnet werden müssen
      Beim Import von Banktransaktionen ordne ich sie zunächst einem Konto mit dem Namen der Gegenpartei zu, und ein Skript erzeugt mit ledger print eine zweite Journaldatei pro Gegenpartei, kehrt die Originaltransaktion um und legt sie vorläufig unter dem Projekt Unknown und einem Unterkonto der Kategorie Unknown ab
      Danach gleicht der Buchhalter die Transaktion einer bestimmten Rechnung zu und ordnet sie einem Project:Category-Konto zu; falls nötig, wird eine einzelne Zahlung auf mehrere Projekte/Kategorien aufgeteilt. Wenn man alle Banktransaktions-Journale und Gegenparteien-Journale einbindet, kann man mit ledger bal prüfen, ob die Buchungen vollständig verarbeitet wurden
  • Plain-Text-Accounting ist großartig, aber ich denke, die größte Hürde für viele Menschen ist es, Bankdaten in einem Standardformat herunterzuladen
    Banken werden kaum mehr als CSV oder Excel aktiv unterstützen, und Datenaggregations-Plattformen wie Yodlee oder Plaid sind nicht gerade freundlich zu Open-Source- oder Hobby-Nutzern
    Früher gab es eine Firma namens Wesabe(https://en.wikipedia.org/wiki/Wesabe), die Software für Banksynchronisierung auf dem Desktop gebaut hat. Sie wurde faktisch von Mint.com verdrängt, aber ich denke noch immer an diesen Ansatz, und er scheint auch im Open-Source-Bereich machbar zu sein

    • hledger hat ein Werkzeug, das ziemlich beliebige CSV-Dateien in Transaktionen umwandeln kann: https://hledger.org/1.40/hledger.html#csv
      Ich habe es noch nicht ausprobiert, aber nachdem ich über mehrere Tage verteilt vier Stunden damit verbracht habe, jemandem mit den Bankanbindungen einer SaaS-Buchhaltungsfirma zu helfen, wäre ich durchaus bereit, Zeit dafür zu investieren
      Jedes Mal, wenn man Transaktionen abgleicht, kämpft man mit einem System, in das man weder hineinsehen noch das man selbst reparieren kann. Inzwischen zweifle ich daran, ob es den investierten Aufwand wert ist, und würde lieber direkt mit CSV arbeiten, wenn es nur brauchbare Tools dafür gibt. Übrigens hat die Firma keine Rückerstattung angeboten und meinte, das sei „normal“
    • Ich habe kürzlich Paisa entdeckt; das ist im Grunde eine ordentliche UI auf Basis von ledger-cli. Der Import ist sehr bequem: Man lädt Dateien wie CSV hoch, sieht sich eine Vorschau an und schreibt dann ein Skript, das jede Zeile in das Ledger-Textformat umwandelt
      Es gibt auch Linting, und wenn einem das Ergebnis gefällt, kann man das Skript speichern und jederzeit erneut für den Import verwenden. Für Dinge wie Aktienverfolgung unterstützt es auch das Herunterladen von Kursdaten
      Die Diagramme sind für meinen Geschmack nicht allgemein genug, daher exportiere ich die Daten woandershin, aber für die Dateneingabe ist es hervorragend
    • Ich hatte schon Fälle, in denen die gesetzlich von der Bank bereitgestellten PDF-Auszüge und die CSV nicht übereinstimmten. Außerdem enthalten CSV-Dateien fast nie Saldodaten
      Deshalb lade ich die PDFs herunter und extrahiere die Daten daraus, was unnötig schmerzhaft ist. Um maschinenlesbare PDFs bereitzustellen, müssten sie nur ein paar einfache Regeln einhalten, damit man 3–4 Transaktionsfelder und einige Auszugsfelder wie Datum und Saldo ohne fragile Heuristiken extrahieren kann
      Ein gebrandetes, menschenlesbares PDF und ein maschinenlesbares PDF schließen sich nicht aus
    • Im Vereinigten Königreich gibt es mit Open Banking eine Standard-API für den Zugriff auf Bankdaten: https://www.openbanking.org.uk/
    • In meinem Land kommen alle Transaktionen per SMS, also habe ich mit Tasker ein System gebaut, das die SMS abfängt und in einer CSV-Datei speichert. Diese CSV wurde per SyncThing in einen Ordner auf dem Desktop synchronisiert
      Ich wollte diese Daten später verarbeiten und in mein Buchhaltungssystem einspielen, habe es aber nicht umgesetzt, und als dann mein Handy kaputtging, habe ich auch die Tasker-Aktionen verloren. Mir fehlt die Motivation, das noch einmal nachzubauen
  • Die zugehörige Domain existiert noch. Beitrag von 2023: https://news.ycombinator.com/item?id=36022005, Beitrag von 2021: https://news.ycombinator.com/item?id=28420797, Beitrag von 2016: https://news.ycombinator.com/item?id=11164330
    Weitere Erwähnungen des Konzepts gibt es unter https://hn.algolia.com/?q=Plain+Text+Accounting

  • Ich frage mich, wie andere Plain-Text-Buchhaltungstools tatsächlich nutzen. Nutzen sie sie, um Ausgabengewohnheiten zu verstehen und ihr Verhalten zu ändern, zum Verfolgen von Kosten, Einnahmen und Nettovermögen, oder ist gerade der ordentliche Prozess an sich das Reizvolle?
    Jedes Mal, wenn ich dieses Thema sehe, verspüre ich gleichzeitig den Drang, völlig darin einzutauchen, und Schuldgefühle, weil ich frühere Versuche nicht durchgehalten habe. Im Moment überwiegt das schlechte Gewissen, weil ich mein persönliches Hauptbuch seit anderthalb Monaten nicht aktualisiert habe.
    Am Ende bin ich mir nicht sicher, warum ich das überhaupt nutze, sodass es sich mit der Zeit so anfühlt, als würde ich Transaktionen nur um des Aufzeichnens willen erfassen.

    • Ich nutze es immer für spontane Gruppenabrechnungen. In Situationen wie einer Reise zu dritt ist es viel einfacher, die Kosten noch am selben Tag oder später in der Woche aufzuteilen, und man kann gegenseitige Schulden einfach ansammeln und bei Bedarf ausgleichen. Solche chaotischen Ausgaben sind auf andere Weise sehr schwer nachzuverfolgen.
      Bei Geschäftsausgaben ist es ähnlich. Ich bezahle Geräte oder Services mit meiner Karte und reiche sie später ein, um das Geld bar oder per Überweisung zurückzubekommen. In manchen Ländern oder Unternehmen funktioniert das allerdings nicht.
      Bei meinen persönlichen Alltagsausgaben brauche ich keine Buchhaltung, weil ich sie durch die Bank und aus Erfahrung ohnehin kenne. Es braucht eine finanzielle Motivation, keine emotionale. Wenn ich weiß, dass beim Aufgeben der Buchhaltung ein Freund Hunderte Dollar an Getränkekosten verlieren würde oder die Firma ein HDMI-Kabel gratis bekäme, trage ich den Betrag ohne Zögern ein. Warum persönliche Buchhaltung bei mir nicht gut funktioniert, liegt daran, dass ich dabei nicht Geld verliere, sondern nur Analyse.
    • Ich bin selbstständig und nutze Beancount für Geschäftskonten und mein Aktienportfolio. Mir gefällt der strengere Ansatz, und Fava als Web-UI ist praktisch für Berichte und Visualisierungen.
      Ich habe auch ein paar Skripte, die Dinge wie den Import von Wise-Transaktionen oder das Verfolgen von Wechselkursen automatisieren. Für tägliche persönliche Ausgaben oder Budgetierung habe ich aber nicht genug Disziplin.
    • Ich nutze es nicht als Motivationswerkzeug, um meine Ausgabengewohnheiten zu ändern, aber ich halte gerne Aufzeichnungen über alle Konten und Vermögenswerte. Das hilft mir, meinen gesamten Finanzstatus besser zu verstehen, und ich lege innerhalb eines Bargeld-Sparkontos virtuelle Konten an, um Salden für zurückgelegte Posten wie Autowartung oder Versicherungen aufzuteilen.
    • Ich nutze hledger für mehrere Zwecke. Ich verfolge offene Kundenforderungen, kategorisiere Ausgaben wie Lebensmittel, Essen gehen, Bücher und Zeitschriftenabos, sehe aktuelle Salden von Konten in mehreren Währungen, verfolge an andere verliehenes Geld und Geschenke sowie virtuelle Umschläge für Sparziele wie Reisen, Geschenke und Investitionen.
      Es hilft mir sehr dabei, mein Verhalten beim Auswärtsessen zu reduzieren: Ich sehe, wie viel ich täglich dafür verschwende, und rechne aus, welchen Zinseszinseffekt derselbe Betrag in einem Indexfonds gehabt hätte. Außerdem kann ich offene Kundenforderungen von tatsächlichem Cashflow und Cashflow auf Basis erwarteter Einnahmen unterscheiden.
      Indem ich den Saldo meines Sparkontos gedanklich in Anteile wie „40 % Investitionsziel, 1 % Geschenke“ aufteile, gebe ich beim Anblick eines hohen Guthabens seltener impulsiv Geld aus. Ich habe auch ein Programm, das Diagramme zum Vermögenswachstum sowie zu Zu- und Abnahmen von Ausgaben nach Kategorien erstellt, dazuschreibt, ob die Veränderung einen Nettonutzen im Leben hatte, und alles als Webseite ausgibt; das nutze ich jedes Jahr, wenn ich die nächsten Pläne festlege.
      Ich habe außerdem ein Python-Skript, das ledger-Dateien in Excel umwandelt und sie für die jährliche Steuererklärung an den Steuerberater schickt. Für das Geschäft führe ich eine separate ledger-Datei, pflege sie aber nicht vollständig von Hand; ich exportiere Daten aus der Software des Steuerberaters und rechne sie zu Hause selbst nach.
      Im Unternehmen nutze ich es für Cashflow-Prognosen, etwa wie stark die Ausgaben mit steigendem Umsatz wachsen werden, zur Erkennung von Ausreißern bei Ausgaben nach Abteilungen, für Entscheidungen, ob wir mehr einstellen oder das Marketingbudget erhöhen sollten, und zur Berechnung von Kennzahlen wie ROIC.
      Die doppelte Buchführung hilft dabei, Bankauszüge zu importieren, daraus ein ledger zu erzeugen und buchhalterische Abweichungen aufzuspüren. Ich trenne Konten nach Verwendungszweck wie diskretionäre Ausgaben, Mitarbeiter-Benefits und betriebliche Inputs und lasse sie wöchentlich vom Hauptkonto auffüllen, um Unregelmäßigkeiten zu erkennen.
      Früher hatte ich einmal einen Steuerberater, der nicht transparent war und fiktive Ausgaben in die Bücher aufnahm, sodass es so aussah, als hätte er viel Steuern gespart; am Ende landete ich vor Gericht und musste hohe Strafen und Verzugszuschläge zahlen. Seitdem vertraue ich Steuerberatern nicht mehr blind und prüfe alles zwingend nach.
      Es gibt viele Automatisierungsskripte, die Stripe, Bankauszüge und die Bücher des Steuerberaters importieren, und ich gleiche sie mit Python miteinander ab, um Unstimmigkeiten zu finden. Als Programmierer passt Plain-Text-Buchhaltung gut zu mir, und ich habe über Jahre mein eigenes System auf hledger aufgebaut.