Die Buchführung im Klartext entlehnt Vokabular aus der doppelten Buchführung und fügt eine Handvoll Beancount-spezifischer Wörter hinzu. Dieses Glossar definiert die Begriffe, auf die Sie beim Lesen dieser Dokumentation oder Ihrer eigenen Journaldatei stoßen, jeweils mit einem kurzen Beispiel, wo es hilft. Jeder Eintrag hat einen eigenen Link, damit Sie einen Kollegen direkt auf eine Definition verweisen können.
Konto
Ein Konto ist ein benannter Behälter, der einen Wertstrom verfolgt, geschrieben als
eine durch Doppelpunkte getrennte Hierarchie unter einem von fünf Wurzeltypen: Assets,
Liabilities, Equity, Income oder Expenses. Die Hierarchie ist die gesamte
Organisationsstruktur Ihrer Bücher — Assets:US:BofA:Checking und Expenses:Food:Restaurant
sortieren und summieren automatisch. Jedes Konto muss vor seiner Verwendung deklariert
werden. Siehe Beancount-Sprachanleitung für die Namensregeln.
Periodengerechte Buchführung
Die periodengerechte Buchführung erfasst Einnahmen, wenn sie erwirtschaftet werden, und Ausgaben, wenn sie anfallen, unabhängig davon, wann das Geld tatsächlich fließt. Die kassenbasierte Buchführung macht das Gegenteil: Sie erkennt beides nur an, wenn Geld den Besitzer wechselt. Die periodengerechte Methode liefert ein wahreres Bild der Periodenleistung, weshalb eine im März versendete Rechnung zum März gehört, auch wenn der Kunde im Mai zahlt.
Abschreibung
Die Abschreibung verteilt eine einzelne große Zahlung über die Zeiträume, die sie tatsächlich abdeckt, sodass jeder Monat seinen fairen Anteil an den Kosten trägt. Eine jährliche Versicherungsprämie, die im Januar gezahlt wird, ist eine Ausgabe aller zwölf Monate, nicht nur des Januars. In Beancount schreiben Sie entweder die aufgeteilten Buchungen von Hand oder generieren sie mit einem Plugin — siehe Amortisieren.
Saldoprüfung
Eine Saldoprüfung ist eine balance-Direktive, die angibt, wie hoch der Saldo eines
Kontos zu Beginn eines bestimmten Datums sein muss, sodass Ihr Kontoauszug zu einer
automatischen Prüfung Ihrer Bücher wird. Wenn der berechnete Saldo um mehr als die
Toleranz der Prüfung abweicht, schlägt Beancount laut fehl, mit den erwarteten und
tatsächlichen Beträgen. Diese Toleranz beträgt eine Einheit der letzten von Ihnen
geschriebenen Dezimalstelle — 4.27 RGAGX akzeptiert alles von 4,26 bis 4,28 — und ein
~ vor der Währung setzt Ihre eigene. Eine Prüfung pro Konto und Kontoauszug zu
streuen, ist der günstigste Weg, ein Journal vertrauenswürdig zu halten.
2026-01-01 balance Assets:US:BofA:Checking 4,321.00 USDBeancount
Beancount ist ein Open-Source-System für doppelte Buchführung, dessen Journal eine Klartextdatei ist, die Sie in einem beliebigen Texteditor bearbeiten und mit einem Kommandozeilentool validieren. Es bietet eine strenge, parsebare Syntax, eine Abfragesprache und eine Weboberfläche, ohne Datenbank oder proprietäres Dateiformat. Da das Journal Text ist, lebt es problemlos in Git neben Ihrem Code. Beginnen Sie mit Einführung in Beancount.
Beancount-Abfragesprache
Die Beancount-Abfragesprache, meist als BQL abgekürzt, ist die SQL-ähnliche Sprache,
mit der Sie Ihrem Journal Fragen stellen. Sie läuft über die geparsten Direktiven
anstatt über eine 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
Eine Buchungsmethode ist die Regel, die Beancount anwendet, wenn eine Reduktion
auswählen muss, welche bestehenden Lose abgebaut werden. Beancount 3.2.3 akzeptiert
sieben Namen: STRICT (die Standardeinstellung, bei der Sie das Los selbst
identifizieren), STRICT_WITH_SIZE, NONE, FIFO, LIFO, HIFO und AVERAGE.
Setzen Sie eine pro Konto in dessen open-Direktive oder für die gesamte Datei mit
option "booking_method". Sechs der sieben sind implementiert: AVERAGE wird geparst,
wirft aber AVERAGE method is not supported, sobald eine Reduktion gebucht werden
muss. Die gewählte Methode ändert Ihre realisierten Kapitalgewinne, also wählen Sie
die, die Ihre Steuerbehörde erwartet, und halten Sie sie stabil.
Inventarverwaltung führt alle sieben über dieselben Lose aus
und veröffentlicht das Journal, das unter AVERAGE fehlschlägt.
Kontenplan
Ein Kontenplan ist die vollständige Liste der Konten, die Ihr Journal verwendet,
zusammen mit der Struktur, die sie organisiert. In Beancount gibt es keine separate
Kontenplan-Datei — die Menge der open-Direktiven ist Ihr Kontenplan. Eine gute
Gestaltung von Anfang an spart viel Umbenennung später; siehe
Branchenspezifische Einrichtungen für Ausgangspunkte.
Schließungsdirektive
Eine close-Direktive markiert das Datum, nach dem ein Konto nicht mehr verwendet
werden darf. So pensionieren Sie ein Bankkonto oder einen abbezahlten Kredit, ohne
seine Historie zu löschen. Vergangene Transaktionen bleiben gültig und berichtbar; nur
neue Buchungen werden abgelehnt. Das Schließen ungenutzter Konten hält Berichte lesbar,
während ein Journal altert.
2026-03-31 close Assets:US:OldBank:CheckingWertpapier
Ein Wertpapier ist jede Werteinheit, die Ihr Journal verfolgt — eine Währung wie USD,
ein Aktienticker wie AAPL, ein Krypto-Asset wie BTC oder etwas, das Sie erfinden,
wie VACATION-DAYS. Beancount konvertiert niemals hinter Ihrem Rücken zwischen
Wertpapieren, daher ist ein Betrag immer eine Zahl, gepaart mit dem Wertpapier, in dem
er denominiert ist. Eine optionale commodity-Direktive ermöglicht es Ihnen, Metadaten
wie einen Namen oder eine Anlageklasse anzuhängen.
Anschaffungskosten
Anschaffungskosten sind das, was Sie tatsächlich für einen Bestand gezahlt haben,
aufgezeichnet in der Währung, mit der Sie bezahlt haben, und neben dem Bestand
mitgeführt, solange Sie ihn besitzen. Beancount schreibt sie in geschweiften Klammern —
10 AAPL {150.00 USD} bedeutet zehn Aktien, erworben zu je 150 Dollar. Doppelte
geschweifte Klammern machen die Zahl zum Gesamtbetrag statt zum Einzelpreis, also
10 AAPL {{1,500.00 USD}} erfasst dasselbe Los. Da die Basis mit der Position reist,
ergeben sich Kapitalgewinne aus der Arithmetik beim Verkauf. Siehe
Inventarverwaltung.
Direktive
Eine Direktive ist eine Anweisung in einer Beancount-Datei, normalerweise datiert, und
Direktiven sind das, woraus ein Journal besteht. Zwölf Arten tragen ein Datum: open,
close, balance, price, note, document, pad, event, commodity, custom,
query und die Transaktion selbst. Einige tragen keines und wirken auf die Datei
anstatt auf einen Tag — option, include, plugin und das Paar pushtag/poptag.
Beancount sortiert die datierten vor der Verarbeitung nach Datum, sodass Sie sie in
beliebiger Reihenfolge halten können, die am besten lesbar ist; eine undatierte wirkt
dort, wo sie geschrieben steht.
Doppelte Buchführung
Doppelte Buchführung ist die Praxis, jedes wirtschaftliche Ereignis als mindestens zwei passende Einträge zu erfassen, sodass ihre Gewichte immer null ergeben. Geld wird nie erzeugt oder vernichtet — es bewegt sich nur zwischen Konten, weshalb die Technik Fehler erkennt, die eine einspaltige Liste nie würde. Ein Gewicht ist der eigene Betrag eines Postens oder seine Kosten bzw. sein Preis, zurückgerechnet in eine Währung, sodass zwei Beine in verschiedenen Wertpapieren sich trotzdem aufheben. Beancount erzwingt die Regel streng: Eine Transaktion, deren Posten nicht ausgeglichen sind, ist ein Fehler, keine Warnung.
2026-03-02 * "Bank" "Buy euros"
Assets:US:BofA:EUR 100.00 EUR @ 1.08 USD
Assets:US:BofA:Checking -108.00 USDUmschlagbudgetierung
Die Umschlagbudgetierung legt Geld für einen Zweck beiseite, bevor Sie es ausgeben, sodass jede Kategorie ihr eigenes Limit hat, anstatt um einen gepoolten Saldo zu konkurrieren. Der Name stammt von den Papierumschlägen, die Menschen früher am Zahltag mit Bargeld füllten. In einem Klartext-Journal 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, serviert aus Ihrer Journaldatei. Es ist hauptsächlich lesend und läuft lokal, sodass es ändert, wie Sie Ihre Bücher sehen, ohne zu ändern, wie Sie sie erfassen. beancount.io hostet eine verwaltete Version neben seiner eigenen Werkzeugen; der UI-Funktionen-Leitfaden behandelt, was Sie dort tun können.
Inventar
Ein Inventar ist die Sammlung von Positionen, die ein Konto derzeit hält, jede mit ihrem eigenen Wertpapier und, wo relevant, ihren eigenen Anschaffungskosten und Erwerbsdatum. Ein Brokerage-Konto, das dieselbe Aktie dreimal gekauft hat, hält drei getrennte Lose in einem Inventar, nicht eine gemischte Zahl. Das getrennte Halten von Losen ist das, was genaue Gewinnberechnungen möglich macht.
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 durchsehen, wenn Sie „Was habe ich im März tatsächlich getan?" beantworten wollen. Favas Journalseite ist normalerweise der schnellste Ort, um einen falsch kategorisierten Eintrag zu finden.
Journal (Buch)
Ein Journal ist die vollständige Sammlung von Buchhaltungsunterlagen für eine Entität, was in Beancount Ihre Klartextdatei bedeutet (plus alles, was sie einschließt). Das Wort dient doppelt als Name des gesamten Buchs der Konten und als Name der Datei selbst. Da es Text ist, kann ein Journal wie Quellcode diffed, überprüft, verzweigt und gemerged werden.
Los
Ein Los ist eine spezifische Akquisition eines Wertpapiers, identifiziert durch seine Anschaffungskosten und sein Erwerbsdatum. Denselben ETF im Januar und nochmal im Juni zu kaufen, erzeugt zwei Lose, und später zu verkaufen bedeutet, zu wählen, welches Los Sie verkaufen. Lose sind der Grund, warum Beancount realisierte Gewinne exakt berechnen kann, anstatt sie zu approximieren.
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 USDErzählung
Die Erzählung ist die Freitextbeschreibung, wofür eine Transaktion war, geschrieben als der zweite Anführungszeichenstring auf der Transaktionszeile. Sie ist für Menschen: „Monatsmiete", „Lebensmittel und Haushalt". Beancount parst sie nicht, aber es ist das, was Sie lesen werden, wenn der Eintrag in sechs Monaten keinen Sinn mehr ergibt.
Öffnungsdirektive
Eine open-Direktive deklariert ein Konto, das Datum, ab dem es nutzbar ist, und
optional die Wertpapiere, die es halten darf, und die Buchungsmethode, die es verwendet.
Beancount verlangt, dass jedes Konto vor seiner ersten Buchung geöffnet wird, was einen
Tippfehler daran hindert, stillschweigend ein brandneues Konto zu erstellen. Die
zulässigen Wertpapiere einzuschränken, verwandelt eine weitere ganze Klasse von Fehlern
in Fehler.
2026-01-01 open Assets:US:Broker:VTI VTI "FIFO"Pad
Eine pad-Direktive weist Beancount an, den Betrag einzufügen, der nötig ist, um die
nächste Saldoprüfung auf einem Konto gelingen zu lassen, und den Unterschied auf ein
zweites Konto zu buchen. Sie existiert für genau eine Aufgabe: ein Journal in der Mitte
des Lebens zu eröffnen, ohne Jahre der Historie zu rekonstruieren. Padding über diese
anfängliche Einrichtung hinaus bedeutet normalerweise, dass ein echter Fehler
überdeckt wird.
Zahlungsempfänger
Der Zahlungsempfänger ist, mit wem Sie transagiert haben, geschrieben als der erste
Anführungszeichenstring auf einer Transaktionszeile. Konsistente Zahlungsempfänger zu
halten — immer "Whole Foods", nie mal "WholeFoods" — ist das, was
zahlungsempfängerbasierte Berichte und automatisierte Importeure zum Funktionieren
bringt. Beancount behandelt den Zahlungsempfänger als optional; eine Transaktion kann
nur eine Erzählung tragen.
Buchführung im Klartext
Buchführung im Klartext ist die Praxis, Ihre Bücher in einer menschenlesbaren Textdatei unter Versionskontrolle zu halten, verarbeitet durch Open-Source-Kommandozeilenwerkzeuge. Sie tauscht eine Point-and-Click-Oberfläche gegen Langlebigkeit, Prüfbarkeit und Automatisierung ein: 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 beim Verarbeiten Ihrer Datei lädt, sodass
es Direktiven hinzufügen, transformieren oder validieren kann, bevor Berichte erstellt
werden. Plugins sind, wie Prognosen, Abschreibungspläne und benutzerdefinierte Prüfungen
implementiert werden, ohne die Kernsprache zu ändern. Sie aktivieren eines mit einer
eigenständigen plugin-Zeile am Anfang Ihres Journals, nie mit einer option —
option "plugin" "…" wird mit Option 'plugin' may not be set abgelehnt. Der
Prognose-Plugin-Leitfaden geht ein reales Beispiel durch.
Posten
Ein Posten ist ein Bein einer Transaktion: ein Konto, ein Betrag und optional Kosten
oder Preis. Was über eine Transaktion null ergeben muss, sind nicht die rohen Beträge,
sondern ihre Gewichte: Ein einfacher Betrag wiegt sich selbst, 10 FUND @ 38.46 USD
wiegt 384.60 USD, und 10 FUND {384.61 USD} wiegt 3,846.10 USD, weil einfache
geschweifte Klammern die Kosten einer Einheit halten. Höchstens ein Posten darf seinen
Betrag leer lassen, in diesem Fall berechnet Beancount die ausgleichende Zahl für Sie.
Siehe Präzision & Toleranzen für die vollständigen Gewichtsregeln.
Preisdirektive
Eine price-Direktive erfasst den Wechselkurs zwischen zwei Wertpapieren an einem
Datum, was Beancount verwendet, um einen Bestand in Berichten zu seinem Marktwert zu
konvertieren. Eine price-Direktive ist reine Referenzdaten: Sie bewegt kein Geld und
gehört zu keiner Transaktion. Verwechseln Sie sie nicht mit dem @-Preis, der in einem
Posten geschrieben wird — dieser ist Arithmetik: Er gibt 10 FUND @ 38.46 USD ein
Gewicht von 384.60 USD und entscheidet so, ob die Transaktion ausgeglichen ist. Ohne
Preisdirektiven balanciert ein Portfolio weiterhin zu Kosten, kann aber nicht zu Markt
bewertet werden.
2026-06-30 price VTI 271.40 USDAbstimmung
Abstimmung ist der Akt, zu beweisen, dass Ihre Bücher mit einer externen Aufzeichnung wie einem Bank- oder Brokerage-Auszug übereinstimmen. In der Buchführung im Klartext ist sie weitgehend mechanisch: Fügen Sie für jedes Auszugsdatum eine Saldoprüfung hinzu und lassen Sie das Werkzeug Ihnen sagen, ob die Zahlen übereinstimmen. Ein Journal, das jeden Monat sauber abgestimmt wird, ist eines, aus dem Sie ohne Angst Steuern einreichen können.
Tags und Links
Tags und Links sind die beiden Etiketten, die Sie an Transaktionen anbringen, um sie
außerhalb der Kontenhierarchie zu gruppieren: Ein Tag mit # markiert ein Thema wie
#trip-japan, und ein Link mit ^ verbindet verwandte Einträge wie ^invoice-2026-014.
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
Eine Transaktion ist ein datiertes wirtschaftliches Ereignis zusammen mit den Posten,
die es erfassen, und sie ist die Direktive, die Sie am häufigsten schreiben werden. Sie
trägt ein Flag (* für bestätigt, ! für überprüfungsbedürftig), einen optionalen
Zahlungsempfänger, eine Erzählung und zwei oder mehr Posten, deren Gewichte null
ergeben. Alles andere in einer Beancount-Datei existiert, um Transaktionen zu
deklarieren, zu prüfen oder zu annotieren.
2026-02-14 * "Blue Bottle" "Coffee with Dana"
Expenses:Food:Coffee 9.50 USD
Assets:US:BofA:Checking -9.50 USDImmer noch bei einem Wort hängen? Das Hilfezentrum indiziert jeden Leitfaden auf dieser Seite, und der Spickzettel stellt die Syntax für jede Direktive nebeneinander.