Passer au contenu principal

51 articles tagués avec "Beancount"

Voir tous les tags

L'écosystème Beancount : Une analyse complète

· 41 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Fonctionnalités Clés et Philosophie de Beancount

Beancount est un système de comptabilité en partie double, open-source, qui utilise des fichiers texte brut pour enregistrer les transactions. À la base, Beancount traite votre grand livre comme un ensemble de données défini par une grammaire simple et stricte. Chaque événement financier (transactions, ouvertures de comptes, prix des marchandises, etc.) est une directive dans un fichier texte, que Beancount analyse en une base de données d'écritures en mémoire. Cette conception applique le principe de la partie double : chaque transaction doit équilibrer les débits et les crédits entre les comptes. Le résultat est un grand livre très transparent et vérifiable que vous pouvez contrôler par version, inspecter et interroger facilement.

2025-04-15-beancount-ecosystem

Philosophie – exactitude et minimalisme : La conception de Beancount privilégie l'intégrité des données et la simplicité. Son créateur, Martin Blais, décrit Beancount comme "pessimiste" en supposant que l'utilisateur fera des erreurs et impose ainsi des vérifications et des contraintes supplémentaires. Par exemple, Beancount ne vous permettra pas de retirer des actifs qui n'ont jamais été ajoutés (empêchant les soldes négatifs de titres ou de liquidités) et peut exiger que chaque compte soit ouvert avant utilisation. Il ne possède pas le concept de "postings" virtuels ou automatiquement équilibrés de Ledger – un choix intentionnel pour forcer des écritures entièrement équilibrées. Beancount "met le paquet" sur l'exactitude avec plus de vérifications croisées que ce que la comptabilité en partie double de base ne fournit. Cette approche prudente séduit les utilisateurs qui "ne se font pas trop confiance" et souhaitent que le logiciel détecte leurs erreurs.

Options minimales, cohérence maximale : Contrairement à la myriade d'options de ligne de commande et de réglage de Ledger, Beancount opte pour le minimalisme. Il y a très peu d'options globales, et aucune ne modifie la sémantique des transactions en dehors du fichier du grand livre. Toute configuration qui affecte la comptabilité (comme les méthodes de coût de base des marchandises ou les hypothèses de comptabilisation) est effectuée dans le fichier via des directives ou des plugins, garantissant que le chargement du même fichier produit toujours les mêmes résultats, quelle que soit la manière dont les rapports sont générés. Cette conception évite la complexité des nombreux réglages de Ledger et les interactions subtiles entre eux. La philosophie de Beancount est qu'un outil de comptabilité doit être un pipeline stable et déterministe du fichier d'entrée aux rapports. Il y parvient en traitant le grand livre comme un flux ordonné de directives qui peuvent être traitées séquentiellement par programme. Même les éléments que Ledger traite comme une syntaxe spéciale (comme les soldes d'ouverture ou les relevés de prix) sont des directives de première classe dans le modèle de données de Beancount, ce qui rend le système hautement extensible.

Extensibilité via les plugins et le langage de requête : Beancount est implémenté en Python et fournit des points d'intégration pour injecter une logique personnalisée dans le pipeline de traitement. Les utilisateurs peuvent écrire des plugins en Python qui opèrent sur le flux de transactions (par exemple, pour appliquer une règle personnalisée ou générer des écritures automatiques). Ces plugins s'exécutent au fur et à mesure que le fichier est traité, étendant efficacement les fonctionnalités de base de Beancount sans avoir besoin de modifier le code source. Beancount inclut également un puissant langage de requête (inspiré de SQL) pour analyser et manipuler le grand livre. L'outil bean-query traite le grand livre analysé comme une base de données et vous permet d'exécuter des requêtes analytiques dessus – par exemple, sommer les dépenses par catégorie ou extraire toutes les transactions pour un bénéficiaire donné. Dans Beancount 3.x, cette capacité de requête a été déplacée dans un package beanquery autonome, mais du point de vue de l'utilisateur, elle offre toujours des rapports flexibles via des requêtes de type SQL.

Texte brut et contrôle de version : En tant qu'outil de comptabilité en texte brut, Beancount met l'accent sur le contrôle par l'utilisateur et la longévité des données. Le grand livre est simplement un fichier texte .beancount que vous pouvez modifier dans n'importe quel éditeur de texte. Cela signifie que toute votre historique financier est stocké sous une forme lisible par l'homme, et vous pouvez le placer sous Git ou un autre VCS pour suivre les changements au fil du temps. Les utilisateurs conservent souvent leur fichier Beancount sous contrôle de version pour maintenir une piste d'audit de chaque modification (avec des messages de commit décrivant les changements). Cette approche s'aligne sur la philosophie de Beancount selon laquelle les données comptables, en particulier les finances personnelles ou de petites entreprises, doivent être transparentes et "pérennes" – non enfermées dans une base de données propriétaire. Selon les propres mots de Martin Blais, Beancount est un "travail d'amour" conçu pour être simple, durable et gratuit pour la communauté. Il a été développé pour la première fois vers 2007 et a évolué à travers des réécritures majeures (v1 à v2, et maintenant v3 en 2024) pour affiner sa conception tout en préservant sa philosophie fondamentale de minimalisme et d'exactitude.

Outils, Plugins et Extensions dans l'écosystème Beancount

L'écosystème Beancount s'est enrichi d'un vaste ensemble d'outils, plugins et extensions qui améliorent les fonctionnalités de base du grand livre. Ils couvrent l'importation de données, l'édition des grands livres, la visualisation de rapports et l'ajout de fonctionnalités comptables spécialisées. Vous trouverez ci-dessous un aperçu des composants clés et des modules complémentaires dans l'univers Beancount :

Utilitaires d'importation de données (Importateurs)

L'un des besoins les plus importants pour une utilisation pratique est l'importation de transactions depuis les banques, les cartes de crédit et d'autres institutions financières. Beancount fournit un cadre d'importation et des scripts d'importation contribués par la communauté à cette fin. Dans Beancount 2.x, le module intégré beancount.ingest (avec des commandes comme bean-extract et bean-identify) était utilisé pour définir des plugins d'importation en Python et les appliquer aux relevés téléchargés. Dans Beancount 3.x, cela a été remplacé par un projet externe appelé Beangulp. Beangulp est un cadre d'importateurs dédié qui a évolué à partir de beancount.ingest et est maintenant la méthode recommandée pour automatiser l'importation de transactions pour Beancount 3.0. Il permet d'écrire des scripts Python ou des outils en ligne de commande qui lisent des fichiers externes (comme des relevés CSV ou PDF) et produisent des écritures Beancount. Cette nouvelle approche découple la logique d'importation du cœur de Beancount – par exemple, l'ancienne commande bean-extract a été supprimée dans la v3, et vos scripts d'importation produisent eux-mêmes des transactions via l'interface CLI de Beangulp.

Des dizaines d'importateurs prêts à l'emploi existent pour différentes banques et formats, contribués par la communauté. Il existe des scripts d'importation pour des institutions du monde entier – d'Alipay et WeChat Pay en Chine, à diverses banques européennes (Commerzbank, ING, ABN AMRO, etc.), aux banques américaines comme Chase et Amex. Beaucoup d'entre eux sont rassemblés dans des dépôts publics (souvent sur GitHub) ou dans des paquets comme beancount-importers. Par exemple, le projet Tarioch Beancount Tools (tariochbctools) fournit des importateurs pour les banques suisses et britanniques et gère même les importations de transactions crypto. Un autre exemple est Lazy Beancount, qui regroupe un ensemble d'importateurs courants (pour Wise, Monzo, Revolut, IBKR, etc.) et fournit une configuration basée sur Docker pour une automatisation facile. Quelle que soit la banque ou le service financier que vous utilisez, il y a de fortes chances que quelqu'un ait écrit un importateur Beancount pour cela – ou vous pouvez écrire le vôtre en utilisant le cadre de Beangulp. La flexibilité de Python signifie que les importateurs peuvent gérer l'analyse des fichiers CSV/Excel, les téléchargements OFX/QIF, ou même le scraping d'APIs, puis émettre des transactions au format Beancount standardisé.

Édition et Intégration aux Éditeurs

Étant donné que les journaux Beancount sont de simples fichiers texte, les utilisateurs exploitent souvent leurs éditeurs de texte ou IDEs préférés pour les gérer. L'écosystème propose des plugins de support d'éditeur pour faciliter cette expérience. Il existe des extensions pour de nombreux éditeurs populaires qui ajoutent la coloration syntaxique, l'auto-complétion des noms de comptes et la vérification des erreurs en temps réel :

  • Emacs Beancount-Mode : Un mode majeur Emacs (beancount-mode) est disponible pour éditer les fichiers .beancount, offrant des fonctionnalités telles que la coloration syntaxique et l'intégration avec le vérificateur de Beancount. Il peut même exécuter bean-check en arrière-plan afin que les erreurs dans le grand livre (comme une transaction déséquilibrée) soient signalées au fur et à mesure que vous éditez.
  • Extension VS Code : Une extension Beancount sur le VSCode Marketplace offre des commodités similaires aux utilisateurs de Visual Studio Code. Elle prend en charge la coloration syntaxique, l'alignement des montants, l'auto-complétion pour les comptes/bénéficiaires, et même des vérifications de solde à la volée lorsque vous enregistrez le fichier. Elle peut également s'intégrer à Fava, vous permettant de lancer l'interface web de Fava depuis VSCode.
  • Des plugins ou modes existent également pour Vim, Atom et d'autres éditeurs. Par exemple, il existe une grammaire Tree-sitter pour Beancount, qui alimente la coloration syntaxique dans les éditeurs modernes et a même été adoptée dans le composant d'édition web de Fava. En bref, quel que soit votre environnement d'édition, la communauté a probablement fourni un plugin pour rendre l'édition des fichiers Beancount pratique et sans erreur.

Pour la saisie rapide de transactions en dehors des éditeurs traditionnels, il existe également des outils comme Bean-add et les applications mobiles. Bean-add est un outil en ligne de commande qui permet d'ajouter une nouvelle transaction via une invite ou une ligne de commande unique, gérant les suggestions de date et de compte. Sur mobile, un projet appelé Beancount Mobile offre une interface simple pour saisir des transactions en déplacement (par exemple, enregistrer un achat en espèces depuis votre téléphone). De plus, un Bot Telegram Beancount existe pour capturer les transactions via la messagerie – vous pouvez envoyer un message avec les détails de la transaction, et le bot le formate dans votre fichier de grand livre.

Interfaces Web et Outils de Visualisation

(Fava) L'interface web de Fava fournit un tableau de bord interactif pour Beancount, présentant des rapports comme un compte de résultat avec des visualisations (montré ici comme une arborescence des dépenses par catégorie) ainsi que des tableaux de comptes et de soldes.

L'interface principale de Beancount est Fava, une interface web moderne. Fava fonctionne comme une application web locale qui lit votre fichier Beancount et produit une expérience interactive riche dans votre navigateur. Elle offre une suite complète de rapports : bilan, compte de résultat, valeur nette au fil du temps, avoirs en portefeuille, graphiques de performance, budgets, et plus encore – tout cela prêt à l'emploi. Les utilisateurs citent souvent Fava comme une raison majeure de choisir Beancount plutôt que d'autres outils de comptabilité en texte brut. Avec une seule commande (fava ledger.beancount), vous pouvez parcourir vos finances avec des graphiques et des tableaux au lieu de texte. Fava prend en charge des fonctionnalités telles que : l'exploration détaillée des comptes, le filtrage des transactions par bénéficiaire ou étiquette, un éditeur de requêtes (pour que vous puissiez exécuter des requêtes Beancount et voir les résultats dans le navigateur), et même un éditeur web intégré pour votre grand livre. Elle est très utilisable, rendant la comptabilité en texte brut accessible à ceux qui préfèrent les interfaces visuelles.

En coulisses, Fava est écrit en Python (Flask pour le backend) et JavaScript (Svelte pour le frontend). Elle a son propre cycle de publication et est activement maintenue. Notamment, Fava a suivi le rythme de développement de Beancount – par exemple, Fava 1.30 a ajouté le support de Beancount v3, passant à l'utilisation interne des nouveaux paquets beanquery et beangulp. (Elle prend toujours en charge Beancount 2 pour les grands livres plus anciens.) L'accent mis par Fava sur la convivialité inclut des touches agréables comme l'auto-complétion dans l'éditeur web, et une interface utilisateur élégante avec un mode sombre et des graphiques réactifs. Il existe également un dérivé appelé Fava-GTK, qui intègre Fava dans une application de bureau pour les utilisateurs de GNOME/Linux qui préfèrent une sensation d'application native.

Au-delà de Fava, d'autres options de visualisation et d'analyse existent. Étant donné que les données Beancount peuvent être exportées ou interrogées sous forme de tableaux, les utilisateurs exploitent souvent des outils comme les notebooks Jupyter ou Pandas pour des analyses personnalisées. Par exemple, un utilisateur décrit l'extraction de données de Beancount via l'interface de requête dans un DataFrame Pandas pour préparer un rapport personnalisé. Il existe également des scripts contribués par la communauté pour des rapports spécifiques – par exemple, un outil d'analyse de l'allocation de portefeuille ou un graphique de contrôle de processus pour les dépenses par rapport à la valeur nette. Cependant, pour la plupart des gens, Fava offre une puissance de reporting plus que suffisante sans avoir besoin d'écrire du code. Elle prend même en charge les extensions : vous pouvez y déposer des fichiers Python qui ajoutent de nouvelles pages de rapport ou des graphiques à Fava. Une extension notable est fava-envelope pour la budgétisation par enveloppes au sein de Fava. Globalement, Fava sert de centre de visualisation central de l'écosystème Beancount.

Utilitaires et scripts en ligne de commande

Beancount est livré avec divers outils en ligne de commande (en particulier dans l'ancienne branche v2, dont certains ont été réduits dans la v3). Ces outils opèrent sur votre fichier de grand livre pour le vérifier ou générer des rapports spécifiques en texte ou en HTML :

  • bean-check : un validateur qui vérifie les erreurs de syntaxe ou les erreurs comptables dans le fichier. L'exécution de bean-check myfile.beancount vous alertera de tout déséquilibre, compte manquant ou autre problème, et ne produira rien si le fichier est exempt d'erreurs.
  • bean-format : un formateur qui organise votre grand livre en alignant les chiffres dans des colonnes soignées, un peu comme l'exécution d'un formateur de code sur du code source. Cela aide à maintenir le fichier propre et lisible.
  • bean-query : un shell interactif ou un outil de traitement par lots pour exécuter le langage de requête de Beancount sur votre grand livre. Vous pouvez l'utiliser pour produire des rapports tabulaires personnalisés (par ex., bean-query myfile.beancount "SELECT account, sum(amount) WHERE ...").
  • bean-report : un générateur de rapports polyvalent (en v2) capable de produire des rapports prédéfinis (bilan, compte de résultat, balance de vérification, etc.) sur la console ou dans des fichiers. Par exemple, bean-report file.beancount balances imprimerait les soldes des comptes. (En pratique, bon nombre de ces rapports textuels ont été supplantés par la présentation plus agréable de Fava.)
  • bean-web / bean-bake : une ancienne interface web qui servait les rapports sur localhost ou les "cuisait" (générait) en tant que fichiers HTML statiques. Ceux-ci étaient principalement utilisés avant que Fava ne devienne populaire ; bean-web fournissait une vue web basique des mêmes rapports que bean-report pouvait générer. Dans Beancount 3, bean-web a été supprimé (car Fava est maintenant l'interface web recommandée, offrant une expérience supérieure).
  • bean-example : un utilitaire pour générer un fichier de grand livre exemple (utile pour les nouveaux utilisateurs afin de voir un modèle d'écritures Beancount).
  • bean-doctor : un outil de débogage capable de diagnostiquer les problèmes dans votre grand livre ou votre environnement.

Il est important de noter qu'à partir de Beancount v3, bon nombre de ces outils ont été déplacés hors du projet principal. Le paquet Beancount principal a été rationalisé, et des outils comme le moteur de requête et les importateurs ont été scindés en paquets séparés (beanquery, beangulp, etc.) pour faciliter la maintenance. Par exemple, la fonctionnalité de bean-query est maintenant fournie par l'outil beanquery qui est installé séparément. Du point de vue de l'utilisateur, la fonctionnalité reste disponible ; elle a simplement été modularisée. La communauté Arch Linux a noté ce changement lors de la mise à jour de Fava : le paquet Fava a ajouté des dépendances à beanquery et beangulp pour prendre en charge Beancount 3.x. Cette approche modulaire permet également à d'autres membres de la communauté de contribuer à ces outils auxiliaires plus indépendamment du cycle de publication de Beancount.

Plugins et Extensions Beancount

Une force remarquable de l'écosystème Beancount est son système de plugins. En ajoutant une ligne plugin "module.name" dans votre fichier Beancount, vous pouvez intégrer une logique Python personnalisée qui s'exécute pendant le traitement du grand livre. La communauté a créé de nombreux plugins pour étendre les capacités de Beancount :

  • Qualité des données et règles : Des exemples incluent beancount-balexpr qui vous permet d'affirmer des équations impliquant plusieurs comptes (par exemple, Actif A + Actif B = Passif X), et beancount-checkclosed qui insère automatiquement des assertions de solde lorsque vous clôturez un compte pour s'assurer qu'il est à zéro. Il existe même un plugin pour s'assurer que les transactions dans le fichier sont triées par date (autobean.sorted) afin de détecter les entrées désordonnées.
  • Automatisation : Le plugin beancount-asset-transfer peut générer des écritures de transfert en nature entre comptes (utile pour déplacer des actions entre courtiers tout en préservant le prix de revient). Un autre, autobean.xcheck, recoupe votre grand livre Beancount avec des relevés externes pour détecter les écarts.
  • Transactions récurrentes et budgets : Le plugin « repeat » ou d'interpolation d'Akuukis permet de définir des transactions récurrentes ou de répartir une dépense annuelle sur plusieurs mois. Pour la budgétisation, l'extension fava-envelope (utilisée via Fava) prend en charge la méthodologie de budgétisation par enveloppes en texte brut. Il existe également MiniBudget de Frank Davies – un petit outil autonome inspiré de Beancount pour aider à la budgétisation pour un usage personnel ou pour les petites entreprises.
  • Fiscalité et rapports : Certains plugins aident à la comptabilité fiscale, comme celui qui classe automatiquement les plus-values en court ou long terme. Un autre (fincen_114 de Justus Pendleton) génère un rapport FBAR pour les contribuables américains ayant des comptes étrangers, illustrant comment les données Beancount peuvent être utilisées pour les rapports réglementaires.
  • Dépôts de plugins communautaires : Il existe des ensembles de plugins organisés tels que beancount-plugins (par Dave Stephens) se concentrant sur des éléments comme les écritures d'amortissement, et beancount-plugins-zack (par Stefano Zacchiroli) qui incluent divers utilitaires comme les directives de tri.

En plus des plugins, d'autres outils utilitaires gravitant autour de Beancount répondent à des besoins spécifiques. Par exemple, beancount-black est un auto-formateur similaire au formateur de code Black, mais pour les fichiers de grand livre Beancount. Il existe un Bot Beancount (Telegram/Mattermost) pour ajouter des transactions via le chat comme mentionné, et un workflow Alfred pour macOS pour ajouter rapidement des transactions à votre fichier. Un outil nommé Pinto offre une interface en ligne de commande « suralimentée » avec saisie interactive (comme un bean-add amélioré). Pour ceux qui migrent depuis d'autres systèmes, des convertisseurs existent (YNAB2Beancount, CSV2Beancount, GnuCash2Beancount, Ledger2Beancount) pour aider à importer des données d'ailleurs.

En résumé, l'écosystème Beancount est assez vaste. Le Tableau 1 ci-dessous liste quelques outils et extensions majeurs avec leurs rôles :

Outil/ExtensionDescription
Fava (interface web)Application web complète pour visualiser et modifier les livres Beancount. Fournit des rapports interactifs (bilan, revenus, etc.), des graphiques et des capacités de requête. Un atout majeur pour l'ergonomie de Beancount.
Beangulp (cadre d'importation)Cadre d'importation autonome pour Beancount v3, remplaçant l'ancien module d'ingestion. Aide à convertir les relevés bancaires (CSV, PDF, etc.) en écritures Beancount à l'aide de scripts de plugins.
Beanquery (outil de requête)Moteur de requête autonome de type SQL pour les données Beancount. Remplace bean-query dans la v3, permettant des requêtes avancées sur les transactions et les soldes via une syntaxe SELECT-FROM-WHERE familière.
Bean-check / Bean-formatOutils CLI essentiels pour valider un fichier Beancount (vérifier les erreurs) et le formater automatiquement pour la cohérence. Utile pour maintenir un grand livre correct et propre.
Plugins d'éditeur (Emacs, VSCode, Vim, etc.)Plugins/modes qui ajoutent la prise en charge de la syntaxe Beancount et le linting dans les éditeurs de texte. Améliorent l'expérience d'édition manuelle des fichiers .beancount avec des fonctionnalités comme l'auto-complétion et la mise en évidence des erreurs en temps réel.
Importateurs communautairesCollections de scripts d'importation bancaire (nombreux sur GitHub) couvrant des banques aux États-Unis, en UE, en Asie, et plus encore. Permettent aux utilisateurs d'ingérer automatiquement les transactions de leurs institutions financières dans Beancount.
Plugins (extensions de grand livre)Plugins optionnels intégrés aux fichiers pour appliquer des règles ou ajouter des fonctionnalités (par exemple, partage de dépenses, écritures récurrentes, assertions de solde personnalisées). Écrits en Python et exécutés pendant le traitement du fichier pour la personnalisation.
Convertisseurs (Outils de migration)Utilitaires pour convertir des données d'autres formats vers Beancount, par exemple de GnuCash ou Ledger CLI au format Beancount. Facilitent l'adoption de Beancount sans partir de zéro.

Comparaison avec Ledger, hledger et les systèmes similaires

Beancount appartient à la famille des outils de comptabilité en partie double en texte brut, parmi lesquels Ledger CLI (Ledger de John Wiegley) et hledger sont proéminents. Bien que tous ces systèmes partagent l'idée fondamentale de fichiers de grand livre en texte brut et de la comptabilité en partie double, ils diffèrent par leur syntaxe, leur philosophie et la maturité de leur écosystème. Le tableau suivant met en évidence les principales différences entre Beancount, Ledger et hledger :

AspectBeancount (Python)Ledger CLI (C++)hledger (Haskell)
Syntaxe et structure de fichierSyntaxe stricte et structurée définie par une grammaire formelle (BNF). Les transactions comportent des lignes explicites date flag "Bénéficiaire" "Libellé" et des écritures avec des quantités ; tous les comptes doivent être explicitement ouverts/définis. Pas d'écritures implicites ; chaque transaction doit s'équilibrer.Syntaxe plus libre. Le bénéficiaire/la description se trouve généralement sur la même ligne que la date. Permet un certain équilibrage implicite (par exemple, une transaction à une seule écriture peut impliquer une seconde écriture vers un compte par défaut). Les noms de compte peuvent être utilisés sans déclaration préalable. Offre de nombreuses options de ligne de commande qui peuvent affecter l'analyse (par exemple, les hypothèses d'année, les règles de fusion des marchandises).Suit largement la syntaxe de Ledger avec des différences mineures. hledger est une réimplémentation des fonctionnalités principales de Ledger en Haskell, de sorte que le format du journal est très similaire à celui de Ledger (avec quelques extensions et une analyse plus stricte par défaut). Par exemple, hledger est un peu plus strict concernant les dates et la syntaxe des marchandises que Ledger, mais pas autant que Beancount.
PhilosophieConservateur et Pédant. Met l'accent sur la détection des erreurs utilisateur et le maintien de l'intégrité des données avant tout. Impose de nombreuses vérifications (assertions de solde, suivi des lots) par défaut. Configuration minimale – approche "une seule façon de faire" pour la cohérence. Conçu comme une bibliothèque avec des plugins pour l'extensibilité (traite les données du grand livre comme un flux à traiter, permettant une logique Python personnalisée).Optimiste et Flexible. Fait confiance à l'utilisateur pour saisir les données correctement ; moins de contraintes intégrées par défaut. Hautement personnalisable avec des dizaines d'options et de drapeaux de commande pour ajuster le comportement. Tend à être un outil monolithique avec des fonctionnalités intégrées (rapports, graphiques) et utilise un langage spécifique au domaine au sein du grand livre pour des éléments tels que les transactions automatisées et les transactions périodiques. L'extensibilité se fait généralement via des scripts externes ou le langage de requête intégré plutôt que par des API de plugins.Pragmatique et Cohérent. Vise à rendre l'approche de Ledger accessible à un public plus large avec un comportement prévisible. hledger privilégie par défaut une plus grande cohérence (pas d'hypothèses d'équilibrage sans comptes explicites) et présente moins de pièges que les modes les plus permissifs de Ledger. Il dispose d'un sous-ensemble des fonctionnalités de Ledger (certaines des options plus exotiques de Ledger ne sont pas prises en charge), mais en ajoute certaines des siennes (comme une interface web et l'importation CSV intégrées). Met l'accent sur la stabilité et l'exactitude, mais sans système de plugins comme celui de Beancount.
Transactions et équilibrageComptabilité en partie double stricte : chaque transaction doit avoir des débits et des crédits totaux égaux. Ne permet pas les écritures déséquilibrées ou les espaces réservés (pas d'"écritures virtuelles" qui s'auto-équilibrent). Applique également l'indépendance de l'ordre : le grand livre peut être trié par date arbitrairement car les assertions de solde sont liées à la date, ne dépendant pas de l'ordre du fichier. Le suivi des coûts pour les marchandises est rigoureux – lorsque vous vendez des actifs, vous devez spécifier les lots ou Beancount appliquera FIFO/LIFO de manière à ce que vous ne puissiez pas retirer quelque chose que vous n'avez pas ajouté.Permet plus de souplesse dans les transactions. Ledger autorise les écritures "virtuelles" (utilisant des crochets [ ] ou des parenthèses) qui ne nécessitent pas de compte d'équilibrage explicite – souvent utilisées pour gérer la budgétisation ou l'équilibrage implicite des capitaux propres. Il est possible dans Ledger de saisir une transaction incomplète (en omettant un côté) et de laisser Ledger déduire le montant d'équilibrage. De plus, Ledger n'applique pas strictement le retrait d'actifs lot par lot ; il soustraira volontiers d'un solde global de marchandises même si des lots spécifiques n'ont pas été suivis. Cela facilite, par exemple, la comptabilité au coût moyen, mais signifie que Ledger ne vous empêchera pas de faire des erreurs comme vendre plus d'actions que vous n'en avez dans un lot donné.
Inventaire et coût de baseSuivi précis des lots. Beancount associe les informations de coût aux lots de marchandises (par exemple, achat de 10 actions à 100 $ chacune), et lors de la réduction d'un inventaire, il exige la correspondance d'un lot spécifique ou l'utilisation d'une stratégie définie. Il garantit que les gains en capital

Cas d'utilisation de Beancount

Beancount est suffisamment polyvalent pour être utilisé pour le suivi des finances personnelles ainsi que (dans certains cas) pour la comptabilité des petites entreprises. Son approche fondamentale de la comptabilité en partie double est la même dans les deux cas, mais l'échelle et les pratiques spécifiques peuvent différer.

Finances personnelles

De nombreux utilisateurs de Beancount l'emploient pour gérer leurs finances individuelles ou familiales. Une configuration typique de finances personnelles dans Beancount pourrait inclure des comptes courants et d'épargne, des cartes de crédit, des investissements, des prêts, des catégories de revenus (salaire, intérêts, etc.) et des catégories de dépenses (loyer, épicerie, divertissement, etc.). Les utilisateurs enregistrent les transactions quotidiennes soit manuellement (en saisissant les reçus, les factures, etc.), soit en les important à partir de relevés bancaires à l'aide des outils d'importation abordés précédemment. Les avantages que Beancount apporte aux finances personnelles sont les suivants :

  • Consolidation et analyse : Toutes vos transactions peuvent résider dans un seul fichier texte (ou un ensemble de fichiers) qui représente des années d'historique financier. Cela facilite l'analyse des tendances à long terme. Avec le langage de requête de Beancount ou avec Fava, vous pouvez répondre en quelques secondes à des questions comme « Combien ai-je dépensé en voyages au cours des 5 dernières années ? » ou « Quel est mon budget moyen mensuel pour l'épicerie ? ». Un utilisateur a noté qu'après être passé à Beancount, « l'analyse des données financières (dépenses, dons, impôts, etc.) est triviale », que ce soit via Fava ou en interrogeant les données et en utilisant des outils comme Pandas. En substance, votre grand livre devient une base de données financière personnelle que vous pouvez interroger à volonté.
  • Budgétisation et planification : Bien que Beancount n'impose pas de système de budgétisation, vous pouvez en implémenter un. Certains utilisateurs pratiquent la budgétisation par enveloppes en créant des comptes budgétaires ou en utilisant le plugin fava-envelope. D'autres utilisent simplement des rapports périodiques pour comparer les dépenses aux objectifs. Comme il s'agit de texte brut, l'intégration de Beancount avec des outils de budgétisation externes ou des tableurs est simple (exportation de données ou utilisation des sorties CSV des requêtes).
  • Suivi des investissements et de la valeur nette : Beancount excelle dans le suivi des investissements grâce à sa gestion robuste des prix de revient et des prix du marché. Vous pouvez enregistrer les achats/ventes d'actions, de crypto-monnaies, etc., avec les détails des coûts, puis utiliser les directives Prices pour suivre la valeur marchande. Fava peut afficher un graphique de l'évolution de la valeur nette et une répartition du portefeuille par classe d'actifs. C'est extrêmement utile pour la gestion de patrimoine personnelle – vous obtenez des informations similaires à celles que fournissent des outils commerciaux comme Mint ou Personal Capital, mais entièrement sous votre contrôle. La gestion multi-devises est également intégrée, donc si vous détenez des devises étrangères ou des crypto-monnaies, Beancount peut les suivre et les convertir pour les rapports.
  • Rapprochement et exactitude : Les finances personnelles impliquent souvent un rapprochement avec les relevés bancaires. Avec Beancount, on peut régulièrement rapprocher les comptes en utilisant des assertions de solde ou la fonctionnalité de documents. Par exemple, chaque mois, vous pourriez ajouter une entrée balance Assets:Bank:Checking <date> <balance> pour confirmer que votre grand livre correspond au relevé de la banque à la fin du mois. L'outil bean-check (ou l'affichage des erreurs de Fava) vous alertera si les choses ne correspondent pas. Un utilisateur mentionne effectuer un rapprochement mensuel de tous les comptes, ce qui « aide à détecter toute activité inhabituelle » – une bonne pratique d'hygiène financière personnelle que Beancount facilite.
  • Automatisation : Les personnes averties en technologie ont automatisé une grande partie de leur flux de travail de finances personnelles avec Beancount. En utilisant des importateurs, des tâches cron et peut-être un peu de Python, vous pouvez configurer votre système de sorte que, par exemple, chaque jour vos transactions bancaires soient récupérées (certains utilisent OFX ou des API) et ajoutées à votre fichier Beancount, catégorisées par des règles. Au fil du temps, votre grand livre est majoritairement mis à jour automatiquement, et vous n'avez qu'à le réviser et l'ajuster si nécessaire. Un membre de la communauté sur Hacker News a partagé qu'après 3 ans, leurs livres Beancount étaient « 95 % automatiques ». Ce niveau d'automatisation est possible grâce à l'ouverture du texte brut de Beancount et à ses capacités de script.

Les utilisateurs de finances personnelles choisissent souvent Beancount plutôt que des tableurs ou des applications car il leur confère la propriété complète des données (pas de dépendance à un service cloud qui pourrait fermer – une préoccupation, par exemple, lorsque Mint a été abandonné) et parce que la profondeur des informations est plus grande lorsque toutes vos données sont intégrées. La courbe d'apprentissage n'est pas triviale – il faut apprendre les bases de la comptabilité et la syntaxe Beancount – mais des ressources comme la documentation officielle et les tutoriels communautaires aident les nouveaux venus à démarrer. Une fois configuré, beaucoup trouvent que cela apporte une tranquillité d'esprit d'avoir une image claire et fiable de leurs finances à tout moment.

Comptabilité des petites entreprises

L'utilisation de Beancount pour une petite entreprise (ou une organisation à but non lucratif, un club, etc.) est moins courante que pour un usage personnel, mais c'est tout à fait possible et certains l'ont fait avec succès. Le cadre de la comptabilité en partie double de Beancount est en fait le même système qui sous-tend la comptabilité d'entreprise, mais sans certaines des fonctionnalités de niveau supérieur que les logiciels comptables dédiés offrent (comme les modules de facturation ou les intégrations de paie). Voici comment Beancount peut s'intégrer dans le contexte d'une petite entreprise :

  • Grand Livre et États Financiers : Une petite entreprise peut considérer le fichier Beancount comme son grand livre. Vous auriez des comptes d'actif pour les comptes bancaires, les créances clients, peut-être les stocks ; des comptes de passif pour les cartes de crédit, les emprunts, les dettes fournisseurs ; des capitaux propres pour le capital du propriétaire ; des comptes de produits pour les ventes ou les services ; et des comptes de charges pour toutes les dépenses de l'entreprise. En tenant ce grand livre, vous pouvez produire un Compte de Résultat (Profits et Pertes) et un Bilan à tout moment en utilisant les rapports ou les requêtes de Beancount. En fait, les rapports intégrés de Beancount ou Fava peuvent générer un bilan et un compte de résultat en quelques secondes, parfaitement conformes aux principes comptables. Cela peut être suffisant pour une petite entreprise afin d'évaluer sa rentabilité, sa situation financière et ses flux de trésorerie (avec un peu de requêtes pour les flux de trésorerie, car les tableaux de flux de trésorerie directs ne sont pas intégrés mais peuvent être dérivés).
  • Factures et Clients (A/R), Fournisseurs (A/P) : Beancount ne dispose pas de système de facturation intégré ; les utilisateurs géreraient généralement la facturation en externe (par exemple, créer des factures dans Word ou une application de facturation), puis enregistreraient les résultats dans Beancount. Par exemple, lorsque vous émettez une facture, vous enregistreriez une écriture débitant les Comptes Clients et créditant les Produits. Lorsque le paiement arrive, vous débitez Caisse/Banque et créditez les Comptes Clients. De cette façon, vous pouvez suivre les créances en suspens en consultant le solde du compte Clients. Il en va de même pour les factures fournisseurs (A/P). Bien que cela soit plus manuel qu'un logiciel comptable spécialisé (qui pourrait envoyer des rappels ou s'intégrer aux e-mails), c'est parfaitement réalisable. Certains utilisateurs ont partagé des modèles ou des flux de travail sur la façon dont ils gèrent les factures avec Beancount et s'assurent de ne pas oublier les factures ouvertes (par exemple, en utilisant des métadonnées ou des requêtes personnalisées pour lister les factures impayées).
  • Stocks ou Coût des Marchandises Vendues : Pour les entreprises vendant des produits, Beancount peut suivre les achats et les ventes de stocks, mais cela nécessite des écritures rigoureuses. Vous pourriez utiliser les fonctionnalités de Stocks et de comptabilité analytique des coûts : l'achat de stocks augmente un compte d'actif (avec le coût attaché aux articles), la vente déplace le coût vers une charge (CMV) et enregistre les revenus. Parce que Beancount insiste sur l'appariement des lots, il forcera une réduction correcte des stocks avec le bon coût, ce qui peut en fait garantir l'exactitude de vos calculs de marge brute si cela est bien fait. Cependant, il n'y a pas de suivi automatisé des UGS ou quoi que ce soit de ce genre – tout est au niveau financier (quantité et coût).
  • Paie et Transactions Complexes : Beancount peut enregistrer les transactions de paie (charge salariale, retenues fiscales, etc.), mais le calcul de ces chiffres pourrait être effectué en externe ou via un autre outil, puis simplement enregistré dans Beancount. Pour une très petite entreprise (disons un ou deux employés), c'est gérable. Vous enregistreriez, par exemple, une seule écriture de journal par période de paie qui ventile les salaires, les impôts retenus, les charges patronales, l'argent versé, etc. Faire cela manuellement est similaire à la façon dont on pourrait le faire dans les écritures de journal de QuickBooks – cela nécessite une connaissance des comptes à impacter.
  • Multi-utilisateur et Audit : Un défi dans un environnement commercial est de savoir si plusieurs personnes doivent accéder aux livres ou si un comptable doit les examiner. Puisque Beancount est un fichier texte, il n'est pas multi-utilisateur en temps réel. Cependant, héberger le fichier dans un dépôt Git peut permettre la collaboration : chaque personne peut modifier et valider, et les différences peuvent être fusionnées.
  • Conformité réglementaire : Pour la déclaration fiscale ou la conformité, les données de Beancount peuvent être utilisées pour générer les rapports nécessaires, mais cela peut nécessiter des requêtes personnalisées ou des plugins. Nous avons vu un exemple de plugin communautaire pour les rapports de conformité du gouvernement indien, et un autre pour les rapports FBAR du FinCEN. Cela montre qu'avec des efforts, Beancount peut être adapté pour répondre à des exigences de reporting spécifiques. Les petites entreprises dans les juridictions ayant des exigences simples (comptabilité de caisse, ou comptabilité d'engagement de base) peuvent certainement tenir leurs livres dans Beancount et produire des états financiers pour les déclarations de revenus. Cependant, des fonctionnalités comme les tableaux d'amortissement ou l'amortissement pourraient vous obliger à écrire vos propres écritures ou à utiliser un plugin (les plugins d'amortissement de Dave Stephens, par exemple, aident à automatiser cela). Il n'y a pas d'interface graphique pour "cliquer sur amortir un actif" comme dans certains logiciels comptables ; vous coderiez l'amortissement comme des transactions (ce qui, d'une certaine manière, le démystifie – tout est une écriture que vous pouvez inspecter).

En pratique, de nombreux propriétaires de petites entreprises axées sur la technologie ont utilisé Beancount (ou Ledger/hledger) s'ils préfèrent le contrôle et la transparence à la commodité de QuickBooks. Une discussion sur Reddit a noté que pour la comptabilité standard des petites entreprises avec un volume limité de transactions, Beancount fonctionne bien. Le facteur limitant est généralement le niveau de confort – si le propriétaire de l'entreprise (ou son comptable) est à l'aise avec un outil basé sur du texte. Un avantage est le coût : Beancount est gratuit, tandis que les logiciels comptables peuvent être coûteux pour une petite entreprise. D'autre part, le manque de support officiel et la nature "faites-le vous-même" signifient qu'il convient mieux à ceux qui sont à la fois propriétaires d'entreprise et quelque peu techniquement enclins. Pour les freelances ou les entrepreneurs individuels ayant des compétences en programmation, Beancount peut être un choix attrayant pour gérer leurs finances sans dépendre des services de comptabilité en ligne.

Des approches hybrides sont également possibles : certaines petites entreprises utilisent un système officiel pour les factures ou la paie, mais importent périodiquement les données dans Beancount pour l'analyse et l'archivage. De cette façon, elles bénéficient du meilleur des deux mondes – conformité et facilité pour les opérations quotidiennes, plus la puissance de Beancount pour une vue d'ensemble consolidée.

En résumé, Beancount peut gérer la comptabilité des petites entreprises, à condition que l'utilisateur soit prêt à gérer manuellement des choses que les logiciels commerciaux automatisent. Il assure un haut degré de transparence – vous comprenez profondément vos livres parce que vous les écrivez – et pour un utilisateur diligent, il peut produire des livres impeccables. Les utilisateurs personnels et professionnels bénéficient des forces fondamentales de Beancount : un moteur comptable fiable, une piste d'audit complète et une flexibilité pour s'adapter à des scénarios uniques (via le scripting et les plugins). Qu'il s'agisse de suivre un budget domestique ou les finances d'une startup, Beancount offre une boîte à outils pour le faire avec précision et transparence.

Communauté et activité de développement

Beancount dispose d'une communauté dédiée et d'une histoire de développement qui reflète sa nature open source, de niche mais passionnée. Voici les points clés concernant sa communauté, ses mainteneurs et les projets connexes :

  • Maintenance du projet : L'auteur principal de Beancount est Martin Blais, qui a initié le projet vers 2007 et l'a guidé à travers de multiples versions. Le développement a longtemps été un effort solitaire (mis à part les contributions de correctifs de la communauté). La philosophie de Martin était de construire un outil de comptabilité "utile pour moi d'abord, ainsi que pour les autres, de la manière la plus simple et la plus durable". Cette motivation personnelle a maintenu le projet comme une œuvre d'amour. En 2025, Martin Blais est toujours le mainteneur principal (son nom apparaît sur les commits et il répond aux questions sur la liste de diffusion/le suivi des problèmes), mais l'écosystème autour de Beancount compte de nombreux autres contributeurs dans leurs projets respectifs.

  • GitHub et dépôts : Le code source est hébergé sur GitHub sous le dépôt beancount/beancount. Le projet est sous licence GPL-2.0 et a attiré un nombre modeste de contributeurs au fil des ans. Mi-2024, Beancount Version 3 a été officiellement publiée comme la nouvelle branche stable. Cette version a impliqué la séparation de certains composants : par exemple, le dépôt beangulp (pour les importateurs) et le dépôt beanquery (pour l'outil de requête) font désormais partie de l'organisation GitHub beancount, maintenus de manière quelque peu indépendante. Le dépôt principal de Beancount se concentre sur le moteur comptable principal et l'analyseur de fichiers. En 2025, le GitHub de Beancount montre des discussions actives sur les problèmes et un développement continu – bien que le volume ne soit pas élevé, les problèmes et les requêtes de tirage (pull requests) arrivent au compte-gouttes, et des mises à jour occasionnelles sont effectuées pour corriger des bogues ou affiner des fonctionnalités.

  • Développement de Fava : Fava, l'interface web, a commencé comme un projet distinct (créé par Dominic Aumayr, qui en a déposé le copyright en 2016). Il a sa propre communauté de contributeurs et est également sur GitHub sous beancount/fava. Les mainteneurs et contributeurs de Fava (par exemple Jakob Schnetz, Stefan Otte, et d'autres ces dernières années) ont activement amélioré l'interface, avec des versions tous les quelques mois. Le chat Gitter de Fava (lié sur la documentation de Fava) et le suivi des problèmes GitHub sont des lieux où les utilisateurs et les développeurs discutent des nouvelles fonctionnalités ou des bogues. Le projet accueille les contributions, comme en témoigne une note dans le CHANGELOG remerciant plusieurs membres de la communauté pour leurs PRs. L'alignement étroit de Fava avec le développement de Beancount (tel que l'ajout rapide du support pour Beancount v3 et la nouvelle syntaxe beanquery) indique une bonne collaboration entre les deux projets.

  • Listes de diffusion et forums : Beancount dispose d'une liste de diffusion officielle (précédemment sur Google Groupes, intitulée "Beancount" ou parfois discutée sur la liste générale de Ledger). Cette liste de diffusion est une mine d'informations – les utilisateurs posent des questions sur la modélisation de certains scénarios, signalent des bogues et partagent des astuces. Martin Blais est connu pour répondre sur la liste de diffusion avec des explications détaillées. De plus, la communauté plus large de la Comptabilité en Texte Brut se chevauche fortement. La liste de diffusion de Ledger CLI traite souvent des questions sur Beancount également, et il existe un forum sur plaintextaccounting.org ainsi qu'un subreddit r/plaintextaccounting où les sujets Beancount sont fréquemment abordés. Les utilisateurs sur ces plateformes discutent des comparaisons, partagent leurs configurations personnelles et aident les nouveaux venus. Le ton général de la communauté est très coopératif – les utilisateurs de Beancount aident souvent les utilisateurs de Ledger et vice versa, reconnaissant que tous ces outils ont des objectifs similaires.

  • Groupes de discussion : Outre les listes de diffusion, il existe des canaux de discussion comme le Slack/Discord Plaintext Accounting (organisé par la communauté) et le Gitter de Fava. Ce sont des moyens moins formels et plus en temps réel d'obtenir de l'aide ou de discuter de fonctionnalités. Par exemple, on peut se connecter sur Slack pour demander si quelqu'un a un importateur pour une banque spécifique. Il existe également un canal Matrix/IRC (historiquement #ledger ou #beancount sur IRC) où certains utilisateurs de longue date sont présents. Bien que moins peuplés que les communautés de logiciels grand public, ces canaux comptent des personnes bien informées qui peuvent souvent répondre à des questions comptables obscures.

  • Contributeurs et membres clés de la communauté : Quelques noms se distinguent dans la communauté Beancount :

    • "Redstreet" (Red S) : Un contributeur prolifique qui a écrit de nombreux plugins (comme beancount-balexpr, sellgains, et d'autres) et fournit souvent du support. Il maintient également un ensemble de scripts d'importation et un outil appelé bean-download pour récupérer des relevés.
    • Vasily M (Evernight) : Auteur de certains frameworks d'importation et plugins comme beancount-valuation, et des contributions à Fava concernant les investissements.
    • Stefano Zacchiroli (zack) : Un développeur Debian qui a créé le mode beancount pour Emacs et son propre dépôt de plugins. Il a également plaidé pour la comptabilité en texte brut dans les milieux universitaires.
    • Simon Michael : Bien que principalement le responsable de hledger, il gère plaintextaccounting.org qui inclut Beancount. Cette pollinisation croisée a contribué à faire connaître Beancount aux utilisateurs de Ledger/hledger.
    • Frank hell (Tarioch) : Contributeur des Tarioch Beancount Tools, un ensemble majeur d'importateurs et de récupérateurs de prix, en particulier pour les institutions européennes.
    • Siddhant Goel : Un membre de la communauté qui écrit des articles de blog sur Beancount (par exemple, son guide sur la migration vers la v3) et maintient certains importateurs. Ses articles de blog ont aidé de nombreux nouveaux utilisateurs.

    Ceux-ci et bien d'autres contribuent du code, de la documentation et de l'aide sur les forums, rendant l'écosystème dynamique malgré sa taille relativement modeste.

  • Statistiques GitHub et forks : Le dépôt GitHub de Beancount a accumulé quelques centaines d'étoiles (indiquant l'intérêt) et de forks. Les forks notables de Beancount lui-même sont rares – il n'y a pas de fork divergent bien connu qui essaie d'être "Beancount mais avec la fonctionnalité X". Au lieu de cela, lorsque les utilisateurs voulaient quelque chose de différent, ils ont soit écrit un plugin, soit utilisé un autre outil (comme hledger) plutôt que de forker Beancount. On pourrait considérer hledger comme une sorte de fork de Ledger (pas de Beancount) et Beancount lui-même comme une réinterprétation indépendante des idées de Ledger, mais au sein du dépôt de Beancount, il n'y a pas de grands projets de scission. La communauté s'est généralement regroupée autour du dépôt principal et l'a étendu via l'interface de plugin au lieu de fragmenter la base de code. Cela est probablement dû au fait que Martin Blais était ouvert aux contributions externes (sa documentation contient même une section reconnaissant les contributions et modules externes) et que l'architecture de plugin a rendu inutile le maintien d'un fork pour la plupart des nouvelles fonctionnalités.

  • Ressources communautaires : Il existe plusieurs ressources de haute qualité pour apprendre et utiliser Beancount, créées par la communauté :

    • La documentation Beancount sur GitHub Pages (et les Google Docs source que Martin maintient) – très complète, incluant la théorie comptable et comment Beancount l'implémente.

    • De nombreux articles de blog et notes personnelles – par exemple, LWN.net a publié un article "Counting beans… with Beancount", et de nombreux blogs personnels (tels que listés dans la section "Blog Posts" d'Awesome Beancount) partagent des expériences et des astuces. Ceux-ci contribuent à développer les connaissances et à attirer de nouveaux utilisateurs.

    • Conférences et présentations : Beancount a été présenté lors de meetups et de conférences (par exemple, une conférence PyMunich 2018 sur la gestion des finances avec Python/Beancount). De telles conférences présentent l'outil à un public plus large et suscitent souvent l'intérêt sur des forums comme Hacker News.

  • Projets connexes notables : Outre Fava, d'autres projets liés à Beancount ont leurs propres communautés :

    • Le site Plain Text Accounting – maintenu par Simon Michael, il regroupe des informations sur tous ces outils et dispose d'un forum où les gens partagent leur utilisation de divers outils, y compris Beancount.
    • Intégration d'outils financiers : Certains utilisateurs intègrent Beancount avec des outils de business intelligence ou des bases de données. Par exemple, un fil de discussion Google Groups détaille l'utilisation de PostgreSQL avec les données Beancount via des fonctions personnalisées. Bien que ce ne soit pas grand public, cela montre l'esprit expérimental de la communauté à repousser les capacités de Beancount (par exemple, pour gérer de très grands ensembles de données ou des requêtes complexes au-delà des fonctionnalités intégrées).

En résumé, la communauté de Beancount, bien que plus petite que celles des grands projets open source, est très engagée et compétente. Le projet bénéficie d'un flux constant d'améliorations et de canaux de support très utiles. L'éthos collaboratif (partage d'importateurs, écriture de plugins, réponse aux questions) signifie qu'un nouvel arrivant en 2025 peut s'appuyer sur un travail antérieur étendu et la sagesse de la communauté pour configurer son système comptable. Le développement est actif au sens de l'écosystème – versions de Fava, développement de plugins, etc. – même si les changements du cœur sont plus occasionnels. La croissance de l'écosystème (comme en témoigne la liste Awesome Beancount de dizaines d'outils) témoigne d'une communauté saine rendant Beancount toujours plus performant.

Développements récents et fonctionnalités à venir

En 2025, l'écosystème Beancount a connu des développements significatifs au cours des deux dernières années, et des

Dix conseils de comptabilité pour optimiser votre flux de travail Beancount

· 7 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Une excellente thérapie pour votre entreprise est un grand livre calme et équilibré. Les conseils suivants condensent les dernières recommandations pour les petites entreprises en une routine compatible avec Beancount.

Tenir une comptabilité impeccable ne se limite pas à survivre à la saison des impôts ; il s'agit de comprendre la santé financière de votre entreprise en temps réel. Pour les utilisateurs d'un système de comptabilité en texte brut comme Beancount, les bonnes habitudes sont le moteur qui transforme un simple grand livre en un outil puissant d'analyse et de croissance. Les dix conseils suivants sont conçus pour affiner votre processus, vous faire gagner du temps et maintenir vos données financières propres, auditables et prêtes à l'emploi.

2024-09-12-bookkeeping-basics-for-therapists-with-beancount

1. Séparer l'argent professionnel et personnel

C'est la règle d'or des finances d'entreprise pour une raison. Tenir un compte courant et une carte de crédit dédiés à votre activité est le moyen le plus propre de tracer une ligne entre votre vie professionnelle et votre vie personnelle. Cela simplifie considérablement la préparation des déclarations de revenus, fournit une piste d'audit claire et contribue à protéger vos actifs personnels des responsabilités de l'entreprise. Dans Beancount, cela signifie que vos transactions sont triées dès le départ - plus besoin d'essayer de se souvenir si cet achat de café était une réunion client ou une dépense personnelle.

2. Choisir la comptabilité de caisse ou la comptabilité d'exercice dès le début, puis s'y tenir

Votre méthode comptable détermine quand vous enregistrez les revenus et les dépenses. L'administration fiscale permet à la plupart des petites entreprises de choisir entre la méthode de caisse ou la méthode d'exercice.

  • Comptabilité de caisse : Vous enregistrez les revenus lorsque l'argent arrive sur votre compte et les dépenses lorsque l'argent en sort. C'est simple et idéal pour les entreprises ayant des transactions simples et immédiates.
  • Comptabilité d'exercice : Vous enregistrez les revenus lorsque vous les gagnez (par exemple, lorsque vous fournissez un service) et les dépenses lorsque vous les engagez, quel que soit le moment où l'argent change de mains. Cela donne une image plus précise de la rentabilité, surtout si vous gérez des factures ou des demandes de remboursement d'assurance avec des paiements différés.

La clé est de choisir une méthode dès le début et de l'appliquer de manière cohérente. Vous pouvez même déclarer votre choix dans votre grand livre en utilisant le bloc options de Beancount pour formaliser la décision.

3. Rapprocher régulièrement

Le rapprochement est le processus de comparaison des transactions de votre grand livre Beancount avec vos relevés bancaires et de carte de crédit officiels. Effectuer cette vérification à une cadence régulière, que ce soit chaque semaine ou chaque mois, est une habitude cruciale. Cela vous permet de repérer les frais bancaires, de détecter les fraudes potentielles et d'identifier les erreurs d'importation de données avant qu'elles ne se transforment en un casse-tête majeur. Une commande rapide peut vous montrer le solde à vérifier par rapport à votre relevé.

bean-balance books.bean "Assets:Bank" -e 2025-07-31

4. Automatiser les importations autant que possible

Votre temps est mieux employé à servir les clients qu'à saisir manuellement les données de transaction. L'écosystème de Beancount brille ici. Utilisez des outils comme bean-extract pour créer des configurations qui lisent les fichiers CSV de votre banque, de votre processeur de paiement (comme Stripe ou Square) ou de votre système DSE. Une fois configurés, ces scripts peuvent convertir automatiquement les données brutes en entrées Beancount formatées, réduisant considérablement les erreurs de frappe et libérant des heures de travail administratif.

5. Catégoriser immédiatement, pas au moment des impôts

Remettre à plus tard la catégorisation est une recette pour le stress et l'inexactitude. Lorsqu'une transaction entre dans votre grand livre, attribuez-la immédiatement au compte correct (par exemple, Income:Therapy:SelfPay, Expenses:Software:EHR, Expenses:CEU). Le faire en temps réel vous assure de vous souvenir correctement du contexte de chaque dépense. Un plan comptable bien défini rend ce processus rapide et cohérent, transformant votre grand livre en un rapport riche et en temps réel sur les opérations de votre entreprise.

6. Enregistrer des copies numériques de chaque reçu et relevé de prestations

Les reçus papier s'estompent et se perdent. Une approche numérique est plus résiliente et efficace. Numérisez les reçus papier ou enregistrez les factures PDF et les relevés de prestations au format PDF dans un dossier sécurisé et organisé sur votre ordinateur. Avec Beancount, vous pouvez créer un lien direct vers ces fichiers depuis votre grand livre en utilisant les métadonnées.

2025-07-15 * "Webinaire de formation continue"
Expenses:CEU 79.00 USD
Assets:Bank:Practice
document: "docs/ceu/2025-07-15-trauma-webinar.pdf"

Cela crée un enregistrement incontestable et autonome qui est inestimable lors d'une vérification fiscale.

7. Surveiller les tendances des flux de trésorerie, pas seulement les soldes

Connaître le solde actuel de votre compte bancaire est bien ; comprendre le flux d'argent entrant et sortant de votre entreprise est mieux. Utilisez le puissant langage de requête de Beancount pour analyser vos tendances financières. Représentez graphiquement vos revenus mensuels par rapport à vos dépenses, identifiez vos services les plus rentables ou prévoyez les éventuels problèmes de trésorerie pendant les mois creux. Cette approche proactive, recommandée par les meilleurs guides de comptabilité, vous permet de prendre des décisions stratégiques plutôt que de réagir aux surprises financières.

8. Sauvegarder et gérer les versions de votre grand livre

Puisque votre grand livre Beancount est un simple fichier texte, vous pouvez utiliser Git, un système de contrôle de version puissant et gratuit, pour le gérer. En conservant votre grand livre dans un référentiel Git privé (sur un service comme GitHub ou GitLab), vous obtenez gratuitement deux avantages essentiels :

  1. Un historique complet : Vous pouvez voir chaque modification apportée à votre grand livre.
  2. Une sauvegarde hors site : Vos données sont protégées contre les pannes matérielles locales.

Prenez l'habitude de "pousser" vos modifications après chaque session de rapprochement.

9. Examiner les états financiers mensuellement

N'attendez pas que votre comptable vous dise comment va votre entreprise. À la fin de chaque mois, utilisez les outils de reporting de Beancount pour générer des états financiers clés comme un compte de résultat et un bilan. Comparez-les au mois précédent ou au même mois de l'année dernière. Cet examen régulier vous aide à repérer les fuites de dépenses, à évaluer vos prix et à développer les connaissances financières nécessaires pour répondre aux questions des prêteurs ou des investisseurs en toute confiance.

bean-report books.bean income_statement -e 2025-07-31

10. Budgétiser les impôts tout au long de l'année

Pour un professionnel indépendant, le jour des impôts ne devrait jamais être une surprise. Traitez votre future facture d'impôt comme une dépense récurrente. Créez des comptes de passif dans Beancount (par exemple, Liabilities:Tax:Federal, Liabilities:Tax:State) et transférez régulièrement un pourcentage de chaque paiement que vous recevez dans ces compartiments virtuels. Lorsqu'il est temps d'effectuer vos paiements d'impôt estimés trimestriels, l'argent sera mis de côté et en attente, rendant le processus entièrement indolore.


Liste de contrôle de démarrage rapide

  • Ouvrir des comptes bancaires professionnels distincts.
  • Choisir la comptabilité de caisse ou d'exercice et l'enregistrer dans vos options.
  • Automatiser l'importation des fichiers CSV de votre banque et de votre DSE avec bean-extract.
  • Étiqueter chaque transaction avec une catégorie dès son arrivée.
  • Rapprocher chaque semaine ; sauvegarder dans votre référentiel Git privé après.
  • Exécuter des états mensuels et des requêtes de flux de trésorerie.
  • Transférer une réserve d'impôt sur un compte d'épargne à haut rendement distinct.

Prêt à calmer vos comptes ?

Installez Beancount, validez votre première entrée et laissez ces dix habitudes fournir la structure nécessaire pour maintenir votre cabinet financièrement stable et riche en informations. Bonne tenue de comptes !

Les bases de la comptabilité pour les thérapeutes avec Beancount

· 9 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

La thérapie consiste à écouter ; la comptabilité consiste à écouter votre argent. Lorsque les notes de séance s'accumulent et que les remboursements tardent, une comptabilité transparente devient le calme dans le chaos.

Gérer un cabinet privé signifie porter deux casquettes : clinicien et chef d'entreprise. Alors que votre expertise réside dans la prestation de soins, la santé financière de votre cabinet dépend d'une comptabilité claire et cohérente. Pour les thérapeutes, cette tâche s'accompagne d'un ensemble unique de défis.

2024-08-24-bookkeeping-basics-for-therapists-with-beancount

Pourquoi la comptabilité en thérapie est différente

Le rythme financier d'un cabinet de thérapie suit rarement un schéma simple et prévisible. Cette complexité découle de quelques domaines clés qui font que les logiciels de comptabilité standard semblent souvent inadaptés.

  • Flux de trésorerie irrégulier. Vos revenus sont rarement linéaires. Le ticket modérateur d'un client peut arriver sur votre compte aujourd'hui, mais le remboursement d'assurance correspondant peut prendre des semaines, voire des mois. Ajoutez à cela les plans de paiement à échelle mobile, et vous gérez des liquidités qui arrivent à des moments très différents. Il est donc crucial de comprendre la différence entre le moment où vous gagnez de l'argent (comptabilité d'engagement) et celui où vous le recevez (comptabilité de caisse).
  • Une multitude de frais. Les dépenses liées à la gestion d'un cabinet moderne s'accumulent rapidement. Des abonnements aux dossiers de santé électroniques (DSE) et aux frais de traitement des paiements à l'assurance responsabilité civile et au développement professionnel, de nombreux petits coûts peuvent réduire discrètement vos marges bénéficiaires s'ils ne sont pas suivis méticuleusement.
  • Exonéré de TVA mais forte contribution en tant que travailleur indépendant. Bien que la plupart des services de santé mentale soient exonérés de TVA, vous n'êtes pas exempté d'impôts. En tant que professionnel indépendant, vous êtes responsable du paiement d'impôts estimés trimestriels, qui comprennent l'impôt sur le revenu et les cotisations sociales pour couvrir la sécurité sociale et l'assurance maladie.
  • Sensibilité à la loi HIPAA. Vos données financières sont liées aux informations de santé protégées (ISP). L'utilisation d'un logiciel cloud tiers pour la comptabilité peut élargir la « surface d'attaque » de votre cabinet, créant un autre vecteur potentiel de fuites de données. Un système de comptabilité en texte brut comme Beancount conserve toutes vos données sur votre propre ordinateur, sous votre contrôle, réduisant ce risque.

Un plan en sept étapes avec Beancount

Beancount est un système de comptabilité open-source puissant qui utilise des fichiers texte brut. Il est gratuit, privé et suffisamment flexible pour gérer le paysage financier unique d'un cabinet de thérapie. Voici comment démarrer.

• Séparer les fonds personnels et professionnels

C'est la première étape non négociable des finances d'entreprise. Ouvrez un compte courant professionnel dédié et une carte de crédit professionnelle. Désormais, chaque paiement de client est versé sur ce compte et toutes les dépenses professionnelles, des frais de licence aux fournitures de bureau, sont payées à partir de ces fonds. Dans Beancount, vous pouvez les désigner facilement, créant une frontière claire : chaque transaction est soit personnelle, soit liée au cabinet, éliminant ainsi les approximations. Par exemple, votre nouveau compte devient Actifs:Banque:Cabinet.

• Créer un plan comptable adapté aux thérapeutes

Un « plan comptable » est simplement une liste de toutes les catégories que vous utilisez pour organiser vos transactions financières. Considérez-le comme le système de classement de votre argent. Vous commencerez par les cinq principaux types de comptes : Actifs, Passifs, Capitaux propres, Revenus et Dépenses. Ensuite, vous pouvez créer des sous-comptes adaptés spécifiquement à votre cabinet de thérapie.

2025-07-23 open Revenus:Thérapie:PaiementsDirects       USD
2025-07-23 open Revenus:Thérapie:Assurances USD
2025-07-23 open Actifs:ComptesClients USD
2025-07-23 open Dépenses:FormationContinue USD
2025-07-23 open Dépenses:Logiciels:DSE USD
2025-07-23 open Dépenses:Licences USD

Cette structure vous permet de voir exactement d'où vient votre argent (paiements directs vs. assurances) et où il va (formation continue, logiciels, etc.). Cela reflète les meilleurs plans comptables publiés pour les professionnels de la santé mentale.

• Choisir la méthode de caisse ou d'engagement (et s'y tenir)

Vous devez décider quand comptabiliser vos revenus et vos dépenses.

  • Méthode de caisse : Vous enregistrez les revenus lorsque vous recevez l'argent et les dépenses lorsque vous les payez.
  • Méthode d'engagement : Vous enregistrez les revenus lorsque vous les gagnez (par exemple, lorsqu'une séance est terminée) et les dépenses lorsque vous les engagez, quel que soit le moment où l'argent change de mains.

Par exemple, si un client prépaie 1000 $ pour un forfait de cinq séances, la méthode de caisse enregistre la totalité des 1000 $ de revenus le jour du paiement. La méthode d'engagement enregistrerait 200 $ de revenus après chaque séance terminée, vous donnant une image plus précise de vos revenus mensuels.

Règle générale : Cabinet individuel, peu de demandes de remboursement → la méthode de caisse est plus simple et souvent suffisante. Cabinet de groupe, nombreux remboursements → la méthode d'engagement donne une image plus claire de la rentabilité.

• Suivre les créances et les remboursements

L'une des plus grandes forces de Beancount est sa capacité à suivre l'argent qui vous est dû. Lorsque vous soumettez une demande de remboursement à une assurance, vous n'avez pas encore été payé, mais vous avez gagné le revenu. Vous pouvez enregistrer cela dans votre compte Actifs:ComptesClients. Lorsque le paiement arrive (souvent pour un montant inférieur à celui facturé), vous pouvez « solder » la créance et comptabiliser la déduction d'assurance.

2025-07-10 * "Séance CPT 90837 – en attente BlueCross"
Actifs:ComptesClients 150.00 USD
Revenus:Thérapie:Assurances

2025-07-25 * "Paiement BlueCross CPT 90837"
Actifs:Banque:Cabinet 135.00 USD
Dépenses:DéductionAssurance 15.00 USD
Actifs:ComptesClients -150.00 USD

Ce processus en deux étapes garantit que vous ne perdez jamais de vue les demandes de remboursement en attente et que vous disposez d'un enregistrement précis des ajustements d'assurance.

• Catégoriser rapidement les dépenses déductibles

Le suivi de vos dépenses est essentiel pour minimiser votre facture d'impôts. L'IRS vous permet de déduire les dépenses qui sont « ordinaires et nécessaires » pour votre profession. Pour les thérapeutes, cela comprend les cours de formation continue, la supervision obligatoire par l'État, les frais de renouvellement de licence, l'assurance responsabilité civile et les abonnements aux DSE. En catégorisant ces dépenses au fur et à mesure que vous les engagez, vous disposerez d'un total précis à jour pour vos estimations d'impôts trimestriels et votre déclaration de fin d'année.

• Rapprocher hebdomadairement

Le rapprochement est le processus de comparaison des transactions de votre grand livre Beancount avec vos relevés bancaires et de carte de crédit. Il confirme que vos enregistrements sont exacts et complets. Une vérification hebdomadaire rapide peut éviter que de petites erreurs ne deviennent de gros maux de tête. Avec Beancount, quelques commandes simples dans votre terminal suffisent.

# Vérifier le solde final du compte bancaire de votre cabinet
bean-balance books.bean "Actifs:Banque:Cabinet"

# Voir un résumé de vos sources de revenus
bean-query books.bean "SELECT account, SUM(position) WHERE account ~ 'Revenus' GROUP BY account"

# Générer un compte de résultat pour l'année en cours
bean-report books.bean income_statement --end 2025-07-23

Cette boucle simple – catégoriser, rapprocher et générer des rapports – est le fondement d'une gestion financière saine pour tout cabinet privé.

• Automatiser et sauvegarder

Adoptez l'automatisation pour gagner du temps et réduire les erreurs.

  • Utilisez un outil d'extraction comme bean-extract pour convertir automatiquement les fichiers CSV de votre banque ou de votre DSE en entrées de transaction Beancount.
  • Stockez les PDF de documents importants comme les explications de prestations ou les certificats de formation continue dans un dossier dédié et liez-les directement à la transaction correspondante dans votre grand livre à l'aide des métadonnées document:.
  • Votre grand livre .bean est un simple fichier texte, ce qui le rend parfait pour le contrôle de version. Envoyez votre grand livre vers un dépôt Git privé (comme sur GitHub ou GitLab) tous les soirs pour une sauvegarde hors site sécurisée.

Pièges courants (et solutions rapides)

Même avec un bon système, quelques erreurs courantes peuvent piéger les thérapeutes. Voici comment les repérer et les corriger.

PiègeSolution
Comptabilité par dépôt net (regroupe tous les revenus/frais)Diviser chaque chèque d'assurance en lignes revenus et déduction.
Oublier les frais de non-présentationEnregistrer une ligne de revenus distincte étiquetée nonpresentation pour plus de clarté.
Mélanger les coûts de formation continue et de voyageDistinguer Dépenses:FormationContinue et Dépenses:Voyage – les deux sont déductibles mais suivis différemment.
Ignorer le vieillissement des comptes clientsInterroger Actifs:ComptesClients par date pour relancer les créances anciennes.

Liste de vérification rapide

  • Ouvrir un compte bancaire et une carte de crédit réservés au cabinet.
  • Cloner le dépôt de démarrage Beancount et créer votre plan comptable spécifique à la thérapie.
  • Choisir une méthode de caisse ou d'engagement et la noter dans vos options Beancount.
  • Écrire une configuration d'importateur simple pour les téléchargements CSV de votre banque, de votre DSE ou de votre assurance.
  • Planifier une « heure Beancount » récurrente (peut-être le vendredi après-midi) pour votre flux de travail importer → rapprocher → générer des rapports.
  • Configurer des sauvegardes hors site automatisées pour vos fichiers .bean et tester le processus de restauration une fois par trimestre.

Lectures complémentaires

Prêt à calmer le bruit financier ? Installez Beancount, enregistrez vos premiers honoraires de séance et laissez la clarté de la comptabilité en texte brut donner à votre cabinet l'espace mental et la stabilité financière qu'il mérite. Bonne tenue de comptes Beancount !

Principes de base de la comptabilité pour les vendeurs Amazon avec Beancount

· 8 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Quand vos marges se jouent sur des centimes, la précision l'emporte sur l'approximation.

Vendre sur Amazon est un jeu de volume et de vitesse. Mais derrière la ruée des ventes et des expéditions se cache un réseau complexe de frais, de retours, de mouvements de stocks et d'obligations fiscales. Les logiciels de comptabilité standard ont souvent du mal à saisir ces nuances, laissant les vendeurs avec une image floue de leur rentabilité réelle.

2024-07-16-bookkeeping-basics-for-amazon-sellers-with-beancount

C'est là qu'un système de comptabilité en texte brut comme Beancount brille. En vous donnant un contrôle total sur la façon dont vous enregistrez les transactions, vous pouvez construire une source de vérité financière qui modélise parfaitement les défis uniques du marché Amazon. Ce guide fournit un flux de travail étape par étape pour vous permettre de garder une longueur d'avance sur les frais, les taxes et les maux de tête liés aux stocks.

Pourquoi la comptabilité Amazon est différente

Si vous avez déjà essayé de rapprocher un paiement Amazon avec votre relevé bancaire, vous savez déjà que ce n'est pas simple. La réalité financière d'une entreprise Amazon est cachée derrière des couches d'abstraction.

  • Paiements forfaitaires bihebdomadaires : Amazon ne vous envoie pas les revenus de chaque vente. Au lieu de cela, il envoie un seul dépôt toutes les deux semaines. Ce montant forfaitaire est un chiffre net, avec des ventes brutes réduites par les frais de recommandation, les frais FBA, les coûts publicitaires, les retours et autres retenues. Pour comprendre votre entreprise, vous devez décomposer ce chiffre unique en ses parties constituantes. (doola : A Business-in-a-Box™)
  • Stocks partout : Vos stocks sont constamment en mouvement - de votre fournisseur, à un centre de préparation, à divers centres de distribution FBA à travers le pays, et enfin au client. Le suivi précis de votre coût des marchandises vendues (COGS) nécessite de savoir quel lot de stock (à quel coût) a été utilisé pour chaque vente. (Bean Ninjas)
  • Frais et promotions du marché : Une partie importante de vos revenus est immédiatement consommée par les frais : frais de recommandation, frais d'emballage et d'expédition FBA, frais de stockage mensuels et coûts publicitaires. Le suivi séparé de chacune de ces catégories de dépenses est le seul moyen de calculer votre marge brute réelle et de déterminer la rentabilité réelle d'un produit. (Profitwise Accounting)
  • Patchwork de taxes de vente : Bien que les lois sur les facilitateurs de marché d'Amazon gèrent la collecte et le versement des taxes de vente dans la plupart des États, ce n'est pas une solution complète. Le stockage de stocks dans les entrepôts FBA peut créer un « nexus » (une présence commerciale), vous obligeant potentiellement à vous enregistrer et à produire des déclarations dans ces États, même si aucune taxe n'est due. Il s'agit d'un domaine de conformité complexe qui exige un suivi attentif. (TaxDo)
  • Seuils 1099-K plus bas : Avec le seuil de déclaration pour le formulaire 1099-K passant de 20 000 aˋ5000à 5 000 en 2024 (et devant tomber à seulement 600 $ à partir de 2026), presque tous les vendeurs sérieux recevront un formulaire d'Amazon déclarant leur volume de transactions brut à l'IRS. Vos livres doivent pouvoir se rapprocher parfaitement de ce nombre. (IRS)

Plan en sept étapes avec Beancount

Ce plan exploite la précision de Beancount pour s'attaquer de front à la complexité d'Amazon.

1. Séparer les canaux dès le début

Si vous vendez sur plusieurs plateformes, gardez votre comptabilité pour chacune d'elles séparée. Dans un seul fichier Beancount pour votre entité juridique, créez des comptes hiérarchiques dédiés pour chaque marché. Cette structure simplifie l'analyse et facilite la génération des annexes fiscales.

2025-07-22 open Income:Amazon               USD
2025-07-22 open Expenses:Amazon:FBAFee USD
2025-07-22 open Assets:Amazon:Payouts USD

2. Décomposer chaque paiement

C'est l'habitude la plus critique. N'enregistrez jamais un dépôt Amazon comme une seule ligne de revenu. Téléchargez plutôt le rapport de règlement « Toutes les transactions » de Seller Central pour la période correspondante. Utilisez ce rapport pour créer une seule transaction Beancount qui décompose le paiement en ses composants.

Le dépôt que vous recevez à la banque est l'écriture de contrepartie. Les ventes brutes sont créditées sur Income, tandis que tous les frais et remboursements sont débités de leurs comptes Expenses respectifs.

; paiement bihebdomadaire du rapport de règlement
2025-07-14 * "Règlement Amazon #4361"
Assets:Bank:Operating 8432.17 USD
Income:Amazon:Sales -12274.50 USD
Expenses:Amazon:FBAFee 2454.80 USD
Expenses:Amazon:Adverts 1012.06 USD
Expenses:Amazon:Refunds 375.47 USD
Assets:Amazon:Reserve -100.00 USD

3. Suivre les stocks et le COGS avec des lots

Beancount dispose d'un système de première classe pour le suivi des stocks appelé « lots ». Lorsque vous achetez des stocks, vous enregistrez le nombre d'unités et leur coût spécifique. Lorsqu'une unité est vendue, vous pouvez comptabiliser ce coût exact, ce qui vous donne un calcul parfait du coût des marchandises vendues (COGS).

; Achat de 1 000 unités auprès d'un fournisseur
2025-07-01 * "Bon de commande fournisseur PO-7421"
Assets:Inventory:WidgetA 1000 WidgetA {@ 4.20 USD}
Assets:Bank:Operating

; Plus tard, enregistrez le coût d'une seule vente
2025-07-16 * "Vente FBA WidgetA | COGS"
Expenses:COGS 1 WidgetA {4.20 USD}
Assets:Inventory:WidgetA

4. Choisir la méthode de la comptabilité d'exercice pour plus de clarté

Pour toute entreprise basée sur les stocks, la méthode de la comptabilité d'exercice est supérieure. Une approche de la comptabilité de caisse afficherait une dépense massive au cours du mois où vous achetez des stocks et des bénéfices artificiellement élevés au cours des mois où vous les vendez, ce qui déformerait vos performances. La comptabilité d'exercice fait correspondre correctement le coût des marchandises vendues (COGS) aux revenus de cette vente au cours de la même période, offrant une image beaucoup plus claire de votre bénéfice brut. (Bean Ninjas)

5. Automatiser les importations

La saisie manuelle des rapports de règlement est instructive au début, mais elle n'est pas évolutive. L'écosystème du texte brut excelle dans l'automatisation :

  • Utilisez bean-extract pour extraire les données des fichiers CSV formatés exportés par des services comme A2X.
  • Écrivez des scripts Python simples pour extraire les données directement de l'API SP d'Amazon.
  • Utilisez les importateurs existants pour extraire les fichiers CSV bancaires afin de rapprocher les dépôts et les frais facturés directement sur les cartes de crédit.

6. Rapprocher chaque semaine

Prenez l'habitude de vérifier vos chiffres. Utilisez les puissants outils de ligne de commande de Beancount pour valider rapidement les soldes et examiner les performances.

# Vérifiez vos quantités et la valeur actuelle de vos stocks
bean-balance books.bean "Assets:Inventory" "2025-07-21"

# Générer un compte de résultat pour la dernière période
bean-report books.bean income_statement -e 2025-07-21

7. Archiver les documents sources

Pour chaque transaction majeure, créez un lien vers le document source. Joignez le PDF officiel du règlement Amazon, la facture du fournisseur pour un achat de stock ou un reçu d'expédition à l'aide de la syntaxe des métadonnées de Beancount (document:). Cela crée un enregistrement financier autonome et prêt pour l'audit.

Liste de contrôle des taxes de vente et de la conformité

  • Lois sur les facilitateurs de marché : Comprenez que même si Amazon verse la taxe de vente en votre nom dans la plupart des États, le stockage de stocks dans des États comme la Californie, le Texas ou la Pennsylvanie peut toujours créer un lien économique, vous obligeant potentiellement à y enregistrer votre entreprise. (TaxGPT)
  • Rapprochement 1099-K : Assurez-vous que le total que vous enregistrez dans Income:Amazon:Sales pour l'année correspond au montant brut déclaré sur votre formulaire 1099-K au centime près. Tout écart est un signal d'audit. (IRS)
  • Taxe de vente directe : Si vous vendez par le biais d'autres canaux non couverts par un facilitateur, maintenez une sous-arborescence de compte Liabilities:SalesTaxPayable:State pour suivre les taxes que vous devez directement.

Pièges courants (et solutions)

  • Piège : Enregistrer uniquement le dépôt net d'Amazon.
    • Solution : Décomposez toujours les paiements à l'aide du rapport de règlement complet.
  • Piège : Ignorer les retours remboursés ou les marchandises endommagées.
    • Solution : Enregistrez à la fois la dépense de remboursement initiale et le remboursement ultérieur d'Amazon comme un crédit distinct.
  • Piège : Oublier les réserves renouvelables.
    • Solution : Amazon retient souvent un solde de « réserve » sur les paiements, en particulier pour les nouveaux comptes. Suivez cet argent qui vous est dû dans un compte dédié Assets:Amazon:Reserve.
  • Piège : Ne pas faire correspondre les alias SKU entre votre système et celui d'Amazon.
    • Solution : Normalisez tous les codes SKU dans vos scripts d'importation pour vous assurer que les recherches COGS ne échouent pas.

Démarrage rapide à faire

  • Activez et téléchargez votre premier rapport de règlement dans Seller Central.
  • Clonez un référentiel de démarrage Beancount et créez un plan comptable spécifique à Amazon.
  • Écrivez un petit script d'importation qui convertit un fichier CSV de règlement en une transaction Beancount (fichier .txn).
  • Planifiez un rappel hebdomadaire pour extraire les nouveaux rapports et exécuter bean-check pour vous assurer que vos fichiers sont valides.
  • Examinez votre compte de résultat mensuellement pour prendre des décisions basées sur les données concernant les dépenses publicitaires, les prix et les stocks.

Lectures complémentaires

Expédiez plus, stressez moins - gardez vos beans équilibrés. Bonnes ventes !

Les bases de la comptabilité pour les vendeurs Etsy avec Beancount

· 8 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Les livres de comptes cousus main valent mieux que des feuilles de calcul emmêlées, surtout quand chaque centime compte.

Pour les artistes, les créateurs et les conservateurs sur Etsy, la passion est le moteur de l'entreprise. Mais à mesure que votre boutique se développe, la clarté financière devient tout aussi importante que la vision créative. Jongler avec les frais, suivre les coûts des matériaux et préparer les impôts peut être accablant et vous éloigner de votre atelier.

2024-07-16-bookkeeping-basics-for-etsy-sellers-with-beancount

Et si vous pouviez gérer les finances de votre boutique avec le même soin et la même précision que vous mettez dans vos produits ? Ce guide présente un flux de travail de comptabilité en texte brut utilisant Beancount, un moteur open-source conçu pour la précision et le contrôle. C'est une méthode qui vous aide à maîtriser vos chiffres afin que vous puissiez vous concentrer sur votre métier.

Pourquoi la comptabilité Etsy est différente

Une boutique Etsy a une empreinte financière unique, avec des complexités que les logiciels de comptabilité génériques ignorent souvent.

  • Frais de marketplace omniprésents : Votre paiement final est ce qui reste après qu'Etsy ait pris sa part. Les frais d'inscription, les frais de transaction, les frais de traitement des paiements et les coûts publicitaires grignotent chaque vente. Sans les suivre individuellement, vous ne pouvez pas connaître vos véritables marges bénéficiaires. (Bench)
  • Taxe de vente contrôlée par la plateforme : Une grande victoire pour les vendeurs, Etsy calcule, collecte et reverse désormais automatiquement la taxe de vente en votre nom dans la plupart des États. Cependant, si vous vendez sur d'autres canaux ou avez une présence physique dans certains États, vous pourriez toujours avoir vos propres obligations en matière de taxe de vente en raison des règles de « nexus ». (Bench)
  • Cadence de paiement flexible : Selon vos paramètres et l'historique de votre compte, Etsy peut déposer vos fonds quotidiennement, hebdomadairement, bimensuellement ou mensuellement. Cette flexibilité peut rendre les flux de trésorerie imprévisibles, surtout lorsque les fonds sont détenus en réserve ou retardés. (Aide Etsy)
  • Seuils 1099-K plus bas : L'époque où l'on passait sous le radar fiscal est révolue. Le seuil de déclaration IRS pour le formulaire 1099-K, qui déclare vos ventes brutes, est fixé à 5 000 pour2024etdevraittomberaˋseulement600pour 2024 et devrait tomber à seulement 600 d'ici 2026. Cela signifie que presque toutes les boutiques recevront un formulaire IRS, et vos livres doivent pouvoir s'y concilier parfaitement. (IRS)

Plan Beancount en sept étapes rapides

Ce plan en texte brut vous aidera à construire un système de comptabilité clair, précis et sans stress.

1. Séparer les canaux dès le départ

Si Etsy n'est pas votre seul canal de vente, créez des comptes de revenus et de dépenses distincts pour chacun. Cette simple séparation au niveau supérieur de votre plan comptable maintient la clarté de vos analyses et simplifie considérablement la période des impôts.

2025-07-22 open Income:Etsy               USD
2025-07-22 open Expenses:Etsy:ListingFee USD
2025-07-22 open Assets:Etsy:Payout USD

2. Décomposer chaque paiement

N'enregistrez jamais un dépôt Etsy comme une seule ligne de revenu. Téléchargez plutôt votre fichier CSV du compte de paiement mensuel depuis votre gestionnaire de boutique. Utilisez ce rapport pour créer une seule transaction Beancount qui « décompose » chaque dépôt en ses ventes brutes et ses composants de frais individuels.

; paiement hebdomadaire du fichier CSV du compte de paiement Etsy
2025-07-15 * "Dépôt Etsy #2025-28"
Assets:Bank:Operating 1842.77 USD
Income:Etsy:Sales -2100.00 USD
Expenses:Etsy:TransactionFee 136.50 USD ; 6.5 %
Expenses:Etsy:PaymentProcessing 66.00 USD ; 3 % + 0.25 $ par commande
Expenses:Etsy:ListingFee 14.00 USD ; 0.20 $ x 70 renouvellements
Assets:Etsy:Reserve -75.73 USD

3. Suivre l'inventaire et le CMV avec des lots

Pour les vendeurs de biens physiques, la fonctionnalité « lots » de Beancount change la donne pour le suivi du coût des marchandises vendues (CMV). Lorsque vous achetez des matières premières, vous les enregistrez comme inventaire à un coût spécifique. Lorsque vous vendez un produit fini, vous pouvez comptabiliser le coût exact des matériaux utilisés.

; Achat de matériaux en vrac pour l'inventaire
2025-07-01 * "Achat de laine en vrac | Fournisseur XYZ"
Assets:Inventory:ScarfBlue 500 ScarfBlue {@ 3.45 USD}
Assets:Bank:Operating

; Enregistrer le CMV lors de la vente d'un article
2025-07-20 * "Vendu Écharpe Bleue | Commande #1234"
Expenses:COGS 1 ScarfBlue {3.45 USD}
Assets:Inventory:ScarfBlue

4. Choisir votre méthode comptable tôt

Vous avez deux choix principaux :

  • Comptabilité de caisse : Simple et facile. Vous enregistrez les revenus lorsque l'argent arrive sur votre compte bancaire et les dépenses lorsque vous les payez. Cela fonctionne bien pour les petites boutiques de loisirs.
  • Comptabilité d'exercice : Fournit une image plus fidèle de la rentabilité. Vous enregistrez les revenus lorsque vous effectuez la vente (et non lorsque vous êtes payé) et les dépenses lorsque vous les engagez. C'est mieux pour les boutiques qui achètent des fournitures en vrac ou vendent des articles sur commande. (Bench)

5. Automatiser les importations

Gagnez du temps en automatisant la saisie des données. L'écosystème du texte brut offre plusieurs options :

  • Utilisez bean-extract avec des règles personnalisées pour analyser les fichiers CSV Etsy.
  • Configurez un importateur CSV bancaire pour capturer les frais publicitaires ou les étiquettes d'expédition payées par carte de crédit.
  • Pour les utilisateurs avancés, écrivez un script Python pour extraire les rapports directement de l'API Etsy.

6. Rapprocher hebdomadairement

Consacrez quelques minutes chaque semaine à la vérification de vos chiffres. Utilisez les outils de ligne de commande de Beancount pour valider rapidement vos soldes et repérer tout problème tel que les réserves libérées, les remboursements ou les ajustements de frais avant la fin du mois.

# Vérifier le solde de votre compte de réserve Etsy
bean-balance books.bean "Assets:Etsy:Payout" "2025-07-21"

# Générer un compte de résultat pour la dernière période
bean-report books.bean income_statement -e 2025-07-21

7. Joindre les documents sources

Créez un enregistrement complètement autonome et vérifiable en créant des liens vers les documents sources directement dans les métadonnées de vos transactions. Ceci est parfait pour les reçus de fournisseurs, les PDF d'étiquettes d'expédition ou les bons de commande.

2025-07-12 * "Étiquette d'expédition Etsy pour la commande #4321"
Expenses:ShippingLabel 4.25 USD
Assets:Bank:Operating
document: "docs/labels/2025-07-12-order4321.pdf"

Connaître vos frais Etsy (États-Unis)

Pour obtenir une image fidèle de votre profit, suivez chaque type de frais dans son propre compte de dépenses :

  • Frais d'inscription : 0,20 $ par article, qui se renouvelle automatiquement tous les 4 mois ou après une vente. (Etsy)
  • Frais de transaction : 6,5 % du montant total de la commande (y compris le prix de l'article, l'expédition et l'emballage cadeau). (Etsy)
  • Frais de traitement des paiements : Varie selon le pays, mais pour les États-Unis, il est généralement de 3 % + 0,25 $ par commande traitée via Etsy Payments. (Aide Etsy)
  • Abonnement (Etsy Plus) : 10 $/mois en option pour des outils supplémentaires. (Bench)

Conseils sur la taxe de vente et la conformité

  • Bien qu'Etsy reverse la taxe de vente pour la plupart des États américains, sachez que vendre sur d'autres plateformes ou avoir un atelier physique peut créer des obligations fiscales supplémentaires (« nexus »). Suivez attentivement vos seuils de vente. (Bench)
  • Une fois que les seuils 1099-K s'appliquent à votre boutique, assurez-vous que le total de votre Income:Etsy:Sales dans Beancount correspond au montant brut du formulaire au centime près. (IRS)

Pièges courants (et solutions)

  • Piège : Comptabilité des dépôts nets.
    • Solution : Utilisez toujours le fichier CSV de paiement pour décomposer les dépôts en ventes brutes, frais et réserves.
  • Piège : Coûts d'inventaire obsolètes.
    • Solution : Enregistrez vos achats de fournitures et de matériaux comme inventaire au moment où vous les achetez. N'attendez pas que le produit fini soit vendu.
  • Piège : Angles morts des remboursements.
    • Solution : Lors de l'émission d'un remboursement, enregistrez la dépense et annulez également l'entrée CMV d'origine pour réintégrer le coût dans votre compte d'inventaire.
  • Piège : Ignorer les retenues de réserve.
    • Solution : Ouvrez un compte Assets:Etsy:Reserve pour suivre l'argent qu'Etsy détient. Cela maintient l'honnêteté de vos relevés de trésorerie.

Liste de contrôle de démarrage rapide

  • Dans votre gestionnaire de boutique, configurez les relevés mensuels et téléchargez votre premier CSV.
  • Clonez le référentiel de démarrage Beancount et esquissez le plan comptable de votre boutique.
  • Décidez de la comptabilité de caisse ou d'exercice et tenez-vous-y.
  • Écrivez un script d'importation ou un fichier de règles de base et planifiez une synchronisation hebdomadaire.
  • Rapprochez vos paiements, vos niveaux d'inventaire et le solde de votre compte bancaire chaque lundi.
  • Générez un compte de résultat chaque mois et examinez les tendances de votre marge brute.
  • Sauvegardez vos fichiers .bean à l'aide de Git et d'une solution de stockage hors site.

Prêt à intégrer la comptabilité à votre flux de travail créatif ? Installez Beancount, validez votre première entrée et laissez la clarté du texte brut vous libérer plus de temps à l'atelier. Bonne tenue de comptes !

Gérer les créances dans Beancount

· 3 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Dans le labyrinthe de la gestion des finances personnelles, Beancount apparaît comme un phare de clarté et de précision pour la tenue de livres en texte brut. Particulièrement lorsqu'il s'agit de gérer les créances — l'argent attendu des autres — Beancount offre une approche structurée pour maintenir vos registres financiers dans un ordre impeccable. Ce blog vous guidera à travers les subtilités du suivi des créances, du traitement des remboursements et de la gestion des transactions non résolues avec Beancount. Que vous retourniez un achat, prêtiez de l'argent ou attendiez un remboursement, cet article est votre feuille de route vers la clarté financière.

Comprendre les créances dans Beancount :

2024-02-17-navigating-receivables-beancount-guide

Les créances représentent l'argent qui vous est dû. Cela peut provenir de diverses situations, comme après un retour d'achat en attente de remboursement ou lorsque vous prêtez de l'argent à quelqu'un. Par exemple, imaginez que vous ayez retourné un bracelet de montre à une boutique en ligne comme Amazon.com et que vous attendiez un remboursement. Dans Beancount, cette transaction est enregistrée comme de l'argent passant de votre passif de carte de crédit à vos actifs en tant que créances :

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

Gérer les remboursements :

Une fois le remboursement traité et l'argent reçu, une autre transaction est enregistrée pour compenser le solde des créances. Cela garantit que vos comptes reflètent l'argent de nouveau en votre possession :

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

Cycle de transaction complet :

Une transaction complète d'entrée-sortie impliquant des créances combine les deux transactions ci-dessus et est présentée comme suit, démontrant un compte équilibré après remboursement :

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

Gérer les transactions non résolues :

Pour les transactions où le remboursement ou le remboursement n'a pas encore été reçu, Beancount utilise le tag #UNRESOLVED. Ce tag aide à identifier et à suivre les montants qui sont toujours en attente. Par exemple :

2023-10-31 * "John Doe" "Lending Money" #UNRESOLVED
Liabilities:CreditCard:Chase -100.00 USD
Assets:Receivables

En vous concentrant sur les transactions taguées #UNRESOLVED, vous pouvez rapidement déterminer quels montants restent à régler.

Maintenir un solde nul :

Dans un grand livre approprié, la somme de toutes les transactions sous le compte Assets:Receivables, à l'exclusion de celles taguées #UNRESOLVED, devrait idéalement revenir à zéro. Cela garantit que tous les fonds attendus ont été comptabilisés, maintenant l'intégrité de vos registres financiers.

Par exemple, un grand livre valide pourrait ressembler à ceci, avec une transaction non résolue clairement marquée, en attente de clôture :

2023-10-31 * "Amazon.com" "[Return] Watch Strap"
Liabilities:CreditCard:Chase -12.00 USD
Assets:Receivables

2023-11-01 * "Amazon.com" "[Refund] Watch Strap"
Liabilities:CreditCard:Chase 12.00 USD
Assets:Receivables

2023-10-31 * "John Doe" "Lending Money" #UNRESOLVED
Liabilities:CreditCard:Chase -100.00 USD
Assets:Receivables

Un grand livre invalide est celui où une transaction fait en sorte que le compte de créances ne s'annule pas, nécessitant le tag #UNRESOLVED pour correction.

Conclusion

Gérer les créances dans Beancount n'a pas à être intimidant. Avec une compréhension claire de la façon d'enregistrer les transactions, de gérer les remboursements et de surveiller les transactions non résolues, vous pouvez maintenir des registres financiers précis et fiables. Adopter l'approche structurée de Beancount pour la gestion des créances ne simplifie pas seulement votre suivi financier, mais apporte également la tranquillité d'esprit, sachant que chaque centime est comptabilisé. Alors, pourquoi ne pas tirer parti de la puissance de Beancount pour rendre votre gestion financière aussi fluide

Tenue des comptes soi-même ou recours à un comptable : un guide Beancount pour les fondateurs soucieux des coûts

· 7 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

En tant que fondateur, vous portez toutes les casquettes : PDG, vendeur, chef de produit et, oui, comptable. Mais à mesure que votre entreprise se développe, les heures passées à rapprocher les transactions commencent à ressembler moins à un amorçage judicieux qu'à une distraction coûteuse. Alors, quel est le bon moment pour confier les comptes ?

La réponse ne consiste pas à abandonner le contrôle, mais à prendre une décision fondée sur des données. Voici comment utiliser votre grand livre Beancount pour décider s'il faut continuer à gérer la comptabilité soi-même ou embaucher un professionnel.

2023-09-03-tenue-des-comptes-soi-meme-ou-recours-a-un-comptable-un-guide-beancount-pour-les-fondateurs-soucieux-des-couts

En bref : Si vous facturez votre temps à 85 /heureetquevousneconsacrezquequatreheuresparmoisaˋlacomptabiliteˊ,cetravailvouscou^te340 /heure et que vous ne consacrez que quatre heures par mois à la comptabilité, ce travail vous coûte 340  en perte de revenus. Un comptable à distance typique commence à environ 249 $/mois, en plus de vous libérer du temps pour réellement développer votre entreprise. (Bench)

1. Évaluer le prix de votre temps

La mesure la plus importante dans cette décision est votre propre coût d'opportunité. Chaque heure que vous passez à catégoriser les dépenses est une heure que vous ne consacrez pas aux ventes, au développement de produits ou à la stratégie.

Le calcul est simple :

  1. Suivez le nombre d'heures que vous consacrez aux tâches comptables chaque mois (rapprochement, codification, correction des erreurs).
  2. Multipliez ces heures par votre taux horaire effectif.
  3. Comparez ce chiffre aux honoraires mensuels d'un comptable externe (un taux de départ typique est d'environ 249 $/mois).

Si le coût de votre temps est plus élevé, vous avez une opportunité de délégation évidente. Vous pouvez même suivre cela directement dans Beancount.

; Suivre le coût d'opportunité de votre temps
2025-07-31 * "Temps de comptabilité de juillet"
Expenses:Admin:BookkeepingTime 4.00 H ; Votre unité personnalisée pour les heures
Equity:OwnerTime -340.00 USD
; metadata: rate:85

Ici, H est une devise personnalisée pour « Heures ». Vous pouvez comptabiliser le temps directement et utiliser un script ou une directive price pour lui attribuer sa valeur en dollars, faisant du coût de votre propre travail une partie explicite de vos rapports financiers.

2. Comptabiliser les coûts cachés de la gestion autonome

Le coût de votre temps n'est pas le seul facteur. La tenue des comptes soi-même comporte des risques qui peuvent être beaucoup plus coûteux qu'un forfait mensuel.

  • Erreurs fiscales : Une comptabilité désordonnée est un cauchemar pour les préparateurs de déclarations de revenus. Un expert-comptable peut facturer entre 150 et 400 $ de l'heure juste pour mettre de l'ordre dans vos dossiers avant même de commencer à travailler sur la déclaration de revenus (Bench).
  • Déductions manquées et amendes de l'IRS : De petites erreurs involontaires, comme une mauvaise classification d'une dépense ou l'oubli d'enregistrer une transaction en espèces, peuvent s'accumuler au fil du temps, entraînant des pénalités, des intérêts et une facture d'impôt plus élevée (Bench).
  • Épuisement professionnel du fondateur : Le fardeau mental des rapprochements tard le soir est réel. Il draine la concentration et l'énergie qui devraient être consacrées à des activités à fort effet de levier comme les ventes et l'innovation produit (Bench).

Atténuation avec Beancount : Vous pouvez réduire les erreurs en ajoutant un hook Git pre-commit qui refuse de valider les modifications si bean-check échoue ou si les transactions n'ont pas de balise de catégorie. Cela impose une discipline, même lorsque vous êtes fatigué.

3. Trois façons dont un comptable (ou la discipline Beancount) permet d'économiser de l'argent

Que vous embauchiez un professionnel ou que vous amélioriez simplement votre propre processus, une bonne tenue des comptes est rentable.

  1. Déclaration de revenus plus propre : Des comptes organisés et précis signifient moins d'heures d'expert-comptable consacrées au nettoyage, ce qui se traduit directement par une facture moins élevée.
  2. Aperçu des liquidités en temps réel : Connaître votre position de trésorerie exacte vous aide à éviter les frais de découvert coûteux et le besoin d'un financement de dernière minute à taux d'intérêt élevé.
  3. Tampon contre le stress : Des opérations financières stables et prévisibles réduisent le stress du fondateur, ce qui conduit à une meilleure prise de décision et à une culture d'entreprise plus saine.

4. Quand ne pas encore embaucher

L'embauche d'un comptable n'est pas toujours la bonne décision. Dans certains cas, la gestion autonome reste le choix financier le plus judicieux.

  • Vous n'avez pas encore de revenus ou vos flux de trésorerie sont très faibles. À ce stade, chaque dollar devrait être consacré aux ventes et à l'acquisition de clients. Concentrez-vous d'abord sur la génération de revenus (Bench).
  • Vos finances sont simples. Si vous avez un compte bancaire, un flux Stripe et moins de ~60 transactions par mois, vous pouvez probablement tout gérer dans Beancount et Fava en moins d'une heure par semaine.

5. L'option hybride : votre grand livre Beancount « prêt pour un comptable »

La meilleure solution est souvent une solution hybride. Utilisez Beancount pour faire le gros du travail vous-même, mais gardez vos comptes si propres qu'un professionnel peut intervenir pour les tâches à forte valeur ajoutée.

  • Automatiser l'intégration : Configurez bean-extract pour qu'il s'exécute la nuit, en extrayant automatiquement les nouvelles transactions.
  • Standardiser votre plan comptable : Utilisez des noms de comptes conventionnels (Expenses:Software, Assets:Bank:Checking) afin que tout professionnel puisse comprendre votre grand livre instantanément.
  • Joindre les documents sources : Pour chaque dépense supérieure à 75 $, utilisez les métadonnées link: pour joindre un PDF du reçu ou de la facture.
  • Suivre une liste de contrôle de clôture mensuelle :
    1. Rapprocher tous les comptes bancaires et de cartes de crédit.
    2. Exécuter bean-check pour s'assurer qu'il n'y a pas d'erreurs.
    3. Exporter les relevés PDF avec bean-report balance_sheet et bean-report income_statement.
  • Effectuer un transfert trimestriel : Donnez à votre comptable ou à votre expert-comptable une balise Git ou une simple archive (books-Q3-2025.tar.gz). Ils peuvent vérifier votre travail, ajouter des écritures d'ajustement complexes (comme les charges à payer et l'amortissement) et préparer les dossiers fiscaux.

Ce modèle maintient vos coûts bas car le professionnel ne touche que des données propres et vérifiées, tandis que vous bénéficiez toujours des avantages des états financiers de niveau professionnel.

6. Matrice de décision rapide

SituationEmbaucher un proS'en tenir à Beancount (DIY)
>60 Tx/mois, >20 000 $ de revenus mensuels récurrents
Vous facturez plus de 100 $/h mais passez plus de 3 h/mois sur les comptes
En situation de crise de trésorerie, <5 000 $ de revenus mensuels récurrents
Vous aimez vraiment les feuilles de calcul et l'automatisation

7. Étapes suivantes

  1. Enregistrer votre temps. Pour votre prochaine session de comptabilité, suivez chaque minute que vous y consacrez.
  2. Faire les calculs. Multipliez ce temps par votre taux horaire et comparez-le aux taux du marché ci-dessus.
  3. Choisir votre voie. Soit resserrer votre flux de travail Beancount en utilisant le modèle hybride, soit commencer à interviewer des comptables qui sont à l'aise pour travailler à partir d'un grand livre en texte brut.

Dans tous les cas, une tenue des comptes intentionnelle est toujours moins chère que l'improvisation. Avec Beancount comme source de vérité immuable, vous saurez exactement quand l'aide professionnelle est rentable et quand elle ne l'est pas.

Comptabilité d'entreprise vs personnelle : Tracer une ligne claire avec Beancount

· 7 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Une entreprise prospère et un portefeuille sain partagent une caractéristique : des limites.

Pour tout propriétaire d'entreprise, du travailleur indépendant à l'entrepreneur en démarrage, l'une des disciplines financières les plus importantes est la séparation stricte des finances professionnelles et personnelles. Mélanger les fonds (utiliser votre compte professionnel pour les courses ou payer un fournisseur professionnel à partir de votre compte courant personnel) crée une image financière opaque et désordonnée. Cela invite non seulement à un examen minutieux de la part des autorités fiscales, mais vous prive également d'une vision claire des performances réelles de votre entreprise.

2023-08-12-business-vs-personal-bookkeeping-with-beancount

Heureusement, un système de comptabilité en texte brut comme Beancount fournit le cadre idéal pour appliquer ces limites essentielles directement dans votre grand livre.

Pourquoi la séparation est importante

Ne pas séparer vos finances n'est pas seulement une mauvaise habitude ; cela comporte des risques importants et masque des informations commerciales précieuses.

  • Clarté vis-à-vis du fisc : Le fisc ne fait pas que suggérer de tenir des comptes bancaires séparés ; il le recommande fortement. Lorsque les fonds professionnels et personnels sont mélangés, il devient difficile de prouver quelles dépenses sont des déductions professionnelles légitimes. Cette ambiguïté peut entraîner des questions et des complications qu'il vaut mieux éviter.
  • Risque d'audit : Le mélange des transactions est un signal d'alarme majeur pour les auditeurs. Si vos livres sont un fouillis d'activités personnelles et professionnelles, vous risquez de vous voir refuser des déductions valables ou même de faire face à des pénalités. Un grand livre propre et séparé démontre le professionnalisme et rend tout audit potentiel plus fluide et moins stressant.
  • Informations plus claires : Comment pouvez-vous connaître votre véritable marge bénéficiaire si les flux de trésorerie de votre entreprise sont obscurcis par des dépenses personnelles ? Un grand livre d'entreprise autonome vous donne une vue non filtrée de la santé financière de votre entreprise. Vous pouvez suivre avec précision les revenus, analyser les dépenses et calculer les obligations fiscales sans le « bruit » de votre vie financière personnelle.

Principales différences en un coup d'œil

L'objectif, les règles et la structure de la comptabilité d'entreprise et personnelle sont fondamentalement différents. Comprendre ces contrastes est essentiel pour maintenir des enregistrements précis.

DomaineLivres d'entrepriseLivres personnels
ObjectifSuivre les revenus, les dépenses, les actifs et les passifs pour les décisions fiscales et de croissanceGérer le budget du ménage et les objectifs d'épargne
Règles fiscalesDoit suivre l'annexe C, 1120-S ou 1065 ; normes de déductibilité strictesPeu d'exigences formelles au-delà de la tenue de registres de base
ComptesCapitaux propres, créditeurs, débiteurs, taxe de vente, paieComptes courants, épargne, placements, prêts
Rémunération du propriétaireSalaire (W-2) ou prélèvement du propriétaire sur les capitaux propresN/A — les retraits personnels financent le coût de la vie

Un plan en quatre étapes avec Beancount

Beancount permet de dresser facilement un mur solide entre vos deux mondes financiers. Voici un flux de travail pratique pour bien faire les choses.

• 1 — Ouvrir des comptes dédiés

Avant même d'écrire votre première entrée Beancount, ouvrez un compte courant professionnel dédié et une carte de crédit professionnelle. Cette séparation physique est le fondement d'une comptabilité propre. Une fois cela fait, reproduisez cette structure dans votre grand livre Beancount.

2025-07-23 open Assets:Bank:Business   USD
2025-07-23 open Assets:Bank:Personal USD

Cette configuration simple garantit que chaque transaction peut être clairement affectée à vos finances professionnelles ou personnelles dès qu'elle se produit.

• 2 — Enregistrer les apports et les retraits du propriétaire

En tant que propriétaire, vous déplacerez de l'argent entre vos fonds personnels et l'entreprise. Ce ne sont pas des revenus ou des dépenses. Au lieu de cela, ils sont suivis via un compte de capitaux propres.

  • Apport : Lorsque vous mettez votre propre argent dans l'entreprise pour la démarrer ou couvrir un déficit.
  • Retrait : Lorsque vous retirez de l'argent de l'entreprise pour votre usage personnel (c'est ainsi que de nombreux propriétaires uniques se « paient »).
; Injection de capital pour démarrer l'entreprise
2025-07-23 * "Apport du propriétaire"
Assets:Bank:Business 10 000,00 USD
Equity:Owner:Contrib

; Retrait d'argent pour les dépenses personnelles
2025-08-05 * "Retrait du propriétaire pour le loyer"
Equity:Owner:Draw 2 500,00 USD
Assets:Bank:Business

En enregistrant ces transactions comme des transactions sur capitaux propres, vous vous assurez qu'elles ne gonflent pas incorrectement vos dépenses d'entreprise ou ne réduisent pas votre bénéfice déclaré.

• 3 — Traiter rapidement les reçus mixtes

Des erreurs se produisent. Vous pourriez accidentellement utiliser votre carte professionnelle pour payer un dîner personnel. La clé est de le corriger immédiatement dans votre grand livre. Ne supprimez pas la transaction ; reclassez-la comme un retrait du propriétaire.

2025-08-07 * "Courses personnelles sur la carte professionnelle"
Equity:Owner:Draw 72,35 USD
Assets:Bank:Business

Cette entrée reflète correctement le fait que des fonds de l'entreprise ont été utilisés pour une dépense personnelle, la traitant comme de l'argent que vous avez retiré de l'entreprise. Cela vous empêche de réclamer accidentellement une dépense personnelle non déductible sur vos impôts.

• 4 — Rapprocher et examiner selon un calendrier

La cohérence est votre meilleure défense contre les livres désordonnés. Réservez du temps chaque semaine ou chaque mois pour rapprocher vos comptes professionnels. Utilisez les outils de Beancount pour vous assurer que votre grand livre correspond à vos relevés bancaires et pour examiner les performances de votre entreprise.

# Vérifiez le solde de votre banque professionnelle par rapport à votre relevé
bean-balance books.bean "Assets:Bank:Business"

# Générer un compte de résultat pour examiner la rentabilité
bean-report books.bean income_statement -e 2025-08-31

Cette habitude d'examen régulier satisfait aux exigences de tenue de registres du fisc et vous tient informé de la santé financière de votre entreprise.

Considérations fiscales

  • Impôts estimés : Pour éviter une facture fiscale douloureuse, traitez vos impôts futurs comme une dépense d'entreprise continue. Créez des comptes de passif (Liabilities:Tax:Federal, Liabilities:Tax:State) et transférez-y régulièrement un pourcentage fixe de chaque dépôt. Lorsque les paiements trimestriels sont dus, l'argent est déjà disponible.
  • Coûts personnels non déductibles : N'oubliez pas la règle du fisc : les dépenses d'entreprise doivent être à la fois « ordinaires et nécessaires » pour votre travail. Vos repas personnels, vos frais de déplacement et vos abonnements non professionnels ne sont pas admissibles et doivent être entièrement exclus du compte de résultat de votre entreprise.

Liste de contrôle de démarrage rapide

  • Ouvrir des comptes bancaires et de crédit réservés aux entreprises.
  • Créer un plan comptable Beancount avec Assets:Bank:Business, Equity:Owner:Contrib et Equity:Owner:Draw.
  • Décider de votre méthode comptable (comptabilité de caisse ou comptabilité d'exercice) et la noter dans vos options Beancount.
  • Étiqueter immédiatement tous les frais personnels accidentels sur les cartes professionnelles comme Equity:Owner:Draw.
  • Rapprocher chaque semaine ; sauvegarder votre fichier .bean sur un dépôt Git privé distant.
  • Examiner votre compte de résultat, votre bilan et vos rapports de trésorerie chaque mois.

Conclusion : Argent séparé, grands livres séparés. Beancount rend le mur entre vos finances professionnelles et personnelles explicite (et contrôlé par version) afin que votre entreprise reste prête pour un audit tandis que votre habitude de boire des cafés au lait ne regarde que vous. Bonne tenue de comptes !

Modéliser les transactions immobilières dans Beancount

· 5 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Les transactions immobilières peuvent constituer la plus grande activité financière dans la vie d'une famille. Cet article explique comment modéliser l'immobilier dans Beancount. Je traite l'immobilier comme un actif et l'appréciation de la maison comme un gain non réalisé. De plus, le prêt hypothécaire est modélisé comme un passif, et les intérêts sont considérés comme une dépense.

Supposons que M. A ait acheté une maison de luxe située au 123 ABC Street, XYZ City, CA, 12345 le 1er janvier 2020, pour un prix de 1 million. Le taux d'intérêt est de 3,0 %, l'apport initial est de 20 %, et le montant du prêt est de 800 000.

ÉlémentMontant
Montant du prêt hypothécaire800 000
Taux d'intérêt3 %
Durée du prêt hypothécaire30 ans
Coût total du prêt hypothécaire1 478 219,62
Paiements mensuels4 106,17
Assurance habitation1 300 par an (39 000 au total)
Taxe foncière7 500 par an (225 000 au total)
Remboursement du prêtDéc. 2049
Intérêts totaux payés414 219,62

Graphique de suivi immobilier

Capture d'écran des détails du prêt hypothécaire

Créer des comptes

Premièrement, nous traitons la maison comme un Actif. Puisque la maison est listée comme un Actif, elle doit se voir attribuer une unité. Dans ce cas, la quantité de l'unité n'est qu'une seule, il est peu probable qu'il y en ait plusieurs, et même s'il s'agit de la nième maison, nous voudrions l'enregistrer dans un Actif distinct. C'est-à-dire qu'une maison correspond à un Actif, et cet Actif a une unité spéciale, sa valeur ne peut être que 1.

2019-12-31 commodity HOUSE.ABC
name: "123 ABC Street, XYZ City, CA, 12345"

2019-12-31 open Assets:Property:US:CA:123ABC HOUSE.ABC
2019-12-31 open Liabilities:Bank:US:SomeBank:Mortgage:Loan USD

Dans la première ligne ici, nous avons défini une unité de marchandise représentant la maison. Dans la quatrième ligne, nous avons défini un compte d'Actif, qui contient l'unité de marchandise précédemment définie comme la maison. Dans la cinquième ligne, nous avons défini un compte pour la banque prêteuse. Comme il s'agit d'un passif, il relève de la catégorie Passifs.

Achat

Avec les comptes configurés comme ci-dessus, l'acte d'acheter une maison équivaut à

emprunter de l'argent (dette) + dépenser de l'argent (apport initial) = 1 maison en actif

La référence la plus importante lors de l'achat d'une propriété est probablement la Déclaration de Règlement de l'Acheteur, qui décrit clairement les flux d'argent.

2020-01-01 * "Buying the house"
Assets:Property:US:CA:123ABC 1 HOUSE.ABC {1,000,000 USD}
Assets:Bank:US:SomeBankA -100,000 USD
Assets:Bank:US:SomeBankB -101,000 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan -800,000.00 USD
Expenses:Home:Insurance 1,000 USD
Expenses:Home:Mortgage:Loan:ClosingCost

Ici, nous détaillons la transaction d'achat de la maison, où l'argent sort de certaines banques (utilisé pour l'apport initial et d'autres dépenses), un prêt est contracté (ajoutant aux passifs), et une maison est acquise (ajoutée aux actifs).

Rembourser les prêts hypothécaires

Sur la base de l'enregistrement d'achat ci-dessus, nous devons actuellement 800 000 USD. En raison des intérêts, et considérant que tous les prêts aux États-Unis sont amortis de manière égale en termes de capital et d'intérêts, le paiement mensuel comprend une partie pour les intérêts et une partie pour le capital. Au début, les intérêts constituent la majorité.

Pour enregistrer le remboursement du prêt, il vous suffit de consulter le relevé de votre banque prêteuse. Vous avez juste besoin de savoir quelle part du capital vous remboursez chaque mois, et le reste est des intérêts. Les intérêts sont comptabilisés comme une Dépense.

2020-02-01 * "Mortgage payment"
Assets:Bank:US:SomeBank:Saving:Joint -3,372.83 USD
Liabilities:Bank:US:SomeBank:Mortgage:Loan 1,376.26 USD
Expenses:Home:Mortgage:Loan:Interest

Cette écriture détaille le paiement hypothécaire mensuel qui est soustrait de votre compte d'épargne commun. Le remboursement du capital réduit le passif, tandis que la partie des intérêts est traitée comme une dépense.

Plus-value

Si vous souhaitez enregistrer la plus-value de la propriété, certaines personnes créent un compte séparé, n'enregistrant que la plus-value de la propriété actuelle. Considérant que la valeur de la maison peut augmenter ou diminuer, cette plus-value peut être négative. L'avantage de cela est que dans le résumé de vos actifs totaux, ces deux comptes seront inclus, l'un pour la valeur de la maison au moment de la transaction, et l'autre pour la plus-value actuelle de la maison, reflétant ainsi le prix en temps réel de la maison.

Je n'ai pas adopté cette méthode, principalement pour les raisons suivantes :

  1. La valeur actuelle de la maison ne peut être qu'une estimation, à titre de référence uniquement, sans valeur pratique. Habituellement, je ne peux obtenir l'évaluation de la propriété que sur des sites web comme Redfin ou Zillow, et personnellement, je ne pense pas qu'elle ait une grande valeur de référence. Je n'ai pas non plus envisagé d'incorporer ces plus-values dans les actifs totaux en temps réel.
  2. Personnellement, je pense qu'avant que le prêt hypothécaire ne soit remboursé, si le flux de trésorerie de la maison est négatif, dans une certaine mesure, la propriété reste un passif. Par conséquent, l'incorporer prématurément dans les actifs vous donnera une illusion d'actifs enrichis et de plus-value, et je souhaite personnellement éviter cette illusion.

La méthode que j'utilise pour enregistrer la plus-value immobilière, qui sera également abordée plus tard sur la façon de modéliser les RSU. Cette méthode consiste à utiliser une unité de monnaie virtuelle. En supposant que votre devise de base est l'USD, nous pouvons utiliser USD.UNVEST (il semble qu'il n'y ait pas besoin de créer une nouvelle Marchandise pour cela) pour indiquer que cet actif est calculé dans une devise spéciale. La croissance ou la réduction de cet actif ne sera pas enregistrée en USD. De cette façon, je peux atteindre mon objectif initial, c'est-à-dire enregistrer la plus-value de la maison, et cette plus-value ne sera pas incluse dans le bilan final (Bilan).

2020-01-01 price HOUSE.ABC                          1,000,000 USD
2025-01-01 price HOUSE.ABC 1,400,0

Comprendre les créances et les dettes dans Beancount

· 3 min de lecture
Mike Thrift
Mike Thrift
Marketing Manager

Bonjour à tous ! Dans l'article de blog d'aujourd'hui, nous plongeons dans le monde de Beancount, un outil de comptabilité en partie double apprécié par beaucoup pour sa simplicité et sa puissance. Plus précisément, nous allons parler de deux concepts clés : les créances et les dettes.

Comprendre ces termes est crucial pour utiliser Beancount (ou tout système de comptabilité en partie double) efficacement. Mais ne vous inquiétez pas si vous êtes débutant - nous allons tout décortiquer, étape par étape !

Créances et Dettes : Les Bases

2023-05-30-receiveable-and-payable

En comptabilité, les « créances » et les « dettes » sont des termes utilisés pour suivre l'argent dû. Les « créances » désignent l'argent que d'autres vous doivent, tandis que les « dettes » désignent l'argent que vous devez à d'autres.

Prenons un exemple :

  1. Comptes Clients (A/R) : Supposons que vous possédez une librairie et qu'un client achète un livre à crédit. L'argent qu'il vous doit pour le livre est un compte client.

  2. Comptes Fournisseurs (A/P) : D'un autre côté, imaginez que vous commandez un nouvel ensemble de livres à un éditeur, mais que vous ne les payez pas d'avance. L'argent que vous devez à l'éditeur est un compte fournisseur.

Dans Beancount, ceux-ci sont généralement suivis via des comptes correspondants. Le principal avantage est que cela vous fournit une image claire et précise de votre situation financière à tout moment.

Mise en place des créances et des dettes dans Beancount

La structure de votre fichier Beancount peut être aussi simple ou complexe que vous le souhaitez. Pour les créances et les dettes, vous voudrez probablement créer des comptes distincts sous vos sections Actifs et Passifs.

Voici un exemple simple :

1970-01-01 open Assets:AccountsReceivable
1970-01-01 open Liabilities:AccountsPayable

Suivi des Transactions

Côté bénéficiaire

Après avoir configuré vos comptes, vous pouvez suivre les transactions impliquant des créances et des dettes. Examinons un exemple :

2023-05-29 * "Sold books to customer on credit"
Assets:AccountsReceivable 100 USD
Income:BookSales -100 USD

Ici, vous ajoutez 100 $ à vos créances parce qu'un client vous doit ce montant. Simultanément, vous réduisez vos revenus du même montant pour maintenir l'équilibre (puisque vous n'avez pas encore réellement reçu l'argent).

Lorsque le client paiera finalement, vous l'enregistrerez comme ceci :

2023-06-01 * "Received payment from customer"
Assets:Bank:Savings 100 USD
Assets:AccountsReceivable -100 USD

Côté payeur

Le même principe s'applique aux dettes, mais avec des signes inversés :

2023-05-30 * "Bought books from publisher on credit"
Liabilities:AccountsPayable 200 USD
Expenses:BookPurchases -200 USD

Et lorsque vous remboursez votre dette :

2023-06-02 * "Paid off debt to publisher"
Liabilities:AccountsPayable -200 USD
Assets:Bank:Checking 200 USD

En Résumé

Les créances et les dettes sont au cœur de tout système comptable. En les suivant avec précision, vous obtenez une compréhension complète de votre santé financière.

Ce n'est qu'un point de départ, et Beancount est capable de bien plus. J'espère que cet article de blog vous aide à clarifier ces concepts importants. Comme toujours, bonne comptabilité !