Awesome Beancount
Ein kuratierter Leitfaden zum Beancount-Ökosystem. Beancount ist ein leistungsstarkes Open-Source-Buchhaltungssystem, das ein einfaches, textbasiertes Format verwendet, um Ihre Finanzen mit der Strenge der doppelten Buchführung zu verwalten. Diese Seite kombiniert von der Community kuratierte Listen und Ökosystem-Übersichten in einer umfassenden Ressource.
Warum Plain Text Accounting?
Plain Text Accounting (PTA) ist eine Methodik zur Verwaltung von Finanzen unter Verwendung einfacher Textdateien und leistungsstarker Kommandozeilen-Tools. Dieser Ansatz gibt Ihnen das volle Eigentum an Ihren Daten, sichert die Langlebigkeit und bietet eine unvergleichliche Flexibilität für Automatisierung und Analyse.
- Offizieller PTA-Hub: Plain Text Accounting
- Eine sanfte Einführung: Accounting for the simple minds with plain text accounting (Buchhaltung für einfache Gemüter mit Plain Text Accounting)
- Von Web-Apps zu CLI: Command line accounting: From mint.com to Ledger (Kommandozeilen-Buchhaltung: Von mint.com zu Ledger)
Das Beancount-Ökosystem
Das Beancount-Ökosystem ist eine Sammlung von Tools, Plugins und Ressourcen, die um eine Kern-Engine herum aufgebaut sind. Jede Komponente spielt eine spezifische Rolle bei der Erstellung eines vollständigen Workflows für das Finanzmanagement.
1. Kern-Engine & Offizielle Ressourcen
Dies sind die grundlegenden Elemente von Beancount, die vom Ersteller und offiziellen Mitwirkenden gepflegt werden.
| Ressource | Beschreibung |
|---|---|
| Beancount (Core) | Die Engine, die Ihre Ledger-Datei liest, die Regeln der doppelten Buchführung erzwingt und Berichte erstellt. Sie bietet grundlegende Kommandozeilen-Utilities wie bean-check und bean-format. Alle anderen Tools basieren darauf. |
| Homepage | beancount.github.io |
| Quellcode | github.com/beancount/beancount |
| Dokumentation | GitHub Pages und Google Docs |
| Externe Beiträge | Offizielle Liste von Community-Beiträgen |
| Beanquery | Ein leistungsstarkes, SQL-ähnliches Abfragewerkzeug (v3) zum Ausführen fortgeschrittener Abfragen (z. B. SELECT ... FROM ... WHERE ...) gegen Ihr Ledger, um benutzerdefinierte Analysen zu erstellen. |
2. Benutzeroberflächen
Diese Tools bieten visuelle Schnittstellen zum Erkunden und Bearbeiten Ihrer Finanzdaten.
| Tool | Beschreibung |
|---|---|
| Fava | Das definitive, funktionsreiche Web-Dashboard für Beancount. Es bietet interaktive Diagramme, Drilldown-Tabellen, Bearbeitung im Browser und ein Erweiterungssystem zum Hinzufügen von Funktionen wie Budgetierung. |
| Fava-GTK | Eine native GNOME-Desktop-Anwendung, die Fava für ein nahtloses Desktop-Erlebnis kapselt. |
| Beancount Mobile | Eine mobile Datenerfassungs-App zum Hinzufügen von Transaktionen von unterwegs. |
| Beancount Telegram Bot | Ein Telegram-Bot zum schnellen Hinzufügen von Transaktionen zu Ihrem Ledger via Chat. |
3. Transaktions-Import
Importieren ist der Prozess des Konvertierens von Daten aus Finanzinstituten (wie Bank-CSVs oder PDFs) in Beancount-Einträge.
| Tool | Beschreibung |
|---|---|
| Beangulp (v3) | Das moderne, eigenständige Framework zum Erstellen von Importern. Es verarbeitet externe Dateien über Python-Skripte (Plugins), um Beancount-Anweisungen zu generieren. |
| Smart Importer | Ein Tool, das Importer mit maschinellem Lernen erweitert, um Kategorien automatisch vorherzusagen und zuzuweisen. |
| Beancount Reds Ingestor | Eine Sammlung von Importern mit einer gemeinsamen Bibliothek zur Handhabung von CSV- und OFX-Dateien. |
| double-entry-generator | Ein regelbasierter Importer, der auf chinesische Dienste wie Alipay und WeChat Pay spezialisiert ist. |
Community-Importer (nach Land)
Eine umfangreiche Sammlung von Skripten für spezifische Banken und Dienste, die von der Community gepflegt werden.
- China
- Alipay / 支付宝: deb-sig/double-entry-generator, wzyboy/importer
- China Merchants Bank (CMB): Debitkarte, Kreditkarte
- WeChat Pay / 微信支付: deb-sig/double-entry-generator
- Frankreich
- Caisse d'Epargne: beancount-ce
- Boursorama, Amex: Beancount-myTools
- Deutschland
- Commerzbank: beancount-commerzbank
- Deutsche Kredit Bank (DKB): beancount-dkb
- ING: beancount-ing
- N26: beancount-n26
- Volksbank & GLS-Bank: beancount-importer-volksbank
- Indien
- SBI, BOI, Paytm, HSBC, ICICI: beancount-importers-india
- Niederlande
- ABN AMRO: beancount-abnamro
- Schweiz
- Allgemein: tariochbctools (BCGE, Neon, Raiffeisen, ZKB, Fidelity)
- Finpension: drnuke-bean
- PostFinance: tariochbctools, drnuke-bean
- Großbritannien
- Monzo, Revolut, Wise: Evernight/beancount-importers
- Revolut, Wise: tariochbctools
- USA
- Amex, Chase, Citi, Schwab: mterwill/gist
- Capital One: mtlynch/beancount-capitalone
- Chase: mtlynch/beancount-chase-bank, ArthurFDLR/beancount-chase
- Clipper: beancount-clipper
- Mercury: mtlynch/beancount-mercury
- Blockchain
4. Editor-Unterstützung & Werkzeuge
Werkzeuge zur Integration von Beancount in Ihre Entwicklungsumgebung, um die Bearbeitung und Wartung zu optimieren.
- IDE-Unterstützung: Plugins für Syntax-Highlighting, Autovervollständigung und Echtzeit-Saldenprüfung.
- VSCode
- Emacs
- Vim
- Zed
- Sublime Text
- Atom
- Beancount Language Server (für jeden LSP-kompatiblen Editor)
- Automatisierung & Dienstprogramme:
bean-add: Interaktives Hinzufügen von Transaktionen über die Kommandozeile.beancount-black: Ein strikter Code-Formatierer für Beancount-Dateien.beancount-categorizer: Transaktionen automatisch mithilfe von Regex-Regeln kategorisieren.beanahead: Zukünftige Transaktionen verwalten und prognostizieren.
- Datenmigrations-Tools: Dienstprogramme zum Konvertieren von Daten aus anderen Buchhaltungssystemen.
- Von GnuCash: henriquebastos/gc-to-bc, dtrai2/gc-to-bc
- Von Ledger/hledger: travisdahlke/gist, zacchiro/ledger2beancount
- Von YNAB: hoostus/beancount-ynab
5. Plugins (Ledger-Erweiterungen)
Python-Module innerhalb des Ledgers, die während der Verarbeitung ausgeführt werden, um benutzerdefinierte Regeln durchzusetzen, Transaktionen zu automatisieren oder neue Funktionen hinzuzufügen.
- Budgetierung:
- fava-envelope: Eine Fava-Erweiterung für die Budgetierung nach der Umschlagmethode (Envelope-Budgeting).
- Automatisierung & Prüfungen:
- autobean.share: Ausgabenteilung und Schuldenmanagement.
- autobean.sorted: Stellt sicher, dass Transaktionen chronologisch geordnet sind.
- beancount-checkclosed: Prüft automatisch auf einen Null-Saldo bei geschlossenen Konten.
- Datenmanipulation:
- autobean.narration: Erzeugt automatisch Beschreibungen (Narrations) für Transaktionen.
- beancount-lazy-plugins.filter_map: Wendet Operationen auf eine gefilterte Gruppe von Transaktionen an.
6. Preisquellen
Skripte zum Abrufen historischer und aktueller Kurse für Rohstoffe, Aktien und Währungen, um Anlagewerte zu verfolgen.
- beancount-exchangerates: Für Fiat-Währungen über APIs wie
frankfurter.dev. - pricehist: Ein Preis-Fetcher mit mehreren Quellen.
- beancount-cryptoassets: Zum Abrufen von Kryptowährungskursen.
- tariochbctools: Enthält eine Preisquelle für Interactive Brokers.
Lernen & Community
Bücher & Ausführliche Anleitungen
- Tracking Personal Finances using Python: Ein Buch, das einen umfassenden Leitfaden für den Aufbau eines persönlichen Finanzsystems mit Beancount bietet. (Website)
- Chinesische Blog-Serie (BYVoid): Teil 1: Warum?, Teil 2: Soll & Haben
Ausgewählte Blog-Beiträge
- Englisch
- Französisch
- Chinesisch
Community
- Mailingliste: Google Groups (Hauptdiskussionsforum)
- Live-Chat (IRC): #beancount auf web.libera.chat
- Telegram (Chinesisch): t.me/beancount_zh
Kommerzielle Dienste & Apps
Für Nutzer, welche die Möglichkeiten von Beancount nutzen möchten, ohne die Infrastruktur selbst zu verwalten.
| Dienst | Beschreibung |
|---|---|
| Beancount.io | Eine SaaS-Plattform (Software as a Service), die eine sofort einsatzbereite Beancount- und Fava-Instanz bereitstellt. Sie bietet zudem dedizierte mobile Apps für iOS und Android. |
