Une question sur la compta d'indépendant en Suisse ? Demande-moi, je t'oriente vers les bonnes fiches.
Procédure — transitoires (cut-off) de bout en bout
Procédure — transitoires (cut-off) de bout en bout
Le banc d'essai de la refonte (cfdocs/REFONTE_CERVEAU.md§9). Sans cut-off, le bénéfice est faux et la compta est « à peu près », pas finie. C'est le levier nº 1 de la finalité 90-100 %. Répartition des rôles : toi (l'IA) tu DÉTECTES par raisonnement et tu EXPLIQUES en langage humain ; le code (lib/dossier/transitoires.ts) calcule le prorata et fabrique les écritures équilibrées ; la calculatrice (lib/dossier/books.ts) vérifie le bouclement. Tu n'écris jamais un chiffre toi-même : tu passes par les outils.
Les outils
| Outil | Rôle |
|---|---|
detect_transitoires(exercice) | Te remonte les signaux (factures à cheval, abos annuels, lignes reconduites du N-1, classiques manquants AVS/honoraires) avec montant pré-calculé quand il existe. Ne pose rien. |
propose_transitoire(...) | Pose le transitoire via la calculatrice ; renvoie l'état du bouclement. |
list_transitoires(exercice) | Liste ce qui est déjà posé, pour revoir / corriger. |
remove_transitoire(cut_off_id) | Supprime un transitoire (et sa reprise s'il y en a une), re-vérifie. |
1. Détecter (raisonnement, pas pattern figé)
Appelle detect_transitoires. Tu reçois des signaux bruts — à toi de trancher lesquels sont de vrais transitoires.
| Indice dans le dossier | Type | Compte | Catégorie |
|---|---|---|---|
| Facture fournisseur déc. {N}, payée janv. {N+1} | charge à payer | 2300 | du_en_janvier |
| Loyer / électricité de décembre réglé en janvier | charge à payer | 2300 | du_en_janvier |
| Assurance / abo / hosting annuel payé au 2e semestre, couvrant au-delà du 31.12 | payé d'avance | 1300 | facture_a_cheval |
| Vignette / abo {N+1} payé en décembre {N} | payé d'avance | 1300 | paye_d_avance |
| Ligne 1300 ou 2300 dans l'ouverture {N} (= clôture {N-1}) | reconduction | 1300/2300 | reprendre le montant {N-1} comme défaut |
| Déclaration d'impôt {N-1} : charges payées d'avance / à payer / provisions déjà déclarées | reconduction | selon la ligne | reprendre comme base, ajuster sur les docs {N} |
| AVS : acomptes payés mais décompte définitif non reçu | charge à payer | 2300, contrepartie 2850 | avs_a_provisionner |
| Honoraires du comptable pour boucler {N}, facturés {N+1} | charge à payer | 2300 | honoraires_bouclement |
Gardes : n'invente pas un transitoire sans trace (sauf AVS + honoraires, quasi universels) ; en dessous de ~100 CHF laisse tomber (importance relative) ; un bien durable > 1 000 CHF n'est PAS un transitoire (c'est un investissement amorti).
2. Pré-remplir (ne demande que l'irréductible)
Le montant vient, par ordre de préférence (toujours calculé par le code) :
- Prorata d'une facture lue : passe
montant_total+debut+fin, le code calcule la part qui déborde (base mois par défaut : assurance 1 200 du 01.07→30.06 → 600). - Reconduction {N-1} : la ligne 1300/2300 d'ouverture ou les transitoires / provisions de la déclaration d'impôt de l'an dernier donnent le défaut.
- Estimation (AVS = bénéfice × taux − acomptes ; honoraires = défaut) → marque
estime: true. - Saisie de l'user : seulement si rien des trois.
Ne redemande jamais un montant déjà dans une facture, le grand-livre ou le bilan {N-1}.
3. Expliquer (zéro jargon)
Utilise les patrons des fiches 1300-actifs-transitoires et 2300-passifs-transitoires (§ Expliquer au client). Jamais « 1300 / 2300 / transitoire / cut-off / débit ». Toute question montre date + libellé + montant + d'où il vient.
4. Comptabiliser — actif et passif ne se posent PAS pareil
L'asymétrie est la clé (sinon double-comptage du paiement) :
ACTIF (payé d'avance) — on pose la PAIRE (sûr, aucune ligne bancaire en face) : Fin {N} D 1300 / C {charge} Début {N+1} D {charge} / C 1300 (reprise auto, reversalOf) PASSIF (à payer) — on pose UNIQUEMENT l'accrual {N} : Fin {N} D {charge} / C 2300 → PAS de jambe de paiement {N+1} ici. AVS (cas RI — le code force la contrepartie privée) : Fin {N} D 2850 / C 2300
Pourquoi pas de paiement {N+1} pour les passifs : le décaissement réel de janvier ({N+1}) arrivera par l'extrait bancaire. Il sera alors reclassé D 2300 / C 1020 (et pour l'AVS D 2300 / C 1020, surtout pas D 2850 / C 1020) par la couche d'import — sinon le paiement serait compté deux fois. Tu ne poses donc jamais la jambe de paiement au bouclement.
Tu fournis le sens (actif / passif), la contrepartie (compte de charge du plan ; pour avs_a_provisionner le code force 5790, jamais 2850), et le montant (ou les bornes de facture). Tu ne choisis jamais 1300/2300 toi-même (le code les met) ni un compte hors plan (refusé).
5. Vérifier (le bilan boucle)
propose_transitoire renvoie l'invariant (ok, ecartBilan, diagnostics). Une écriture transitoire est équilibrée par construction ; si ok:false, c'est un diagnostic (souvent une contrepartie incohérente) — tu corriges, tu ne « sers » jamais un bilan faux (cf invariants-bilan).
6. Corriger (retour arrière, à tout moment)
list_transitoires pour revoir ; remove_transitoire(cut_off_id) supprime le transitoire (et sa reprise si actif) puis re-vérifie ; re-pose avec le bon montant. Chaque transitoire garde sa source → on sait toujours d'où vient le chiffre. Satisfait l'exigence « revenir sur n'importe quelle réponse, partout » (REFONTE §2.5).
Banc d'essai (dossier type)
- Assurance RC 1 200 (01.07→30.06) →
facture_a_cheval, actif, contrepartie 6520, prorata → 600. Paire posée. - Loyer décembre 1 500 payé 03.01 →
du_en_janvier, passif, contrepartie 6000. Accrual seul ; le paiement de janvier sera reclassé à l'import. - AVS : bénéfice × 10 % − acomptes →
avs_a_provisionner, passif, contrepartie forcée 2850. Accrual seul. - Honoraires bouclement →
honoraires_bouclement, passif, 6500,estime:true. Accrual seul.
→ après chaque pose, invariant ok:true. L'user corrige l'assurance à 1 400 → remove + propose → 700, le bilan reboucle.
Sources
- sources-officielles entrées
pme-2026,co-958 lib/dossier/transitoires.ts(moteur),lib/dossier/books.ts(vérif),docs/MODELE_COMPTABLE.md§Transitoires + §Corrections (contrat)