Article “pense-bĂŞte” sur mon utilisation rĂ©cente de Ledger et du concept de plaintextaccounting. (Probablement pas mal de choses Ă amĂ©liorer).
Structure
Il est possible de créer un fichier .ledgerrc dans son répertoire utilisateur pour renseigner les options par défaut. Par exemple :
--file ~/chemin/vers/ledger/.ledger
--date-format=%Y/%m/%d
--decimal-comma
La structure du fichier Ledger elle-même est séparée en plusieurs fichiers :
ledger
|--.ledger
|--data/
| |--00-banque1.ldg
| |--2020-banque2.ldg
| |--2021-banque2.ldg
| |--definitions.ldg
| `--prices.db
`--dump/
.ledger: fichier maĂ®tre qui rĂ©fĂ©rence les fichiers dansdata,data:00-banque1.ldg: consigne les transactions d’une banque ou comptes Ă faibles mouvements,2020-banque2.ldg&2021-banque2.ldg: consigne les transactions d’une banque ou comptes Ă mouvements rĂ©guliers, et donc sĂ©parĂ© en annĂ©es pour plus de clartĂ©,definitions.ldg: dĂ©clarations des actifs et des bĂ©nĂ©ficiaires rĂ©guliers,prices.db: base des prix de change pour les monnaies Ă©trangères ou les actions (voir ci-dessous),
dump: stock les fichiers d’exports des Ă©tablissements financiers (csv, qif, etc.).
Base de prix de change
Comme Ă©voquĂ© ci-dessus, il est possible de maintenir une base de donnĂ©es de prix de change afin d’obtenir facilement une correspondance entre les actions et leurs Ă©quivalences en Euros, ou si l’ont souhaite suivre des dĂ©penses dans des monnaies Ă©trangères.
L’outil Pricehist sera utilisĂ© pour cela.
Après l’avoir installĂ©, vous pouvez par exemple rĂ©cupĂ©rer l’historique des prix des actions Air Liquide (avec le code Yahoo Finance) :
$ ~/.local/bin/pricehist fetch yahoo AI.PA -s 2011-01-01 -e 2021-12-15 -o ledger --fmt-decimal , > data/prices.db
Ledger peut ensuite indiquer la liste des prix connus (identification par Ledger au travers des transactions + pricehist) :
$ ledger prices --price-db data/prices.db
2021/12/13 "AI.PA" 154,979996 EUR
2021/12/14 "AI.PA" 152,919998 EUR
2021/12/15 "AI.PA" 153,919998 EUR
2021/01/06 DYN 36,47 EUR
2021/10/14 DYN 38,00 EUR
2021/01/06 ORA 9,75 EUR
2021/12/15 ORA 13,51 EUR
2021/01/06 EQU 24,932 EUR
2021/11/25 EQU 24,84 EUR
2021/01/06 EVO 41,29 EUR
2021/10/14 EVO 41,95 EUR
2020/11/08 "3DEC" 65,91 EUR
Exemples de commandes
Dépenses du mois en cours par catégories
$ ledger bal ^Expenses --period "this month" --flat --invert
Creuser les dĂ©penses d’une catĂ©gorie
$ ledger reg ^Expenses:Transports:Train --period "this month"
DĂ©penses d’une catĂ©gori epar mois
ledger reg -M Expenses:Courses
Balances des mois précédents
Total des dépenses par mois :
$ ledger reg ^exp --period "this month" --monthly --collapse
Total des revenus par mois :
$ ledger reg ^inc --period "this month" --monthly --collapse
État des actifs
- En valeur brute :
$ ledger bal assets --flat
- En Euros :
$ ledger --exchange EUR bal assets --flat --price-db data/prices.db
Possible de retirer le total avec l’option --no-total
Sources :
- https://github.com/colindean/plaintextaccounting_workshop/
- https://pig-monkey.com/tag/plaintextaccounting/
- https://devhints.io/ledger
- https://felixcrux.com/blog/ledger-practices
- https://muehe.org/posts/automating-commodity-prices-in-ledger/
- https://lukasjoswiak.com/tracking-commodity-prices-in-ledger/
- https://p.epij.nl/ledger-cli/accounting/2018/08/23/real-world-ledger-part-1/
- https://www.mail-archive.com/ledger-cli@googlegroups.com/msg10502.html
- https://gist.github.com/agarrharr/03450c1be7f6b3d2b883c6b5e317d2aa