Aller au contenu principal

Cas d’usage

Immutabilité du registre fiscal (ISCA + chaîne SHA-256)

Audit trail crypto-vérifiable + ISCA Guard Eloquent

Scell.io implémente l'immutabilité fiscale via deux mécanismes complémentaires : (1) une chaîne de hachage SHA-256 sur la table `fiscal_entries` où chaque entrée embarque le hash de la précédente, (2) un ISCA Guard niveau Eloquent qui bloque toute modification d'un champ fiscal sur une facture/avoir/clôture en statut autre que `draft`. Toute tentative est journalisée dans `fiscal_audit_logs` avec sévérité `critical`. L'intégrité globale est vérifiable via `GET /api/v1/fiscal/integrity` qui recalcule la chaîne complète et retourne `valid: true/false` + le premier index corrompu. Conforme aux exigences ISCA de la DGFiP.

À retenir

  • Hash SHA-256 par entrée incluant le hash précédent
  • ISCA Guard Eloquent : modification bloquée hors `draft`
  • Logs critiques dans `fiscal_audit_logs`
  • Endpoint `GET /api/v1/fiscal/integrity` de vérification
  • Anchor TSA RFC 3161 quotidien (FiscalAnchor)
  • Conservation 10 ans + export FEC DGFiP-compliant

Exemple de code

import { ScellClient } from '@scell/sdk';
const scell = new ScellClient({ apiKey: process.env.SCELL_SECRET_KEY! });

// Vérifier l'intégrité du registre fiscal (cron quotidien recommandé)
const integrity = await scell.fiscal.integrity();

if (!integrity.valid) {
  // Alerte critique : la chaîne est cassée
  await alertOps({
    severity: 'critical',
    message: `Fiscal log corrupted at entry #${integrity.first_corrupted_index}`,
    details: integrity,
  });
  throw new Error('Fiscal integrity violation');
}
console.log(`Chain valid up to entry #${integrity.last_index}`);

Voir aussi

Vos préférences cookies

Nous utilisons des cookies pour améliorer votre expérience. Les cookies essentiels sont toujours actifs. Politique cookies.