marea

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

L'outil de vérification
verifier-clotures-marea.mjs
Télécharger

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
La notice
NOTICE-VERIFICATION-CLOTURES.md
Télécharger

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.

Windows (invite de commandes ou PowerShell)
certutil -hashfile verifier-clotures-marea.mjs SHA256
macOS
shasum -a 256 verifier-clotures-marea.mjs
Linux
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

  1. 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).
  2. 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.
  3. 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
  4. 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.

Vérifier l'intégrité des clôtures de caisse · MAREA