Verstehen von Buchungssätzen in Beancount
Buchungssätze sind das Rückgrat der doppelten Buchführung, und in Beancount ist jede *‑Transaktion, die Sie schreiben, ein Buchungssatz. Dieser Leitfaden erklärt die Grundlagen – Soll und Haben, Anpassungsbuchungen und Stornobuchungen – und zeigt, wie sie sauber auf die reine‑Text‑Syntax von Beancount abgebildet werden. Sie lernen, wie Sie präzise Bücher mit minimalem Aufwand führen.
Schnell‑Auffrischung: Was ist ein Buchungssatz?
Ein Buchungssatz ist die formale, datierte Aufzeichnung einer finanziellen Transaktion. Er wird in Soll und Haben ausgedrückt, die die grundlegende Bilanzgleichung im Gleichgewicht halten:
In einem doppelten Buchführungssystem wirkt sich jede Transaktion auf mindestens zwei Konten aus, und die Summe der Soll‑Buchungen muss den Summe der Haben‑Buchungen entsprechen. Diese einfache Regel sorgt dafür, dass nachgelagerte Finanzberichte wie Gewinn‑ und Verlustrechnung und Bilanz vertrauenswürdig und korrekt sind.
Soll und Haben in einer Minute
Die Konzepte von Soll und Haben können zunächst verwirrend sein, aber sie lassen sich auf ein paar einfache Regeln reduzieren. Denken Sie so: „Woher kam der Wert?“ (Haben) und „Wohin ging der Wert?“ (Soll).
Hier eine Übersicht, wie sie die fünf Kernkontotypen erhöhen:
| Kontotyp | Erhöht durch |
|---|---|
| Assets | Soll |
| Expenses | Soll |
| Liabilities | Haben |
| Equity | Haben |
| Income | Haben |
Wie ein Buchungssatz in Beancount aussieht
Beancount verwendet einfache, menschenlesbare Text‑Direktiven, um Transaktionen zu erfassen. Jede Transaktion muss für jede Ware (z. B. USD, EUR, AAPL‑Aktie) auf Null balancieren. Beancount wirft einen Fehler, wenn das nicht der Fall ist.
Hier ein einfacher Buchungssatz für den Kauf von Kaffee:
2025-09-10 * "Coffee Bar" "Team coffee"
Expenses:Food:Coffee 18.00 USD
Assets:Bank:Checking -18.00 USD
Beachten Sie, dass die beiden Buchungen (Zeilen mit Konten) sich zu Null summieren: $18.00 + (-$18.00) = 0.
Sie können leistungsstarke Kontexte direkt in der Erzählung mittels Tags (wie #clientX) für Filterungen und Links (wie ^INV-2025-001) hinzufügen, um verwandte Einträge zu verbinden.
Beispiel: So verknüpfen Sie eine Rechnung mit ihrer Zahlung:
; Zuerst die Rechnung, die Sie an den Kunden gesendet haben
2025-09-15 * "Acme Corp" "Invoice 2025-001 #clientX ^INV-2025-001"
Assets:AccountsReceivable 1000.00 USD
Income:Consulting -1000.00 USD
; Später die Zahlung und Rückverknüpfung zur ursprünglichen Rechnung
2025-09-28 * "Acme Corp" "Payment on ^INV-2025-001"
Assets:Bank:Checking 1000.00 USD
Assets:AccountsReceivable -1000.00 USD
Der Tag #clientX ermöglicht es Ihnen, alle Transaktionen dieses Kunden leicht zu filtern, und der Link ^INV-2025-001 schafft eine Verbindung zwischen den beiden Einträgen, die Sie in Berichten verfolgen können.