Beancount : contrôler la clôture au début du jour suivant

Mis à jour · 3 min de lecture

Une directive balance de Beancount contrôle le début de sa date, avant les opérations de ce jour. Si le relevé indique explicitement le solde de clôture à la fin du 31 octobre, le contrôle journalier correspondant porte sur le 1er novembre. Ne déplacez pas les dates des opérations bancaires pour faire disparaître un échec : vous modifieriez la preuve.

Ce guide aide à traduire la frontière d’un relevé en assertion Beancount. La documentation officielle du langage précise le moment du contrôle et son périmètre par devise. Identifiez d’abord un solde d’ouverture ou de clôture ; une date imprimée près d’un montant ne tranche pas toujours cette question.

Les applications exportent la date, la description et le montant en CSV. Ouvrez ce CSV dans Excel pour enregistrer un classeur XLSX. Vérifiez le résultat avec votre PDF : la compatibilité dépend du format du relevé.

Reproduire l’exemple de frontière journalière

Le 16 octobre 2026, nous avons exécuté cinq cas fictifs en USD avec Beancount 3.2.3 et bean-check, dans un environnement Python isolé. Aucun relevé réel, adaptateur d’import ou dossier client n’a été utilisé. Voici le cas qui réussit :

option "title" "SYNTHETIC bank cutoff demonstration"
2026-01-01 open Assets:Checking USD
2026-01-01 open Equity:Opening-Balances USD
2026-01-01 open Income:Example USD
2026-01-01 open Expenses:Example USD
2026-10-30 * "SYNTHETIC opening"
  Assets:Checking 100.00 USD
  Equity:Opening-Balances -100.00 USD
2026-10-31 * "SYNTHETIC cutoff-day receipt"
  Assets:Checking 25.00 USD
  Income:Example -25.00 USD
2026-11-01 * "SYNTHETIC next-day payment"
  Assets:Checking -5.00 USD
  Expenses:Example 5.00 USD
2026-11-01 balance Assets:Checking 125.00 USD

Enregistrez l’exemple dans cutoff.bean et exécutez bean-check cutoff.bean avec cette version. Le compte fictif contient 100 USD avant le 31 octobre, reçoit 25 USD le 31 octobre et paie 5 USD le 1er novembre. L’assertion du 1er novembre attend 125 USD, puisqu’elle précède ce paiement. Les 120 USD après paiement correspondent à une autre frontière.

Comparer les cinq contrôles réellement exécutés

CasAssertionCode de sortie observéInterprétation
Bonne frontière au lendemain1er novembre, 125 USD0Inclut l’encaissement du 31 octobre
Clôture affirmée un jour trop tôt31 octobre, 125 USD1Le cumul vaut 100 USD à cette ouverture
Bonne ouverture du jour de clôture31 octobre, 100 USD0Contrôle avant l’encaissement
Directive placée plus haut dans le fichier1er novembre, 125 USD0La position physique ne change pas la sémantique datée
Paiement du lendemain inclus à tort1er novembre, 120 USD1Le contrôle voit encore 125 USD

Les deux échecs sont des contre-exemples voulus. L’implémentation du contrôle des soldes distingue aussi une vérification d’une instruction qui modifierait le compte pour atteindre le montant annoncé.

Examiner un échec sans forcer le solde

  1. Vérifiez l’identité du compte et la frontière exacte du document. Le disponible actuel n’est pas un solde historique de clôture.
  2. Examinez les opérations datées du jour de clôture et du jour de l’assertion. Déterminez lesquelles précèdent le début contrôlé.
  3. Vérifiez la devise. Une assertion USD ne contrôle pas un solde EUR distinct.
  4. Conservez la sortie en échec, les valeurs source et les lignes non expliquées. Recherchez omissions, doublons et dates erronées avant toute correction.

Les cas exécutés ne couvrent ni conversion de fuseau, ni frontière intrajournalière, ni passif, ni comptabilité multidevise. Un contrôle réussi ne détecte pas non plus deux omissions qui se compensent. Complétez-le par l’identification des lignes et le processus de rapprochement des relevés.

Conditionner le lendemain à la signification du relevé

Utilisez le lendemain pour une clôture journalière établie, et le jour indiqué pour une ouverture établie. Si le document ne permet pas de le décider, laissez la question ouverte. Le livrable est une assertion correctement datée avec sa frontière source et sa sortie reproductible, pas une écriture d’ajustement qui masque une différence inexpliquée.

Cas de contrôle synthétique. Les valeurs sont pédagogiques, pas un export du fournisseur ni un fichier à importer.

Pour une source bancaire disponible seulement en PDF, téléchargez LocalExtract. Il traite un PDF localement en CSV date,description,amount ; contrôlez et adaptez les lignes à la destination réelle.

Guide associé: Rapprocher un relevé bancaire : soldes, correspondances et écarts.

Documentation de la tâche ajoutée vérifiée le 16 octobre 2026.

LocalExtract Team

Nous développons LocalExtract, un convertisseur de relevés pour ordinateur. Questions ou corrections ? Contact · Politique éditoriale

Poursuivre avec un guide associé