Zum Hauptinhalt springen
KI mit Beancount nutzen: Ledger importieren, prüfen und abfragen

KI mit Beancount nutzen: Ledger importieren, prüfen und abfragen

Nutzen Sie Beancount.io oder ein lokales Ledger, um Transaktionen mit KI zu kategorisieren, vorgeschlagene Buchungen zu prüfen, Kontostände zu validieren und Ihre Bücher abzufragen.

Nutzen Sie KI, um Konten vorzuschlagen und Transaktionen zu erklären, und prüfen Sie die Buchungen anschließend anhand Ihrer Quelldokumente, bevor Sie sie speichern. Dieser Leitfaden führt einen kleinen fiktiven Kontoauszug durch Kategorisierung, Prüfung, Validierung und eine Abfrage, die Sie verifizieren können.

Wählen Sie unten einen gehosteten oder lokalen Workflow. Das durchgearbeitete Beispiel verwendet eine lokale Beispieldatei, damit Sie jede Prüfung nachvollziehen können, bevor Sie KI mit Ihren eigenen Büchern verbinden.

Wählen Sie Ihren Workflow

Ihre EinrichtungHier startenWie Änderungen Ihr Ledger erreichen
Sie nutzen Beancount.ioVerwenden Sie Smart Import für Kontoauszugsdateien oder den KI-Assistenten für Fragen und vorgeschlagene Änderungen.Prüfen Sie die Zeilen, bevor Sie einen Import einreichen. Bei Assistenten-Änderungen prüfen Sie den vorgeschlagenen Diff und wählen Genehmigen oder Ablehnen.
Sie nutzen einen externen KI-ClientFolgen Sie der Beancount-MCP-Einrichtungsanleitung, um Ihren Client mit einem gehosteten Ledger zu verbinden.Ein Probelauf zeigt eine Bearbeitungsoperation als Vorschau. Ein separater Schreibaufruf führt sie aus. Genehmigungsaufforderungen hängen von den Einstellungen Ihres Clients ab.
Sie führen lokale DateienVerwenden Sie den CSV-zu-Beancount-Konverter oder einen Importer und bitten Sie dann ein KI-Tool um Kategorievorschläge.Sie prüfen vorgeschlagene Buchungen, validieren die Datei und speichern die akzeptierten Änderungen.

Der gehostete Assistent und MCP sind Beancount.io-Integrationen. Die Installation der Open-Source-Buchhaltungssoftware Beancount fügt diese Dienste einem lokalen Ledger nicht hinzu.

Bevor Sie beginnen

Halten Sie Ihren Quell-Kontoauszug, das Konto, zu dem er gehört, und eine Liste der zulässigen Zielkonten bereit. Bewahren Sie den ursprünglichen Kontoauszug auf, damit Sie ihn mit dem Ergebnis vergleichen können.

Für den lokalen Durchlauf installieren Sie Beancount mithilfe des Erste-Schritte-Leitfadens. Sie benötigen außerdem Beanquery, um die abschließende Abfrage im Terminal auszuführen. Das Beispiel geht durchgehend von USD und keinen vorhandenen Transaktionen in der Beispieldatei aus.

Legen Sie bei echten Daten fest, welche Informationen Ihr KI-Tool erhalten darf. Entfernen Sie unnötige Kennungen, bevor Sie einen Kontoauszug teilen. Ein lokales Ledger kann Daten dennoch über einen Editor oder MCP-Client an ein Cloud-Modell senden. Prüfen Sie die Datenrichtlinien von Client und Modellanbieter. Eine Datei auf Ihrem Computer zu speichern, hält ihren Inhalt nicht automatisch lokal.

1. Beginnen Sie mit den Quelltransaktionen

Unser fiktives Girokonto startet im August mit 1.000,00 USD. Sein Kontoauszug enthält drei Abbuchungen und schließt nach diesen Abbuchungen mit 805,10 USD:

date,payee,description,amount
2026-08-03,Office Depot,Printer paper,-45.00
2026-08-04,Cloud Hosting Inc,Monthly hosting,-120.00
2026-08-05,Amazon,Online purchase,-29.90

Negative Beträge bedeuten hier Geldabflüsse vom Girokonto. Bestätigen Sie die Vorzeichenkonvention Ihrer Bank, bevor Sie importieren. Andere Exporte und Importeure können eine andere Konvention verwenden.

Im CSV-Konverter ordnen Sie diese vier Spalten zu und setzen das Quellkonto auf Assets:Bank:Checking mit der Währung USD. Lassen Sie Alle Vorzeichen umkehren für dieses Beispiel deaktiviert. Prüfen Sie, dass die Quellbuchungen negativ sind. Ein vorläufiges Zielkonto ist nur ein Platzhalter, bis Sie die Kategorien geprüft haben.

Wenn Sie mit einem Belegbild oder PDF beginnen, vergleichen Sie die extrahierten Daten, Beträge, Währung und Transaktionsanzahl mit dem Originaldokument, bevor Sie etwas kategorisieren. Behalten Sie die Quellwerte unverändert bei, während Sie die Konten festlegen.

2. Bitten Sie um Kategorien mit klaren Grenzen

Verwenden Sie einen Prompt, der die zulässigen Konten benennt und Raum für Unsicherheit lässt:

Schlagen Sie für jede Zeile in diesem Beispiel-Kontoauszug ein Zielkonto vor. Das Quellkonto ist Assets:Bank:Checking. Verwenden Sie nur Expenses:Office:Supplies oder Expenses:Business:Hosting. Geben Sie das ursprüngliche Datum, den Zahlungsempfänger, den Betrag, das vorgeschlagene Konto und einen kurzen Grund zurück. Wenn die Beschreibung unzureichend ist, geben Sie NEEDS_REVIEW zurück und erklären Sie, welche Informationen fehlen. Erfinden Sie keine Konten, ändern Sie keine Beträge und schreiben Sie nicht ins Ledger.

Geben Sie die drei CSV-Zeilen zusammen mit dem Prompt an. Ein brauchbares Ergebnis könnte so aussehen; Formulierung und Vorschläge des Modells können variieren:

DatumZahlungsempfängerBetrag (USD)Vorgeschlagenes KontoPrüfungsgrund
2026-08-03Office Depot-45,00Expenses:Office:SuppliesDie Beschreibung identifiziert Druckerpapier.
2026-08-04Cloud Hosting Inc-120,00Expenses:Business:HostingDie Beschreibung identifiziert Hosting.
2026-08-05Amazon-29,90NEEDS_REVIEWDer Händlername identifiziert nicht, was gekauft wurde.

Der Prompt drückt Ihre Absicht aus. Er erzwingt keine Berechtigungen für ein Tool, das Dateien schreiben kann. Konfigurieren Sie die Genehmigungssteuerung des Clients, bevor Sie ihm Zugriff auf ein echtes Ledger geben.

3. Unsicherheit auflösen und Buchungen prüfen

Prüfen Sie den Beleg für den Amazon-Kauf. In diesem Beispiel identifiziert er ein USB-C-Kabel für das Büro, und der Prüfer weist Expenses:Office:Supplies zu. Ohne diese Belege lassen Sie die Zeile offen, anstatt eine geratene Kategorie zu akzeptieren.

Erstellen Sie eine neue Datei namens review.beancount mit dem folgenden vollständigen Beispiel. Es enthält die Kontodeklarationen und den Eröffnungssaldo, die der CSV fehlen. Wenn Sie den Konverter verwendet haben, vergleichen Sie dessen Transaktionen mit diesen geprüften Buchungen; fügen Sie nicht beide Kopien demselben Ledger hinzu.

option "title" "AI bookkeeping review example"
option "operating_currency" "USD"
 
2026-08-01 open Assets:Bank:Checking USD
2026-08-01 open Equity:Opening-Balances USD
2026-08-01 open Expenses:Office:Supplies USD
2026-08-01 open Expenses:Business:Hosting USD
 
2026-08-01 * "Opening balance"
  Assets:Bank:Checking       1000.00 USD
  Equity:Opening-Balances   -1000.00 USD
 
2026-08-03 * "Office Depot" "Printer paper"
  Assets:Bank:Checking        -45.00 USD
  Expenses:Office:Supplies     45.00 USD
 
2026-08-04 * "Cloud Hosting Inc" "Monthly hosting"
  Assets:Bank:Checking          -120.00 USD
  Expenses:Business:Hosting      120.00 USD
 
2026-08-05 * "Amazon" "Online purchase; receipt: office USB-C cable"
  Assets:Bank:Checking        -29.90 USD
  Expenses:Office:Supplies     29.90 USD
 
2026-08-06 balance Assets:Bank:Checking 805.10 USD

Die Eröffnungssaldo-Transaktion gehört zu diesem leeren Übungsledger. In einem bestehenden Ledger verwenden Sie dessen etablierten Saldo und Kontodeklarationen, anstatt einen weiteren Eröffnungssaldo hinzuzufügen.

Bevor Sie eine vorgeschlagene Änderung akzeptieren, vergleichen Sie jede Transaktion mit ihrer Quellzeile. Bestätigen Sie Vorzeichen, Währung, Konten und unterstützenden Beleg. Ein bekannter Händlername allein begründet den Zweck eines Kaufs nicht.

4. Validieren und abgleichen

Führen Sie den Validator von Beancount auf der lokalen Beispieldatei aus:

bean-check review.beancount

Das vollständige Beispiel sollte ohne Fehler durchlaufen. Seine Saldo-Assertion prüft den Betrag auf dem Girokonto zu Beginn des 6. August nach den drei vorherigen Abbuchungen.

Bestätigen Sie das Ergebnis mit dem Kontoauszug:

  • Drei Kontoauszugstransaktionen erscheinen jeweils einmal, zusätzlich zum Eröffnungssaldo.
  • Abbuchungen summieren sich auf 194,90 USD.
  • Das Girokonto hält 805,10 USD: der Eröffnungssaldo von 1.000,00 USD abzüglich dieser Abbuchungen.
  • Büromaterial summiert sich auf 74,90 USD und Hosting auf 120,00 USD.

Wenn Sie die Amazon-Transaktion offen lassen, bleibt das Girokonto bei 835,00 USD und die Assertion schlägt um 29,90 USD fehl. Untersuchen Sie diese Differenz; fügen Sie keine unerklärte Anpassung hinzu, nur um die Prüfung zu bestehen.

bean-check erkennt Syntax-, Konto-, Bilanzierungs- und Saldo-Assertionsfehler. Es kann nicht feststellen, dass ein Beleg echt ist, dass Sie die richtige Ausgabenkategorie gewählt haben oder dass jede Kontoauszugszeile vorhanden ist. Eine Transaktion, die auf ein falsches Ausgabenkonto gebucht wird, kann dennoch perfekt ausgeglichen sein.

Wenn etwas nicht übereinstimmt

SymptomNächste Prüfung
Der Saldo weicht vom Kontoauszug abVergleichen Sie Eröffnungssaldo, Transaktionsanzahl, Vorzeichen, Daten und Beträge mit der Quelle.
Zwei Buchungen sehen ähnlich ausVergleichen Sie Quelltransaktionskennungen und Belege. Derselbe Händler und Betrag können zwei legitime Käufe darstellen.
Das Modell erfindet ein KontoWählen Sie ein vorhandenes Konto oder erstellen Sie bewusst ein neues, nachdem Sie Ihren Kontenplan geprüft haben.
Die Extraktion lässt eine Zeile aus oder ändert eine DezimalstelleKorrigieren Sie die extrahierten Daten anhand des Originaldokuments, bevor Sie sie kategorisieren.
Der Validator besteht, aber ein Bericht sieht falsch ausPrüfen Sie Kontowahlen, Berichtszeitraum und einzelne Buchungen.

Bitten Sie KI, Abweichungen zu erklären und auf die betroffenen Zeilen zu verweisen. Bestätigen Sie die Belege, bevor Sie ein vermutetes Duplikat löschen oder einen Betrag ändern.

5. Prüfergebnis speichern und abfragen

Wenn Sie diesen Workflow mit Ihrem eigenen Kontoauszug wiederholen, führen Sie nur Ihre geprüften Transaktionen in Ihr echtes Ledger zusammen und validieren Sie dann die kombinierte Datei. Behalten Sie die fiktiven Buchungen in der Beispieldatei. Wenn Sie Git verwenden, prüfen Sie den Diff und committen Sie über Ihren üblichen Workflow. Halten Sie den Quell-Kontoauszug für spätere Abgleiche verfügbar. Der Leitfaden für skriptbare Workflows behandelt wiederholbare lokale Automatisierung.

Sie können die Summen der Beispieldatei mit der Beancount-Abfragesprache verifizieren. Mit installiertem Beanquery führen Sie aus:

bean-query review.beancount "SELECT account, sum(position) WHERE account ~ '^Expenses:' AND date >= 2026-08-01 AND date < 2026-09-01 GROUP BY account"

Die beiden Ausgabensummen sollten 74,90 USD für Büromaterial und 120,00 USD für Hosting betragen. Prüfen Sie den Datumsbereich und Kontofilter der Abfrage sowie ihre Ausgabe.

Mit einem KI-Client, der mit einem Ledger verbunden ist, das die Beispieldatei enthält, können Sie fragen:

Fragen Sie das Beispiel-Ledger nach den Ausgaben für August 2026 ab, gruppiert nach Konto. Zeigen Sie die Abfrage und ihre Ergebnisse. Ändern Sie keine Dateien.

Vergleichen Sie seine Antwort mit denselben Summen. Eine flüssige Antwort ist nur nützlich, wenn ihre Zahlen auf das Ledger zurückgeführt werden können.

Den Prüfprozess in Beancount.io anwenden

Für Kontoauszugsdateien öffnen Sie Import → Smart Import in der Seitenleiste Ihres Ledgers. Prüfen Sie die extrahierten Zeilen, wählen Sie Quellkonto und Währung und verwenden Sie KI-Ausfüllen für Zielkontovorschläge. Korrigieren Sie die Kategorien, bevor Sie Import einreichen, dessen Schaltfläche die Transaktionsanzahl enthält. Prüfen Sie das resultierende Journal und die Salden in einem Beispiel-Ledger, bevor Sie einen echten Kontoauszug verarbeiten. Verifizieren Sie, dass Abbuchungen das Quellkonto reduzieren; die obige CSV ist für den lokalen Konverter vorbereitet, und Importeure können Vorzeichen unterschiedlich interpretieren.

Für den gehosteten Assistenten öffnen Sie Ask Beancount.io in Ihrem Ledger. Beginnen Sie mit einer Frage zu vorhandenen Buchungen. Wenn er eine Dateibearbeitung vorschlägt, prüfen Sie den Diff, bevor Sie ihn genehmigen. Akzeptierte Importe und Assistenten-Änderungen werden in Git protokolliert, sodass Sie die Änderungen einsehen oder rückgängig machen können.

Für MCP folgen Sie den oben verlinkten client-spezifischen Einrichtungsanweisungen und autorisieren Sie das beabsichtigte Ledger. Fragen Sie nach editLedgerFiles mit dry_run: true, bevor Sie eine Bearbeitung zulassen. Prüfen Sie die vorgeschlagenen Inhalte und die Operationszusammenfassung und erlauben Sie dann einen separaten Schreibaufruf erst nach der Prüfung. Die Probelauf-Vorschau weist keine buchhalterische Korrektheit nach und garantiert nicht, dass Ihr Client vor einem späteren Schreibvorgang um Erlaubnis fragt.

Den Prüfprozess bei der Automatisierung beibehalten

Beginnen Sie mit einer kleinen Stichprobe und notieren Sie, welche Vorschläge Sie ändern. Wandeln Sie wiederholte, bestätigte Zuordnungen in explizite Importregeln um oder geben Sie geprüfte Beispiele als Kontext. Gehen Sie nicht davon aus, dass ein Modell dauerhaft aus einer Korrektur in einem Gespräch lernt.

Halten Sie Extraktionsprüfungen, Kategorieprüfung und Kontoauszugsabgleich getrennt. Jede fängt eine andere Art von Fehler ab. Prüfen Sie bei wiederkehrenden Importen auch, ob das Importieren derselben Quelle zweimal nicht stillschweigend Duplikate erzeugt.

Die Forschung unterstützt diese Unterscheidung zwischen gültiger Syntax und korrekter Buchhaltung. Die Studie von Figueroa Rosero und Kollegen vom Januar 2025 bewertete kleine Open-Weight-Modelle bei Finanzkennzahlen-Szenarien und Transaktionsgenerierung mit strukturierten Prompts. Ihre Ergebnisse beschreiben diese Modelle und Aufgaben, nicht eine Genauigkeitsrate für heutige Assistenten oder Ihren Importworkflow. Bewerten Sie Ihren eigenen Workflow anhand geprüfter Quelltransaktionen und der Korrekturen, die sie erfordern.

Werkzeuge für einen wiederholbaren lokalen Workflow

Wählen Sie ein Werkzeug für den Teil des Prozesses, den Sie wiederholen müssen:

  • Beangulp bietet ein Importer-Framework. Es ersetzt das ältere beancount.ingest-Framework in Beancount 3.
  • smart_importer ist ein separat installiertes Paket, das Importeuren maschinelle Lernvorschläge hinzufügt. Es ist keine eingebaute LLM-Funktion.
  • Beanborg dokumentiert regelbasierte Kategorisierung, maschinelle Lernvorschläge und optionale ChatGPT-Vorhersagen. Prüfen Sie seine aktuelle Einrichtung und Kompatibilität, bevor Sie es übernehmen.

Für weiteren Kontext siehe den Leitfaden zur Buchhaltungsautomatisierung und den Leitfaden für monatliche Buchhaltungsworkflows.

Ein größeres Beispiel erkunden

Das öffentliche Ledger unten ist getrennt von der Drei-Transaktionen-Übung. Nutzen Sie es, um zu erkunden, wie Konten, Transaktionen und Berichte zusammenpassen, bevor Sie KI mit Ihren eigenen Büchern verbinden.