Die Plain-Text-Buchhaltung entlehnt Begriffe aus der doppelten Buchführung und fügt einige wenige Beancount-eigene Wörter hinzu. Dieses Glossar definiert die Begriffe, denen Sie beim Lesen dieser Dokumentation oder Ihrer eigenen Hauptbuchdatei begegnen werden, jeweils mit einem kurzen Beispiel, wo es hilfreich ist. Jeder Eintrag hat einen eigenen Link, sodass Sie einen Teamkollegen direkt zu einer Definition führen können.
Konto (Account)
Ein Konto ist ein benannter Behälter, der einen einzelnen Werteflusses verfolgt. Es
wird als eine durch Doppelpunkte getrennte Hierarchie unter einem von fünf
Wurzeltypen geschrieben: Assets, Liabilities, Equity, Income oder
Expenses. Die Hierarchie ist die gesamte Organisationsstruktur Ihrer Bücher –
Assets:US:BofA:Checking und Expenses:Food:Restaurant werden automatisch sortiert
und summiert. Jedes Konto muss deklariert werden, bevor es verwendet wird. Siehe
Beancount Sprachsyntax für die Namensregeln.
Periodengerechte Buchhaltung (Accrual basis)
Die periodengerechte Buchhaltung erfasst Einnahmen, wenn sie erwirtschaftet werden, und Ausgaben, wenn sie anfallen, unabhängig davon, wann das Geld tatsächlich fließt. Die zahlungsbasierte Buchhaltung (Cash-Basis Accounting) tut das Gegenteil: Sie erkennt beides erst an, wenn das Geld den Besitzer wechselt. Die periodengerechte Buchhaltung ergibt ein realistischeres Bild der Leistung einer Periode, weshalb eine Rechnung, die Sie im März versendet haben, auch zum März gehört, selbst wenn der Kunde im Mai zahlt.
Amortisation / Abgrenzung (Amortization)
Die Amortisation verteilt eine einzelne große Zahlung auf die Zeiträume, die sie tatsächlich abdeckt, sodass jeder Monat seinen gerechten Anteil der Kosten trägt. Eine im Januar bezahlte jährliche Versicherungsprämie ist eine Ausgabe aller zwölf Monate, nicht nur des Januars. In Beancount schreiben Sie entweder die aufgeteilten Buchungsposten von Hand oder generieren sie mit einem Plugin – siehe Amortize.
Saldenbestätigung / Kontensaldo-Prüfung (Balance assertion)
Eine Saldenbestätigung ist eine balance-Direktive, die angibt, wie hoch der Saldo
eines Kontos zu Beginn eines bestimmten Datums sein muss. Dadurch wird Ihr
Kontoauszug zu einer automatischen Prüfung Ihrer Bücher. Weicht der berechnete
Saldo ab, meldet Beancount lautstark einen Fehler mit den erwarteten und
tatsächlichen Beträgen. Das Einfügen einer Saldenbestätigung pro Konto und
Auszug ist die mit Abstand günstigste Methode, um ein vertrauenswürdiges
Hauptbuch zu führen.
2026-01-01 balance Assets:US:BofA:Checking 4,321.00 USDBeancount
Beancount ist ein Open-Source-System für die doppelte Buchführung, dessen Hauptbuch eine Klartextdatei (Plain-Text-Datei) ist, die Sie in einem beliebigen Texteditor bearbeiten und mit einem Kommandozeilentool validieren. Es bietet eine strenge, analysierbare Syntax, eine Abfragesprache und eine Weboberfläche – ohne Datenbank oder proprietäres Dateiformat. Da das Hauptbuch Text ist, lebt es problemlos neben Ihrem Code in Git. Beginnen Sie mit Einführung in Beancount.
Beancount-Abfragesprache (Beancount Query Language)
Die Beancount-Abfragesprache, üblicherweise als BQL abgekürzt, ist die SQL-ähnliche
Sprache, mit der Sie Fragen an Ihr Hauptbuch stellen. Sie arbeitet auf den
analysierten Direktiven und nicht auf einer Datenbank, sodass
SELECT account, sum(position) WHERE year = 2026 sofort aus derselben Datei
antwortet, die Sie bearbeiten. Lesen Sie den
Leitfaden zur Abfragesprache für die
vollständige Grammatik.
Buchungsmethode (Booking method)
Eine Buchungsmethode ist die Regel, die Beancount anwendet, wenn ein Abgang
auswählen muss, welche vorhandenen Bestandslose (Lots) abgebaut werden sollen. Die
Möglichkeiten sind STRICT (Sie müssen das Los selbst identifizieren), FIFO,
LIFO, AVERAGE und NONE, festgelegt pro Konto in dessen open-Direktive. Die
gewählte Methode verändert Ihre realisierten Kapitalgewinne. Wählen Sie also die,
die Ihre Steuerbehörde erwartet, und behalten Sie sie stabil bei.
Kontenplan (Chart of accounts)
Ein Kontenplan ist die vollständige Liste der Konten, die Ihr Hauptbuch verwendet,
zusammen mit der Struktur, die sie organisiert. In Beancount gibt es keine
separate Kontenplandatei – die Menge der open-Direktiven ist Ihr Kontenplan.
Eine gute Gestaltung zu Beginn erspart später viel Umbenennung; siehe
Branchenspezifische Konfigurationen für
Anfangspunkte.
Close-Direktive (Close directive)
Eine close-Direktive markiert das Datum, nach dem ein Konto nicht mehr verwendet
werden darf. So wird ein Bankkonto oder ein abbezahlter Kredit stillgelegt, ohne
dessen Historie zu löschen. Vergangene Transaktionen bleiben gültig und
berichtsfähig; nur neue Buchungen werden abgewiesen. Das Schließen ungenutzter
Konten hält Berichte lesbar, wenn ein Hauptbuch altert.
2026-03-31 close Assets:US:OldBank:CheckingWert / Anlageklasse (Commodity)
Eine Anlageklasse (Commodity) ist jede Werteinheit, die Ihr Hauptbuch verfolgt –
eine Währung wie USD, ein Aktienticker wie AAPL, ein Krypto-Asset wie BTC
oder etwas Selbstdefiniertes wie URLAUBS-TAGE. Beancount rechnet niemals
automatisch zwischen Anlageklassen um, daher ist ein Betrag stets eine Zahl,
gepaart mit der Anlageklasse, in der er denominiert ist. Eine optionale
commodity-Direktive erlaubt es, Metadaten wie einen Namen oder eine
Anlageklassenkategorie hinzuzufügen.
Anschaffungskosten / Kostenbasis (Cost basis)
Die Kostenbasis (Cost basis) ist der tatsächlich für einen Bestand gezahlte Betrag,
aufgezeichnet in der Währung, mit der Sie gezahlt haben, und zusammen mit dem
Bestand geführt, solange Sie ihn besitzen. Beancount schreibt sie in geschweiften
Klammern – 10 AAPL {150.00 USD} bedeutet zehn Aktien, erworben zu 150 Dollar pro
Stück. Da die Basis mit der Position reist, ergeben sich die
Kapitalerträge/Kapitalgewinne bei einem Verkauf automatisch aus der Rechnung.
Siehe Bestandsverwaltung.
Direktive (Directive)
Eine Direktive ist eine mit einem Datum versehene Anweisung in einer
Beancount-Datei, und Direktiven sind alles, was ein Hauptbuch enthält. Jede Zeile,
die mit einem Datum beginnt, ist eine solche: open, close, balance, price,
note, document, pad, event, commodity und die Transaktion selbst.
Beancount sortiert die Direktiven vor der Verarbeitung nach Datum, sodass Sie sie
in der Reihenfolge belassen können, die am besten lesbar ist.
Doppelte Buchführung (Double-entry bookkeeping)
Doppelte Buchführung ist die Praxis, jedes wirtschaftliche Ereignis als mindestens zwei korrespondierende Buchungen zu erfassen, sodass die Beträge stets in der Summe Null ergeben. Geld wird weder geschaffen noch vernichtet – es bewegt sich nur zwischen Konten. Deshalb erkennt diese Technik Fehler, die eine einzige Listenspalte niemals aufdecken würde. Beancount setzt diese Regel streng durch: Eine Transaktion, deren Buchungen nicht ausgeglichen sind, ist ein Fehler, keine Warnung.
Umschlagbudgetierung (Envelope budgeting)
Die Umschlagbudgetierung (Envelope budgeting) legt Geld für einen Zweck beiseite, bevor Sie es ausgeben, sodass jede Kategorie ihr eigenes Limit hat, anstatt um einen gemeinsamen Saldo zu konkurrieren. Der Name stammt von den Papierumschlägen, in die man früher am Zahltag Bargeld steckte. In einem Plain-Text-Hauptbuch modellieren Sie Umschläge mit eigenen Konten oder Budgetdirektiven – siehe Budgets.
Fava
Fava ist die Weboberfläche für Beancount: Diagramme, Bilanzen, Gewinn- und Verlustrechnungen, ein Abfrageeditor und ein Eingabeformular, bereitgestellt aus Ihrer Hauptbuchdatei. Es ist hauptsächlich lesend und läuft lokal, sodass es verändert, wie Sie Ihre Bücher sehen, ohne zu verändern, wie Sie sie erfassen. beancount.io hostet eine verwaltete Version zusammen mit seinen eigenen Werkzeugen; der Leitfaden UI-Funktionen erklärt, was Sie dort tun können.
Bestand / Inventar (Inventory)
Ein Bestand (Inventory) ist die Sammlung von Positionen, die ein Konto derzeit hält, jede mit ihrer eigenen Anlageklasse und, wo zutreffend, ihren eigenen Anschaffungskosten und ihrem Anschaffungsdatum. Ein Depotkonto, das dieselbe Aktie dreimal gekauft hat, hält drei separate Lose in einem Bestand, nicht eine einzige gemischte Zahl. Die getrennte Haltung von Losen ermöglicht erst genaue Gewinnberechnungen.
Journal
Das Journal ist die chronologische Liste von allem, was in Ihren Büchern passiert ist – der rohe Strom von Transaktionen in Datumsreihenfolge, vor jeder Gruppierung oder Zusammenfassung. Es ist die Ansicht, die Sie überfliegen, wenn Sie beantworten wollen: "Was habe ich im März eigentlich gemacht?". Die Journal-Seite von Fava ist in der Regel der schnellste Ort, um einen falsch kategorisierten Eintrag zu entdecken.
Hauptbuch (Ledger)
Ein Hauptbuch (Ledger) ist der vollständige Satz von Buchhaltungsaufzeichnungen für eine Entität, was in Beancount Ihre Plain-Text-Datei (plus alles, was sie einbindet) bedeutet. Das Wort dient gleichzeitig als Name für das gesamte Kontenbuch und den Namen der Datei selbst. Da es Text ist, kann ein Hauptbuch wie Quellcode durch Diff-Ansichten verglichen, überprüft, verzweigt und zusammengeführt werden.
Los / Stückelung (Lot)
Ein Los (Lot) ist ein spezifischer Erwerb einer Anlageklasse, identifiziert durch seine Anschaffungskosten und sein Anschaffungsdatum. Der Kauf desselben ETFs im Januar und noch einmal im Juni erzeugt zwei Lose, und ein späterer Verkauf bedeutet, auszuwählen, welches Los Sie verkaufen. Lose sind der Grund, warum Beancount realisierte Gewinne exakt berechnen kann, anstatt sie zu schätzen.
2026-06-15 * "Broker" "Buy VTI"
Assets:US:Broker:VTI 5 VTI {260.00 USD, 2026-06-15}
Assets:US:Broker:Cash -1,300.00 USDErläuterung / Beschreibung (Narration)
Die Erläuterung (Narration) ist die Freitextbeschreibung, wofür eine Transaktion bestimmt war. Sie wird als zweiter Teil in Anführungszeichen in der Transaktionszeile geschrieben. Sie ist für Menschen gedacht: "Monatsmiete", "Lebensmittel und Haushalt". Beancount parst sie nicht, aber sie ist das, was Sie lesen werden, wenn der Eintrag in sechs Monaten keinen Sinn mehr ergibt.
Open-Direktive (Open directive)
Eine open-Direktive deklariert ein Konto, das Datum, ab dem es nutzbar ist, und
optional die Anlageklassen, die es halten darf, sowie die Buchungsmethode, die es
verwendet. Beancount verlangt, dass jedes Konto vor seiner ersten Buchung eröffnet
wird. Dadurch wird verhindert, dass ein Tippfehler stillschweigend ein brandneues
Konto erstellt. Die Einschränkung der erlaubten Anlageklassen verwandelt eine
ganze weitere Klasse von Fehlern in Fehlermeldungen.
2026-01-01 open Assets:US:Broker:VTI VTI "FIFO"Pad (Pad)
Eine pad-Direktive teilt Beancount mit, den Betrag einzufügen, der erforderlich
ist, damit die nächste Saldenbestätigung auf einem Konto erfolgreich ist, und
bucht die Differenz auf ein zweites Konto. Sie existiert für genau einen Zweck:
ein Hauptbuch teilweise im Laufe der Zeit zu eröffnen, ohne Jahre der Historie
rekonstruieren zu müssen. Das Auffüllen über diese anfängliche Einrichtung hinaus
bedeutet in der Regel, dass ein echter Fehler übertüncht wird.
Zahlungsempfänger / Auftraggeber (Payee)
Der Zahlungsempfänger/Auftraggeber (Payee) ist derjenige, mit dem Sie die
Transaktion durchgeführt haben. Er wird als erster Teil in Anführungszeichen in
einer Transaktionszeile geschrieben. Konsistente Zahlungsempfänger – immer
"Whole Foods", niemals mal "WholeFoods" – ermöglichen erst
zahlungsempfängerbasierte Berichte und automatisierte Importprogramme.
Beancount behandelt den Zahlungsempfänger als optional; eine Transaktion kann nur
eine Erläuterung enthalten.
Plain-Text-Buchhaltung (Plain-text accounting)
Plain-Text-Buchhaltung ist die Praxis, Ihre Bücher in einer für Menschen lesbaren Textdatei unter Versionskontrolle zu führen, verarbeitet mit Open-Source Kommandozeilenwerkzeugen. Sie tauscht eine Punkt-und-Klick-Oberfläche gegen Langlebigkeit, Prüfbarkeit und Automatisierung: Ihre Daten überleben jeden Anbieter, jede Änderung ist ein überprüfbarer Diff, und jedes Skript kann sie lesen. Beancount, Ledger und hledger sind die drei bekanntesten Implementierungen.
Plugin
Ein Plugin ist ein Python-Modul, das Beancount während der Verarbeitung Ihrer
Datei lädt. Es ermöglicht, Direktiven hinzuzufügen, umzuwandeln oder zu
validieren, bevor Berichte erstellt werden. Plugins sind die Art und Weise, wie
Vorhersagen, Amortisationspläne und benutzerdefinierte Prüfungen implementiert
werden, ohne die Kernsprache zu ändern. Sie aktivieren eines mit einer
plugin-Zeile am Anfang Ihres Hauptbuchs – der Leitfaden zum
Forecast-Plugin führt anhand eines echten Beispiels
durch das Vorgehen.
Buchungsposten (Posting)
Ein Buchungsposten (Posting) ist eine Seite/ein Bein einer Transaktion: ein Konto, ein Betrag und optional ein Einstandspreis oder Preis. Eine Transaktion benötigt mindestens zwei Buchungsposten, und deren Beträge müssen in der Summe Null ergeben. Höchstens ein Buchungsposten darf seinen Betrag leer lassen; in diesem Fall berechnet Beancount den ausgleichenden Wert für Sie.
Preis-Direktive (Price directive)
Eine price-Direktive zeichnet den Wechselkurs zwischen zwei Anlageklassen zu
einem Datum auf. So kann Beancount einen Bestand in seinen Marktwert in Berichten
umrechnen. Preise sind reine Referenzdaten – sie bewegen niemals Geld und
erscheinen niemals in einer Transaktion. Ohne sie ist ein Portfolio zwar zu
Anschaffungskosten ausgeglichen, kann aber nicht zum Marktwert bewertet werden.
2026-06-30 price VTI 271.40 USDAbstimmung (Reconciliation)
Abstimmung (Reconciliation) ist der Vorgang, der nachweist, dass Ihre Bücher mit einer externen Aufzeichnung wie einem Konto- oder Depotauszug übereinstimmen. In der Plain-Text-Buchhaltung ist dies weitgehend mechanisch: Fügen Sie für jedes Auszugsdatum eine Saldenbestätigung hinzu und lassen Sie das Werkzeug prüfen, ob die Zahlen übereinstimmen. Ein Hauptbuch, das jeden Monat sauber abgestimmt ist, ist eines, aus dem Sie ohne Bedenken Steuererklärungen erstellen können.
Tags und Links
Tags und Links sind die beiden Arten von Labels, die Sie an Transaktionen heften,
um sie außerhalb der Kontenhierarchie zu gruppieren: ein Tag mit # markiert ein
Thema wie #reise-japan, und ein Link mit ^ bindet zugehörige Einträge wie
^rechnung-2026-014 zusammen. Tags beantworten "Zeig mir alles in dieser
Kategorie"; Links beantworten "Zeig mir die Einträge, die zu diesem einen Ereignis
gehören". Beide sind in Fava filterbar und in BQL abfragbar – siehe
Filtern und Suchen.
Transaktion (Transaction)
Eine Transaktion ist ein datiertes wirtschaftliches Ereignis zusammen mit den
Buchungsposten, die es erfassen, und sie ist die Direktive, die Sie am häufigsten
schreiben werden. Sie trägt eine Markierung (* für bestätigt, ! für
prüfungsbedürftig), einen optionalen Zahlungsempfänger, eine Erläuterung und zwei
oder mehr Buchungsposten, deren Beträge in der Summe Null ergeben. Alles andere in
einer Beancount-Datei dient dazu, Transaktionen zu deklarieren, zu prüfen oder zu
kommentieren.
2026-02-14 * "Blue Bottle" "Coffee with Dana"
Expenses:Food:Coffee 9.50 USD
Assets:US:BofA:Checking -9.50 USDImmer noch auf ein Wort gestoßen? Das Hilfezentrum listet alle Leitfäden dieser Website auf, und die Kurzanleitung stellt die Syntax für jede Direktive Seite an Seite dar.