Passer au contenu principal

Introduction à Beancount.io

Ce guide synthétise les meilleures pratiques pour la comptabilité en texte brut en utilisant l'outil puissant et open source de comptabilité en texte brut, Beancount. Il couvre la philosophie fondamentale, la syntaxe de base à avancée, des études de cas pratiques pour les actifs complexes et les stratégies de gestion du grand livre à long terme.

Partie 1 : Le "Pourquoi" - Les fondements d'une comptabilité intelligente

Avant de plonger dans le "comment", il est crucial de comprendre le "pourquoi". Une comptabilité efficace est le fondement de la gestion financière personnelle et une étape nécessaire vers la clarté et la liberté financières.

Au-delà du suivi des dépenses : Le chemin vers la clarté financière

Les applications de suivi des dépenses simples vous indiquent où est allé votre argent. Un système comptable robuste vous indique cela et bien plus : il fournit une image complète de votre santé financière, y compris votre valeur nette, vos flux de trésorerie et la performance de vos investissements. L'objectif principal est l' observabilité - obtenir une compréhension claire et basée sur les données de votre vie financière, ce qui vous permet de prendre des décisions éclairées, d'évaluer les risques et de travailler à atteindre des objectifs à long terme comme la retraite.

Pourquoi la double comptabilité ? La puissance d'un système équilibré

Contrairement à la comptabilité en partie simple (une simple liste de dépenses), la méthode de la double comptabilité enregistre chaque transaction comme un flux de valeur entre au moins deux comptes. Son principe de base est l'équation comptable fondamentale :

Actifs=Passifs+Capitaux propres (Valeur nette)\text{Actifs} = \text{Passifs} + \text{Capitaux propres (Valeur nette)}

Ce système garantit que vos livres sont toujours équilibrés, ce qui réduit considérablement les erreurs. Il fournit une image financière complète en générant des rapports essentiels comme un bilan (ce que vous possédez et ce que vous devez) et un compte de résultat (ce que vous avez gagné et dépensé).

Partie 2 : Premiers pas avec Beancount

Beancount est un outil puissant, basé sur Python, pour la comptabilité en texte brut.

Votre premier aperçu avec Fava sur Beancount.io

Beancount.io fournit un environnement puissant qui combine le moteur Beancount avec une application mobile (iOS, Android) et une application web - Fava, une interface web fantastique pour visualiser votre grand livre. Aucune installation n'est nécessaire. Lorsque vous utilisez la plateforme, vous interagissez directement avec un éditeur de texte pour votre fichier grand livre (par exemple, main.bean) et vous voyez les rapports générés par Fava se mettre à jour en temps réel.

Fava prend le texte brut que vous écrivez et le transforme en graphiques interactifs, états financiers et listes de transactions filtrables, vous donnant une vue claire de vos rapports financiers.

Les cinq principaux types de comptes

Beancount utilise cinq types de comptes de niveau supérieur, qui forment la structure de votre grand livre :

Type de compteDescriptionSolde typique
ActifsCe que vous possédez (espèces, comptes bancaires, investissements, biens immobiliers).Positif
PassifsCe que vous devez (dettes de carte de crédit, prêts, hypothèques).Négatif
RevenusD'où vient l'argent (salaire, primes, intérêts).Négatif
DépensesOù va l'argent (nourriture, loyer, voyages, impôts).Positif
Capitaux propresVotre valeur nette ; utilisée pour les soldes initiaux.Négatif

L'équation de Beancount

Beancount applique sa propre version de l'équation comptable où la somme de tous les enregistrements dans l'ensemble de votre grand livre est égale à zéro :

Actifs+Deˊpenses+Passifs+Revenus+Capitaux propres=0\text{Actifs} + \text{Dépenses} + \text{Passifs} + \text{Revenus} + \text{Capitaux propres} = 0

C'est pourquoi, par convention, les comptes Revenus, Passifs et Capitaux propres ont des valeurs négatives - ce sont les sources de fonds qui augmentent vos Actifs et vos Dépenses.

Partie 3 : Le langage de Beancount - Syntaxe de base

Toutes les entrées dans Beancount sont des directives qui commencent par une date.

Définition des comptes (open) et des marchandises

Avant de pouvoir utiliser un compte, vous devez le déclarer avec la directive open. Vous pouvez également spécifier les devises ou "marchandises" qu'il contiendra.

; AAAA-MM-JJ open Compte:Nom [Marchandise1, Marchandise2, ...]
2020-01-01 open Actifs:Banque:US:Chase:Checking USD
2020-01-01 open Passifs:CarteCrédit:US:Discover USD
2020-01-01 open Dépenses:Alimentation:Épicerie
2020-01-01 open Revenus:Salaire:Google

Les marchandises peuvent être des devises réelles (par exemple, USD, JPY) ou toute unité personnalisée que vous définissez, comme les miles aériens (MILES_UA) ou les tickers boursiers (HOOL).

Enregistrer votre première transaction (*)

Les transactions sont l'entrée la plus courante. Elles commencent par une date, un indicateur (* pour une transaction complète ou ! pour une transaction incomplète), un bénéficiaire facultatif et une description. Chaque ligne qui suit (indentée de deux espaces) est un "enregistrement" dans un compte.

; AAAA-MM-JJ * "Bénéficiaire" "Description"
; Compte1 Montant Marchandise
; Compte2 -Montant Marchandise

2024-07-28 * "Trader Joe's" "Épicerie hebdomadaire"
Dépenses:Alimentation:Épicerie 125.50 USD
Passifs:CarteCrédit:US:Discover -125.50 USD

Par commodité, si une transaction n'a que deux enregistrements, vous pouvez omettre le montant sur la deuxième ligne, et Beancount le calculera automatiquement.

2024-07-28 * "Trader Joe's" "Épicerie hebdomadaire"
Dépenses:Alimentation:Épicerie 125.50 USD
Passifs:CarteCrédit:US:Discover

Équilibrage au niveau de la transaction : Plus important encore pour une utilisation quotidienne, chaque transaction individuelle doit également s'équilibrer - la somme de tous les enregistrements dans une seule transaction doit être égale à zéro. Si une transaction ne s'équilibre pas, Beancount affichera une erreur comme celle-ci :

Alerte d'erreur Beancount

Gestion des transactions multidevises (@ et @@)

Beancount excelle dans la comptabilité multidevises.

  • Utilisez @ pour spécifier un prix de conversion par unité.
  • Utilisez @@ pour spécifier le coût total de la conversion.
; Acheter un vol en EUR avec une carte USD
2024-08-01 * "Lufthansa" "Vol pour Berlin"
Dépenses:Voyage:Vols 500.00 EUR @@ 545.00 USD ; 500 EUR m'ont coûté 545 USD au total
Passifs:CarteCrédit:US:Discover -545.00 USD

Partie 4 : Assurer la précision - L'art du rapprochement

Une pratique clé pour maintenir un grand livre précis est le rapprochement régulier. Cela implique de comparer les soldes de votre grand livre Beancount avec les relevés officiels de vos institutions financières.

Automatisation des vérifications avec les assertions de solde (balance)

La directive balance est votre principal outil pour les vérifications automatisées. Vous affirmez qu'à une date donnée, un compte avait un solde spécifique. Beancount déclenchera une erreur si son solde calculé ne correspond pas à votre assertion. Ceci est précieux pour localiser rapidement les erreurs.

Remarque : L'assertion de solde vérifie l'état du compte au début du jour spécifié (avant toute transaction ce jour-là).

; De votre relevé de carte de crédit mensuel
2024-08-01 balance Passifs:CarteCrédit:US:Discover -1432.78 USD

Liaison des documents justificatifs (document)

Vous pouvez créer un lien vers des fichiers externes comme des relevés bancaires ou des reçus, créant ainsi une piste vérifiable. Fava rend ces liens cliquables.

2024-08-01 document Passifs:CarteCrédit:US:Discover "statements/discover-2024-07.pdf"

Correction des erreurs et initialisation des soldes

Lorsque vous démarrez votre grand livre ou que vous trouvez un écart que vous ne pouvez pas retracer, vous devez effectuer un ajustement. La pratique standard consiste à utiliser un compte Capitaux propres spécial.

; Initialisation d'un compte de caisse au démarrage de votre grand livre
2020-01-01 * "Solde initial" "Mise en place d'un compte de caisse"
Actifs:Caisse:Portefeuille 200.00 USD
Capitaux propres:Soldes d'ouverture -200.00 USD

Le compte Capitaux propres:Soldes d'ouverture contient les montants qui entrent dans votre grand livre à partir de sources inconnues ou externes.

Pour les corrections rapides où l'écart exact n'est pas important, la directive pad peut ajuster automatiquement le solde d'un compte pour répondre à une assertion de balance ultérieure, en comptabilisant la différence dans un compte de capitaux propres. Utilisez ceci avec prudence, car cela peut masquer des problèmes plus importants. Les ajustements explicites sont généralement plus sûrs.

Partie 5 : Schémas de transaction avancés et réalistes

Suivi des dettes : Gestion des créances et des dettes

La comptabilité en partie double est parfaite pour suivre l'argent qui vous est dû (Actifs:Créances) ou par vous (Passifs:Dettes).

Exemple : Vous payez un dîner de groupe de 90 ,etvotreamiBobvousdoitsapartde45, et votre ami Bob vous doit sa part de 45 .

  1. Enregistrer la dépense initiale et la créance :

    2024-08-05 * "Restaurant" "Dîner avec Bob"
    Dépenses:Alimentation:Restaurant 45.00 USD ; Votre part
    Actifs:Créances:Bob 45.00 USD ; Bob vous doit
    Actifs:Banque:US:Chase:Checking -90.00 USD
  2. Lorsque Bob vous rembourse :

    2024-08-06 * "Bob" "M'a remboursé pour le dîner"
    Actifs:Banque:US:Chase:Checking 45.00 USD
    Actifs:Créances:Bob -45.00 USD

Le compte Actifs:Créances:Bob est maintenant à zéro, et vos livres sont parfaitement équilibrés.

Actifs vs. Dépenses : Achat d'une voiture et amortissement

Un achat important comme une voiture n'est pas une simple dépense ; c'est l'acquisition d'un actif qui perd de la valeur avec le temps (amortissement).

  1. Enregistrer l'achat comme un actif :

    2023-01-15 * "Concessionnaire Toyota" "Achat d'une nouvelle voiture"
    Actifs:Voiture:ToyotaCamry 30000.00 USD
    Actifs:Banque:US:Chase:Checking -30000.00 USD
  2. Enregistrer l'amortissement annuel : Supposons que vous estimez que la voiture perd 3 000 $ de valeur chaque année. À la fin de l'année, vous enregistrez cela comme une dépense.

    2023-12-31 * "Amortissement" "Amortissement annuel de la valeur de la voiture"
    Dépenses:Amortissement:Voiture 3000.00 USD
    Actifs:Voiture:ToyotaCamry -3000.00 USD

Après cette entrée, votre compte Actifs:Voiture:ToyotaCamry reflète correctement la nouvelle valeur de la voiture (27 000 $), et vous avez correctement comptabilisé le coût d'utilisation comme une dépense pour cette année.

Partie 6 : Exploration approfondie - Modélisation d'actifs complexes du monde réel

Étude de cas 1 : Comptabilisation des biens immobiliers

Une maison est souvent votre actif et passif le plus important. Voici comment la modéliser.

  1. Créer des comptes et une marchandise personnalisée :

    2022-01-01 commodity MAISON_123PRINCIPALE
    name: "Propriété au 123 rue Principale"
    2022-01-01 open Actifs:Propriété:Maison:123Principale MAISON_123PRINCIPALE
    2022-01-01 open Passifs:Hypothèque:PrêtImmobilier USD
    2022-01-01 open Dépenses:Maison:Intérêts
    2022-01-01 open Dépenses:Maison:TaxeFoncière
  2. Enregistrer l'achat : Disons que vous achetez une maison de 500 000 avecunacomptede100000avec un acompte de 100 000 et un prêt de 400 000 $.

    2022-03-15 * "Société de règlement" "Achat du 123 rue Principale"
    Actifs:Propriété:Maison:123Principale 1 MAISON_123PRINCIPALE {500000.00 USD}
    Actifs:Banque:Acompte -100000.00 USD
    Passifs:Hypothèque:PrêtImmobilier -400000.00 USD
  3. Enregistrer les paiements hypothécaires mensuels : Votre paiement mensuel se compose du capital (réduit le passif) et des intérêts (une dépense).

    2022-04-01 * "Banque hypothécaire" "Paiement hypothécaire mensuel"
    Passifs:Hypothèque:PrêtImmobilier 800.00 USD ; Capital
    Dépenses:Maison:Intérêts 1200.00 USD ; Intérêts
    Actifs:Banque:US:Chase:Checking -2000.00 USD
  4. Suivi de l'appréciation (gains latents) : La valeur marchande d'une maison change. Pour suivre cela sans affecter votre valeur nette officielle (car le gain n'est pas réalisé tant que vous ne vendez pas), vous pouvez utiliser une directive de prix avec une devise "virtuelle".

    ; Le prix d'achat est le coût de base réel
    2022-03-15 price MAISON_123PRINCIPALE 500000.00 USD

    ; Une estimation de marché mise à jour est un gain latent
    2024-01-01 price MAISON_123PRINCIPALE 550000.00 USD.NONRÉALISÉ

Cela vous permet de voir la valeur estimée dans les graphiques de Fava sans gonfler indûment votre bilan.

Étude de cas 2 : Suivi des actions à attribution restreinte (AAR)

Les AAR sont une forme courante de rémunération en actions. La comptabilisation de ces actions implique le suivi de l'attribution initiale, des événements d'acquisition et de la retenue d'impôt.

  1. Configuration initiale : Créer des marchandises pour les actions acquises (HOOL) et non acquises (HOOL.NONACQUIS), ainsi que les comptes nécessaires.

    2021-01-01 commodity HOOL
    2021-01-01 commodity HOOL.NONACQUIS
    2021-01-01 open Actifs:Courtage:Etrade:HOOL HOOL
    2021-01-01 open Actifs:Attribution:NonAcquises HOOL.NONACQUIS
    2021-01-01 open Revenus:Salaire:Hooli:AAR
    2021-01-01 open Dépenses:Impôts:Fédéral
  2. Enregistrer l'attribution initiale : Cette transaction montre l'attribution totale se déplaçant vers un compte d'actifs non acquis.

    2021-02-01 * "Hooli" "Attribution initiale d'AAR"
    Actifs:Attribution:NonAcquises 1000 HOOL.NONACQUIS
    Revenus:Attribution:Récompenses -1000 HOOL.NONACQUIS
  3. Enregistrer un événement d'acquisition : C'est la transaction clé. Lorsque des actions sont acquises, vous reconnaissez un revenu, payez des impôts (souvent en vendant certaines actions) et recevez les actions nettes. Supposons que 100 actions soient acquises à 150 $/action.

    2022-02-01 * "Hooli" "Événement d'acquisition d'AAR"
    ; Reconnaître un revenu total de 100 * 150 $ = 15 000 $
    Revenus:Salaire:Hooli:AAR -15000.00 USD

    ; Afficher les impôts payés sur ce revenu
    Dépenses:Impôts:Fédéral 4000.00 USD
    Dépenses:Impôts:État 1000.00 USD

    ; Vous recevez les actions nettes (supposons 60 actions) à leur coût de base
    Actifs:Courtage:Etrade:HOOL 60 HOOL {150.00 USD}

    ; Les 40 autres actions ont été vendues pour couvrir 6 000 $ d'impôts.
    ; Cette transaction équilibre les revenus, les impôts et les actions reçues.
    ; Nous devons également montrer la réduction des actions non acquises.
    Actifs:Attribution:NonAcquises -100 HOOL.NONACQUIS
    Dépenses:Attribution:Acquises 100 HOOL.NONACQUIS

Cette transaction unique et équilibrée modélise correctement l'ensemble de l'événement : l'attribution non acquise est réduite, le revenu est reconnu, les impôts sont payés et les actions acquises nettes apparaissent dans votre compte de courtage avec le coût de base correct pour les calculs futurs des gains en capital.

Partie 7 : Gestion de projet pour votre grand livre

À mesure que votre grand livre s'agrandit, l'organisation devient essentielle.

Utilisation du contrôle de version (Git) pour protéger vos données

Étant donné que votre grand livre est un fichier texte, il est parfait pour le contrôle de version avec Git. Cela vous donne un historique complet de toutes les modifications, vous protégeant contre les suppressions accidentelles ou les erreurs. Avertissement : Vos données financières sont très sensibles. Utilisez un référentiel privé sur des services comme GitHub/GitLab, ou hébergez le vôtre.

Organisation avec des étiquettes (#) et des liens (^)

Beancount offre deux façons de regrouper les transactions au-delà des comptes :

  • Étiquettes (#) : Utiliser pour les événements ou les projets. Vous pouvez filtrer toutes les transactions liées à un voyage spécifique, par exemple. 2024-07-20 * "Hôtel" "Vienne" #voyage-europe-2024
  • Liens (^) : Utiliser pour connecter des transactions financièrement liées qui se produisent à différents moments, comme un retrait d'espèces et les frais bancaires associés.

Une stratégie évolutive pour structurer vos fichiers (include)

Un seul fichier massif est difficile à gérer. Utiliser la directive include pour diviser votre grand livre en plusieurs fichiers. main.bean:

; Fichier de grand livre principal

; Options globales
option "title" "Mon grand livre personnel"
option "operating_currency" "USD"

; Inclure les déclarations de compte et autres fichiers
include "accounts.bean"
include "years/2023.bean"
include "years/2024.bean"
include "events/trip-europe-2024.bean"

Une stratégie organisationnelle robuste, par ordre de priorité :

  1. Par événement : Créer un fichier séparé pour un événement majeur et autonome (par exemple, trip-europe-2024.bean).
  2. Par catégorie/bénéficiaire : Pour les transactions très régulières et récurrentes comme les factures de services publics ou les salaires, les regrouper dans leur propre fichier (par exemple, recurring-rent.bean).
  3. Par compte : Pour les transactions étroitement liées à un compte spécifique (intérêts, frais, paiements par carte de crédit), envisager un fichier spécifique au compte.
  4. Par date : Pour toutes les autres transactions générales, une simple division par année (2024.bean) ou par mois (2024/07.bean) est efficace.

Partie 8 : Conclusion

Beancount offre une courbe d'apprentissage abrupte, mais récompense l'effort avec une puissance, une flexibilité et un contrôle inégalés sur vos données financières. En adoptant les principes de la comptabilité en partie double et les outils pratiques que Beancount fournit, vous pouvez passer d'un simple suivi des dépenses à un système complet, précis et perspicace de gestion financière personnelle. Votre grand livre devient un actif permanent, privé et précieux pour comprendre votre passé et planifier votre avenir.

Premiers pas avec Beancount.io

Beancount.io est une plateforme moderne de gestion financière basée sur le cloud qui transforme vos enregistrements de transactions textuels en états financiers complets, y compris les comptes de résultat, les bilans et les balances de vérification. En combinant la fiabilité des fichiers texte brut avec des outils de visualisation puissants, Beancount.io vous aide à maintenir un contrôle précis sur votre vie financière tout en obtenant des informations précieuses sur la performance de vos investissements.

Commencez votre parcours financier avec Beancount.io - Gratuit pendant notre période promotionnelle !

Dépenses

Compte de résultat

Bilan