Zum Hauptinhalt springen

Beancount CLI-Schnellstart

Installieren Sie den bea-Befehl, erstellen Sie ein lokales Beancount-Hauptbuch, erfassen Sie Ihren ersten Einkauf und prüfen Sie Ihre Kontostände.

Erstellen Sie ein lokales Hauptbuch und erfassen Sie Ihren ersten Einkauf mit bea, dem Befehlszeilenwerkzeug von Beancount.io. Für die lokale Buchhaltung ist kein Beancount.io-Konto erforderlich.

Dieser Durchlauf beginnt mit 1.000 USD auf dem Girokonto. Nach einem Kaffeekauf über 12,50 USD überprüfen Sie einen Kontostand von 987,50 USD.

1. Den Befehl installieren​

Mit Homebrew unter macOS oder Linux:

brew install bex-co/tap/bea
bea --version

Wenn Sie Homebrew nicht verwenden, installieren Sie uv und nutzen Sie uv tool install beancount-io. Das Python-Paket erfordert Python 3.12 oder neuer. Homebrew stellt die Buchhaltungs-Engine während der Installation bereit. Mit PyPI halten Sie uv verfügbar: Der erste lokale Befehl lädt die verwaltete Engine herunter, spätere Befehle verwenden sie offline erneut. Sie müssen Beancount nicht separat installieren.

2. Ihr Hauptbuch erstellen​

Wählen Sie ein neues Verzeichnis. Dieses Beispiel erstellt main.bean innerhalb von ~/my-books:

bea --no-input init ~/my-books --currency USD --date 2026-08-01 \
  --opening-balance "Assets:Checking 1000"
cd ~/my-books

Die Vorlage eröffnet übliche Giro-, Sparkonten-, Bargeld-, Kreditkarten-, Einkommens- und Ausgabenkonten. Der Eröffnungssaldo wird gegen Equity:OpeningBalances verrechnet.

Wählen Sie für Ihre eigenen Bücher das früheste Datum, das Sie erfassen möchten. Alle Vorlagenkonten werden an diesem Datum eröffnet. Der Eröffnungssaldo muss das Konto an diesem Tag beschreiben. Kreditkartenschulden verwenden einen negativen Betrag.

init überschreibt niemals ein bestehendes Hauptbuch. Neue Dateien sind auf POSIX-Systemen privat: Nur der Eigentümer kann sie lesen und schreiben. Um sie mit Ihrer lokalen Benutzergruppe zu teilen, ändern Sie die Berechtigungen explizit mit chmod 640 main.bean.

Für eine geführte Einrichtung führen Sie stattdessen bea init ~/my-books in einem Terminal aus. Der Assistent fragt nach Ihrer Währung, dem Startdatum der Historie und dem Girokontostand.

3. Einen Einkauf erfassen​

bea add transaction --date 2026-08-02 --narration "Coffee" \
  --posting "Expenses:Dining 12.50" \
  --posting "Assets:Checking"

Die Ausgabe verwendet die USD-Währung des Kontos. Beancount ergänzt die andere Buchung als -12.50 USD. Sie können --date für heutige Käufe weglassen.

Jede Ergänzung wird vor dem Ersetzen der Datei gegen das vollständige Hauptbuch geprüft. Ein unbekanntes Konto oder eine unausgeglichene Transaktion erzeugt einen Fehler mit Hilfestellung.

4. Das Ergebnis prüfen​

bea check
bea list transaction --limit 10
bea report balance-sheet

Die Transaktionsliste zeigt die neuesten Einträge zuerst, mit ihren Buchungsbeträgen. Die Bilanz zeigt 987,50 USD auf dem Girokonto.

Um diesen Betrag direkt zu überprüfen:

bea query "SELECT account, sum(position) WHERE account = 'Assets:Checking' GROUP BY account"

Abfragetabellen bewahren die Genauigkeit des Ergebnisses. Für strukturierte Ausgabe setzen Sie das globale --json-Flag vor den Befehl:

bea --json list transaction --limit 10

5. Halten Sie Ihre Bücher in guter Form​

Führen Sie bea check nach manuellen Dateiänderungen aus. Führen Sie bea format -i main.bean aus, um die Spalten in der Datei auszurichten. Ohne -i wird der formatierte Text auf stdout ausgegeben und die Datei bleibt unverändert. Verwenden Sie bea format main.bean --check, wenn ein Skript fehlschlagen soll, falls eine Formatierung erforderlich ist.

Um aus einem anderen Verzeichnis zu arbeiten, wählen Sie die Stammdatei explizit aus:

bea --file ~/my-books/main.bean check

Die Stammdatei wird durch --file, dann BEA_FILE, dann main.bean im Arbeitsverzeichnis ausgewählt. Globale Optionen stehen vor dem Befehl. Die Formatierung akzeptiert ein eigenes Datei- oder Verzeichnisargument.

Fahren Sie mit Ihren eigenen Aufzeichnungen fort​

Prüfen Sie auf Updates mit bea upgrade --check. Führen Sie bea upgrade aus, um den Paketmanager aufzurufen, der Ihre Kopie installiert hat. Verwenden Sie bea --help oder bea add transaction --help, um die in Ihrer installierten Version verfügbaren Optionen einzusehen.

Quelle: https://beancount.io/de/docs/Basics/bea-cli