Awesome Beancount
Un guide organisé de l'écosystème Beancount. Beancount est un système de comptabilité open-source puissant qui utilise un format simple, basé sur le texte, pour gérer vos finances avec la rigueur de la comptabilité en partie double. Cette page regroupe des listes gérées par la communauté et des aperçus de l'écosystème en une seule ressource complète.
Pourquoi la comptabilité en texte brut ?
La comptabilité en texte brut (PTA - Plain Text Accounting) est une méthodologie de gestion des finances utilisant des fichiers texte simples et de puissants outils en ligne de commande. Cette approche vous donne la pleine propriété de vos données, assure leur pérennité et offre une flexibilité inégalée pour l'automatisation et l'analyse.
- Hub officiel de la PTA : Plain Text Accounting
- Une introduction en douceur : Accounting for the simple minds with plain text accounting (en anglais)
- Des applications web à la ligne de commande : Command line accounting: From mint.com to Ledger (en anglais)
L'écosystème Beancount
L'écosystème Beancount est une collection d'outils, de plugins et de ressources construits autour d'un moteur central. Chaque composant joue un rôle spécifique dans la création d'un flux de travail complet de gestion financière.
1. Moteur central et ressources officielles
Ce sont les éléments fondamentaux de Beancount, maintenus par le créateur et les contributeurs officiels.
| Ressource | Description |
|---|---|
| Beancount (Cœur) | Le moteur qui lit votre fichier de grand livre, applique les règles de la partie double et génère des rapports. Il fournit les utilitaires de base en ligne de commande comme bean-check et bean-format. Tous les autres outils reposent sur lui. |
| Page d'accueil | beancount.github.io |
| Code source | github.com/beancount/beancount |
| Documentation | GitHub Pages et Google Docs |
| Contributions externes | Liste officielle des contributions de la communauté |
| Beanquery | Un puissant outil de requête de type SQL (v3) pour exécuter des requêtes avancées (ex: SELECT ... FROM ... WHERE ...) sur votre grand livre afin de générer des analyses personnalisées. |
2. Interfaces utilisateur
Ces outils fournissent des interfaces visuelles pour explorer et modifier vos données financières.
| Outil | Description |
|---|---|
| Fava | Le tableau de bord web de référence pour Beancount. Il propose des graphiques interactifs, des tableaux détaillés, l'édition dans le navigateur et un système d'extensions pour ajouter des fonctionnalités comme la budgétisation. |
| Fava-GTK | Une application de bureau GNOME native qui encapsule Fava pour une expérience de bureau fluide. |
| Beancount Mobile | Une application mobile de saisie de données pour ajouter des transactions lors de vos déplacements. |
| Beancount Telegram Bot | Un robot Telegram pour ajouter rapidement des transactions à votre grand livre via messagerie. |
3. Importation de transactions
L'importation est le processus de conversion des données provenant d'institutions financières (comme les fichiers CSV ou PDF bancaires) en entrées Beancount.
| Outil | Description |
|---|---|
| Beangulp (v3) | Le framework moderne et autonome pour construire des importateurs. Il traite les fichiers externes via des scripts Python (plugins) pour générer des directives Beancount. |
| Smart Importer | Un outil qui enrichit les importateurs avec l'apprentissage automatique pour prédire et attribuer automatiquement les catégories. |
| Beancount Reds Ingestor | Une collection d'importateurs dotée d'une bibliothèque commune pour la gestion des fichiers CSV et OFX. |
| double-entry-generator | Un importateur basé sur des règles axé sur les services chinois comme Alipay et WeChat Pay. |
Importateurs de la communauté (par pays)
Une vaste collection de scripts pour des banques et services spécifiques, maintenue par la communauté.
- Chine
- Alipay / 支付宝 : deb-sig/double-entry-generator, wzyboy/importer
- China Merchants Bank (CMB) : Carte de débit, Carte de crédit
- WeChat Pay / 微信支付 : deb-sig/double-entry-generator
- France
- Caisse d'Epargne : beancount-ce
- Boursorama, Amex : Beancount-myTools
- Allemagne
- Commerzbank : beancount-commerzbank
- Deutsche Kredit Bank (DKB) : beancount-dkb
- ING : beancount-ing
- N26 : beancount-n26
- Volksbank & GLS-Bank : beancount-importer-volksbank
- Inde
- SBI, BOI, Paytm, HSBC, ICICI : beancount-importers-india
- Pays-Bas
- ABN AMRO : beancount-abnamro
- Suisse
- Général : tariochbctools (BCGE, Neon, Raiffeisen, ZKB, Fidelity)
- Finpension : drnuke-bean
- PostFinance : tariochbctools, drnuke-bean
- Royaume-Uni
- Monzo, Revolut, Wise : Evernight/beancount-importers
- Revolut, Wise : tariochbctools
- États-Unis
- 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. Support éditeur et outillage
Des outils qui intègrent Beancount dans votre environnement de développement pour simplifier l'édition et la maintenance.
- Support IDE : Plugins offrant la coloration syntaxique, l'autocomplétion et la vérification de solde en temps réel.
- VSCode
- Emacs
- Vim
- Zed
- Sublime Text
- Atom
- Beancount Language Server (pour tout éditeur compatible LSP)
- Automatisation et utilitaires :
bean-add: Ajoutez des transactions de manière interactive depuis la ligne de commande.beancount-black: Un formateur de code strict (opinionated) pour les fichiers Beancount.beancount-categorizer: Catégorisez automatiquement les transactions avec des règles regex.beanahead: Gérez et projetez les transactions futures.
- Outils de migration de données : Utilitaires pour convertir des données provenant d'autres systèmes comptables.
- Depuis GnuCash : henriquebastos/gc-to-bc, dtrai2/gc-to-bc
- Depuis Ledger/hledger : travisdahlke/gist, zacchiro/ledger2beancount
- Depuis YNAB : hoostus/beancount-ynab
5. Plugins (Extensions du grand livre)
Modules Python intégrés au grand livre qui s'exécutent lors du traitement pour appliquer des règles personnalisées, automatiser des transactions ou ajouter de nouvelles fonctionnalités.
- Budgétisation :
- fava-envelope : Une extension Fava pour la budgétisation par enveloppes.
- Automatisation et vérifications :
- autobean.share : Répartition des dépenses et gestion des dettes.
- autobean.sorted : S'assure que les transactions sont classées par ordre chronologique.
- beancount-checkclosed : Vérifie automatiquement que le solde est nul sur les comptes fermés.
- Manipulation de données :
- autobean.narration : Génère automatiquement les libellés de transaction.
- beancount-lazy-plugins.filter_map : Applique des opérations à un groupe de transactions filtré.
6. Sources de prix
Scripts qui récupèrent les prix historiques et actuels des commodités, des actions et des devises pour suivre la valeur des investissements.
- beancount-exchangerates : Pour les devises fiduciaires via des API comme
frankfurter.dev. - pricehist : Un récupérateur de prix multi-sources.
- beancount-cryptoassets : Pour récupérer le prix des crypto-actifs.
- tariochbctools : Inclut une source de prix pour Interactive Brokers.
Apprentissage & Communauté
Livres & Guides Approfondis
- Tracking Personal Finances using Python : Un livre qui fournit un guide complet pour construire un système de finances personnelles avec Beancount. (Site web)
- Série de blogs en chinois (BYVoid) : Partie 1 : Pourquoi ?, Partie 2 : Débits & Crédits
Sélection d'articles de blog
- Anglais
- Français
- Chinois
Communauté
- Liste de diffusion : Google Groups (Forum de discussion principal)
- Chat en direct (IRC) : #beancount sur web.libera.chat
- Telegram (Chinois) : t.me/beancount_zh
Services Commerciaux & Applications
Pour les utilisateurs qui souhaitent profiter de la puissance de Beancount sans gérer l'infrastructure eux-mêmes.
| Service | Description |
|---|---|
| Beancount.io | Une plateforme SaaS (Software as a Service) fournissant une instance Beancount et Fava prête à l'emploi. Elle propose également des applications mobiles dédiées pour iOS et Android. |
