Vérifier l'intégrité des clôtures de caisse
Chaque clôture journalière de caisse (le Z) enregistrée dans MAREA porte une empreinte SHA-256, chaînée à celle de la clôture précédente ; les clôtures de période, la petite caisse, les tables de caisse, les lignes figées des factures et des avoirs, et la piste d'audit ont chacune leur propre chaîne. L'outil ci-dessous revérifie ces chaînes à partir des seuls fichiers exportés par l'établissement (les clôtures, les clôtures de période, l'archive fiscale), sur n'importe quel ordinateur, sans compte MAREA et sans connexion à nos serveurs.
Cette page est publique et le reste, y compris pour un établissement qui n'utilise plus MAREA : l'établissement, son expert-comptable ou un agent de l'administration fiscale peuvent y télécharger l'outil et sa notice à tout moment.
Les deux fichiers
Rejoue les empreintes et les chaînes des clôtures journalières, des clôtures de période et de l'archive fiscale depuis les seuls fichiers exportés, sans MAREA ni réseau. Il demande Node.js, rien d'autre.
- Taille
- 115,2 Ko (117 961 octets)
- Empreinte SHA-256
- 2f91712f08c7dd3864401688565f6954d30ec05947af4744b51113f553139527
Décrit en français les trois fichiers (clôtures journalières, clôtures de période, archive fiscale), l'algorithme (SHA-256), les chaînes, les contrôles de l'outil et ce qu'il ne voit pas.
- Taille
- 40,6 Ko (41 561 octets)
- Empreinte SHA-256
- 271bd4da7acf0ca8df57f95fff502a6754719ac46d9b40aa832d3845621a7ac6
Vérifier que vous avez le bon fichier
L'empreinte affichée ci-dessus est calculée, à chaque affichage de cette page, sur le fichier même que le bouton télécharge. Calculez celle de votre copie et comparez-les : elles doivent être identiques, caractère pour caractère.
certutil -hashfile verifier-clotures-marea.mjs SHA256
shasum -a 256 verifier-clotures-marea.mjs
sha256sum verifier-clotures-marea.mjs
Cette empreinte prouve que votre copie est celle que cette page sert. Elle ne remplace pas une signature électronique : l'outil n'est pas signé par une clé.
Vérifier un fichier
- Exporter le fichier depuis le Back Office de MAREA : « Vos données », domaines « Clôtures journalières de caisse (Z) » et « Clôtures de période de caisse », ou, pour l'archive fiscale d'une période, « Ventes › Exports programmés ». Ne l'enregistrez jamais depuis un tableur, qui le réécrirait (l'outil le dirait alors illisible).
- Installer Node.js, gratuit, version 18 ou plus (nodejs.org). Rien d'autre n'est nécessaire : l'outil est un seul fichier, sans dépendance.
- Placer l'outil et le fichier dans un même dossier, puis, depuis ce dossier :
node verifier-clotures-marea.mjs clotures.csv
Plusieurs fichiers se donnent ensemble ; les clôtures de période sont alors vérifiées contre le Z qui clôt la fin de leur période :node verifier-clotures-marea.mjs clotures.csv clotures-periode.csv
Et l'archive fiscale d'une période :node verifier-clotures-marea.mjs archive-fiscale.json
- Lire le verdict : INTÈGRE (chaque empreinte et chaque chaîne tiennent), ALTÉRÉ (chaque défaut est imprimé avec son numéro), ILLISIBLE (le fichier n'est pas un export de MAREA, ou il a été réécrit), ou, pour une archive, INCOMPLET (rien d'altéré, mais une partie ne se vérifie pas depuis ce seul fichier : chaque point est imprimé).
Tant que la dernière empreinte de chaque chaîne est celle que MAREA garde, l'outil prouve qu'aucun enregistrement n'a été modifié, inséré ni retiré du milieu d'une chaîne depuis sa production, pour tout ce que son texte signé porte (les quelques colonnes qu'aucun texte signé ne couvre sont nommées par la notice). Il n'a pas de clé : un enregistrement retiré ou ajouté à la fin d'un fichier, ou une chaîne réécrite depuis l'un de ses maillons, empreintes recalculées, ne se voit que par cette dernière empreinte, qu'il imprime. Comparez-la au dernier Z de caisse, à l'écran d'intégrité du Back Office de MAREA tant que la chaîne n'a reçu aucune ligne depuis la fin du fichier, ou, pour une archive, à l'archive de la période suivante. La notice décrit chaque fichier, l'algorithme, chaque contrôle et ce que l'outil ne voit pas.
Une archive fiscale ne porte que les enregistrements datés dans sa période : une chaîne peut y commencer après son premier numéro, ou y laisser un numéro absent. L'outil le dit ligne par ligne et répond alors INCOMPLET, jamais INTÈGRE : la période voisine, ou l'écran d'intégrité, tranche.