Ledger : convert
2025-02-01
J'utilise le standard ledger pour assurer le suivi de mes comptes[1][2]. Là où il m'est possible de reporter manuellement le contenu des tickets de caisse sur un fichier journal, je n'ai encore pas trouvé de moyen d'automatiser l'import des prélèvements récurrents. J'avais essayé le logiciel woob[3], mais les changements d'API de la banque rend le système très instable et je ne peux pas m'y fier. Par chance ma banque a finalement remis en place son système d'export des opérations, ça n'aura pris que 6 ans depuis la refonte de leur site…
Ledger propose une fonction convert pour importer les opérations au format csv. La nomenclature des exports n'est pas standardisée, et il est nécessaire de créer une table de conversion propre à chaque banque et, in fine, chaque structure personnelle des journaux. Passable sur papier, des erreurs obscures rendent encore complexe le processus pour ma part : ça ne fonctionne pas mais j'y travaille.
Caisse d'épargne
Pour raisons historiques, la majorité de mes opérations transite par la Caisse d'épargne. Lors d'un export csv, les 13 champs sont générés :
- Date de comptabilisation ;
- Libelle simplifie : parti tier ;
- Libelle operation ;
- Reference : peu utilisé ;
- Informations complementaires : champ de commentaires ;
- Type operation ;
- Catégorie ;
- Sous categorie : contient des valeurs avec des virgules ;
- Debit ;
- Credit ;
- Date operation ;
- Date de valeur ;
- Pointage operation.
De son côté, l'utilitaire reconnait 6 champs :
- date ;
- posted ;
- code ;
- payee, desc, ou description ;
- amount ;
- credit ;
- debit ;
- cost ;
- total ;
- note.
Chaque champ ayant été converti, il suffit ensuite de lancer la commande de type `ledger convert import.csv --input-date-format "%Y-%m-%d" --account Actif:Banque`. Théoriquement du moins, des tickets ont été ouverts à ce sujet et n'ont toujours pas été clôturés depuis longtemps déjà. Au mieux, cette manipulation permet de gagner de limiter les erreurs numériques de saisie.
Dans le cas de cette banque, il est nécessaire de retirer les opérateurs devant les chiffres pour qu'ils soient correctement reconnus.