SYSTEME NACEF CAHIER DES CHARGES POUR L’ACCREDITATION DES FOURNISSEURS ET L’HOMOLOGATION DES CAISSES ENREGISTREUSES FISCALES CENTRE INFORMATIQUE DU MINISTERE DES FINANCES Angle Avenue Mohamed Ali Akid et Boulevard de la terre Centre Urbain Nord - 1003 Tunis Tél : (+216) 70.016.700. - Fax : (+216) 71.948.415 MINISTERE DES FINANCES Diffusion publique CAHIER DES CHARGES POUR L’ACCREDITATION DES FOURNISSEURS ET L’HOMOLOGATION DES CAISSES ENREGISTREUSES FISCALES NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 1/123 MINISTERE DES FINANCES Diffusion publique CLASSIFICATION : Titre du document Système NACEF - Cahier des charges pour l’accréditation des fournisseurs et l’homologation des caisses enregistreuses fiscales Référence du document NACEF-CC-MDF-12 Version 1.2 ère Date 1 émission 25/09/2024 Date de dernière modification 01/08/2025 Propriétaire du document Ministère des finances Confidentialité du document Publique / Interne / Confidentiel / Top secret Document appartenant à Centre Informatique du ministère des finances Direction Générale des Impôts REVISIONS Version Date Auteur Modifications 1.1 25/09/2024 CIMF Non applicable 1.2 01/08/2025 CIMF - Ajout de la précision que le « S-MDF Client » doit être connecté à Internet avant de lancer la demande de certificat. - Mise à jour de l’objet SMDFManifest par l’ajout du nouvel attribut « versionsInfo ». - Ajout de la procédure de « Déclaration des S-MDF Agents » - Ajout d’une nouvelle section sur les dispositions particulières à la « Maintenance » des caisses. - Mise à jour des captures d’écran. - Ajout de l’exigence « E0803» relative au format des objets JSON à transmettre à la plateforme NACEF. - Ajout de « availableOfflineTickets » dans le Manifest - Ajout du code d’erreur SMDF_ALREADY_HAS_CERTIFICATE - Mise à jour des codes exigences - Mise à jour de l’annexe 3 : exigence normative JSON, et modèle de ticket de caisse NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 2/123 MINISTERE DES FINANCES Diffusion publique SOMMAIRE Objet du document :..................................................................................................................................... 6 Définitions et interprétations : ....................................................................................................................... 6 Architecture globale du système de caisses enregistreuses fiscales :..................................................................... 8 Cadre réglementaire : ................................................................................................................................... 9 Exigences réglementaires : ............................................................................................................................ 9 Révision des critères et des procédures d’homologation et d’accréditation :.......................................................... 9 Confidentialité : ........................................................................................................................................... 9 Suivi des procédures d’accréditation et d’homologation : ................................................................................... 9 PARTIE 1 : PROCEDURES D’ACCREDITATION DES FOURNISSEURS ET D’HOMOLOGATION DES CAISSES ENREGISTREUSES FISCALES ......................................................................................................................... 10 I. PROCEDURES D’ACCREDITATION DES FOURNISSEURS :...................................................................................... 11 1. Exigences d’accréditation : .................................................................................................................. 11 2. Processus d’accréditation : .................................................................................................................. 11 3. Suivi de la validité des certificats d’accréditation :................................................................................. 13 II. PROCEDURES D’HOMOLOGATION DES CAISSES ENREGISTREUSES FISCALES : ................................................... 15 1. Processus d’homologation : ................................................................................................................ 15 4. Surveillance de la validité des certificats d’homologation : .................................................................... 16 III. OBLIGATIONS DES FOURNISSEURS DE CAISSES ENREGISTREUSES FISCALES :..................................................... 18 1. Engagements : ................................................................................................................................... 18 2. Enregistrement des ventes : ................................................................................................................ 19 3. Maintenance des équipements matériels et logiciels : ........................................................................... 19 PARTIE 2 : LES EXIGENCES FONCTIONNELLES ET TECHNIQUES DES CAISSES ENREGISTREUSES FISCALES ................. 20 I. LA DOCUMENTATION : ........................................................................................................................................ 21 II. LES MODULES TECHNIQUES DE LA CAISSE ENREGISTREUSE FISCALE :................................................................ 22 III. LES TYPES DE TRANSACTIONS ET LA STRUCTURE DU TICKET DE CAISSE : ........................................................... 23 1. Les transactions :................................................................................................................................ 23 2. Le ticket de caisse : ............................................................................................................................. 23 IV. LE LOGICIEL DE CAISSE : ....................................................................................................................................... 25 1. Gestion des versions : ......................................................................................................................... 25 2. Gestion des accès : ............................................................................................................................. 25 3. Paramétrage et configuration du logiciel de caisse : .............................................................................. 26 4. Traçabilité des opérations : ................................................................................................................. 26 5. Enregistrement des données : ............................................................................................................. 26 6. Sécurisation et intégrité des données :................................................................................................. 27 7. Clôture : ............................................................................................................................................ 27 8. Archivage des données : ..................................................................................................................... 28 9. Purge des données : ........................................................................................................................... 28 10. Conservation des données : ................................................................................................................ 28 11. Fonctions de sauvegarde / Restauration : ............................................................................................. 28 NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 3/123 MINISTERE DES FINANCES Diffusion publique 12. Accès de l’administration fiscale aux données : ..................................................................................... 29 PARTIE 3 : LES PROCEDURES TECHNIQUES POUR L’INTEGRATION ET LA MISE EN ŒUVRE DU S-MDF ..................... 30 I. FONCTIONNEMENT : ........................................................................................................................................... 31 1. Principe général de fonctionnement : .................................................................................................. 31 2. Etats possibles pour un S-MDF :........................................................................................................... 33 3. Etats possibles pour une demande de certificat électronique : ............................................................... 34 4. Séquences d’appels pour le logiciel de caisse : ...................................................................................... 35 5. Traçabilité des opérations du logiciel de caisse : ................................................................................... 42 6. Maintenance : .................................................................................................................................... 43 II. INTEGRATION : .................................................................................................................................................... 43 1. Conventions générales : ...................................................................................................................... 43 2. Authentification des S-MDF agents : .................................................................................................... 44 3. Services Web :.................................................................................................................................... 44 4. Objets de l’API : .................................................................................................................................. 46 5. Codes d’erreurs : ................................................................................................................................ 49 III. INSTALLATION :.................................................................................................................................................... 54 1. Composants logiciels .......................................................................................................................... 54 2. Prérequis ........................................................................................................................................... 54 3. Types de S-MDF ................................................................................................................................. 55 4. Les installeurs :................................................................................................................................... 55 5. La version « Server » du S-MDF :.......................................................................................................... 57 PARTIE 4 : LES SPECIFICATIONS TECHNIQUES DU E-MDF.................................................................................. 61 I. DESCRIPTION GENERALE DE LA TOE : .................................................................................................................. 62 1. Composants : ..................................................................................................................................... 62 2. Cible d’évaluation (TOE – Target of Evaluation) : ................................................................................... 63 3. Composants logiques : ........................................................................................................................ 63 II. EXIGENCES DU PROFIL DE PROTECTION : ............................................................................................................ 65 1. Exigences de sécurité : ........................................................................................................................ 65 2. Exigences d’intégration : ..................................................................................................................... 70 3. Exigences matérielles : ........................................................................................................................ 73 4. Exigences réglementaires : .................................................................................................................. 74 5. Exigences de documentation ............................................................................................................... 74 III. RECOMMANDATIONS ALGORITHMIQUES ........................................................................................................... 74 III. ALGORITHMES UTILISES POUR LE MODULE D’AUDIT : ........................................................................................ 75 PARTIE 5 : ANNEXES ................................................................................................................................... 76 A1 : Le décret gouvernemental numéro 2019-1126 du 26 novembre 2019, fixant les modalités pratiques de la mise en place de la caisse enregistreuse pour les services de consommation sur place ..................................................... 77 A2 : Délais applicables pour l’accréditation des fournisseurs et l’homologation des caisses enregistreuses fiscales . 81 A3 : Spécifications techniques des tickets de caisses ................................................................................................... 82 Schéma JSON du ticket de caisse :................................................................................................................ 82 NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 4/123 MINISTERE DES FINANCES Diffusion publique Modèle de ticket de caisse : ........................................................................................................................ 82 A4 : Les taux de TVA par familles de produits .............................................................................................................. 84 A5 : Tableau de codification des taxes ......................................................................................................................... 84 A6 : Modèle de tableau des exigences techniques et fonctionnelles de la caisse enregistreuse ................................ 85 A7 : Modèle de tableau des exigences techniques et fonctionnelles du E-MDF ....................................................... 106 A8 : Modèle d’engagement pour les fournisseurs de caisses enregistreuses fiscales ............................................... 122 NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 5/123 MINISTERE DES FINANCES Diffusion publique SYSTEME NACEF CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES FISCALES Objet du document : Le Ministère des Finances lance un projet pour la mise en place d’un système de caisses enregistreuses fiscales à l’échelle nationale. Ces caisses comporteront des modules fiscaux permettant de maintenir et d’assurer, d’une manière fiable et sécurisée, la traçabilité des transactions financières effectuées par les contribuables prestataires de services. Le présent document est destiné aux fournisseurs de caisses enregistreuses et aux éditeurs de logiciels de caisses. Il établit :  les spécifications fonctionnelles et techniques des caisses enregistreuses fiscales,  les obligations des fournisseurs et des distributeurs de caisses enregistreuses fiscales,  la procédure d’acquisition, d’activation, de transfert et de mise en œuvre des caisses enregistreuses fiscales. Définitions et interprétations : A. Intervenants : MF : Le Ministère des Finances. CIMF : Le Centre Informatique du Ministère des Finances. DGI : La Direction Générale des Impôts. Unité Structure qui relève du Ministère des Finances chargée de l’accréditation des d’homologation : fournisseurs de caisses et de l’homologation des caisses enregistreuses fiscales. Unité Structure qui relève de la DGI qui est chargée d’établir une identification rigoureuse d’enregistrement : des demandeurs de certificats électroniques pour les caisses enregistreuses. ANCE : L’Agence Nationale de Certification Electronique, qui est l’autorité de certification racine en Tunisie. CERT : Le Centre d'Etudes et de Recherche des Télécommunications, qui est le guichet unique pour l’homologation des équipements TIC. Fournisseur : Personne physique ou morale qui exerce des activités de vente et/ou d’installation de CEF. Contribuable : Personne physique ou morale qui est redevable aux impôts en vigueur et qui doit disposer d’une CEF. Client : Personne physique qui consomme les produits commercialisés par un contribuable. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 6/123 MINISTERE DES FINANCES Diffusion publique B. Composantes du système de caisses enregistreuses fiscales : SCEF : Système de caisses enregistreuses fiscales. Se réfère au système permettant de :  collecter les données relatives aux transactions établies au niveau d'un contribuable ;  protéger les données collectées en garantissant leur confidentialité, intégrité et authentification. D'autres besoins spécifiques seront considérés au besoin ;  envoyer les données collectées vers la PGSCEF ;  analyser les données centralisées au niveau de la PGSCEF ;  Générer des alarmes aux cas où : – une activité de fraude est suspectée ; – une ou plusieurs composantes du SCEF est utilisée d'une manière non appropriée.  Assurer la visualisation des statistiques et des tendances relatives à l'intégralité du SCEF. CE : Caisse enregistreuse, ou système d’encaissement. Il s'agit d'une composante du SCEF, présenté en tant qu’une solution modulaire ou indissociable, matérielle ou logicielle, qui permet de collecter et d'enregistrer les données relatives aux transactions établies au niveau des contribuables MDF : Module de données fiscales. Il s'agit d'une composante du SCEF qui permet de protéger les données collectées et enregistrées par la CE avant leur envoi à la PGSCEF ; Le MDF peut être sous les formats suivants :  Un équipement matériel (E-MDF) installé chez le contribuable et connecté à la caisse et soumis à une homologation ;  Un module logiciel (S-MDF), composé de deux sous-modules, un « S-MDF client » et un « S-MDF agent », à déployer selon l’architecture technique mise en œuvre par le contribuable : - Dans le cas où le contribuable utilise plusieurs caisses (CE) connectée à un serveur : Le module « S-MDF client » est à installer sur le serveur, et le module « S-MDF agent » est à installer sur chaque caisse. Le S-MDF est de type « Server ». - Dans le cas où le contribuable utilise des caisses (CE) individuelles : Les modules « S-MDF client » et « S-MDF agent » sont à installer sur chaque caisse. Le S-MDF est de type « Terminal ». Le « S-MDF agent » est un relais entre le logiciel de caisse et le S-MDF. Le S- MDF sera fourni par le Ministère des Finances. Les spécifications fonctionnelles et techniques de ce module ainsi que les API’s publiées figurent dans le présent document. Il est conçu pour recevoir les tickets à partir de la CE, de les signer et de générer les données de réponse à renvoyer à l’appelant (CE) ; les données de réponse fournissent l’authentification des données factures. A chaque MDF est affecté un identifiant unique appelé IMDF. CEF : Caisse Enregistreuse Fiscale. Module composé par l’association d’une caisse enregistreuse (CE) et d’un module de données fiscales (MDF). NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 7/123 MINISTERE DES FINANCES Diffusion publique PGSCEF La plateforme de gestion du système de caisses enregistreuses fiscales. Il s'agit d'une (Plateforme composante du SCEF permettant d'enregistrer les données fiscales récupérées des NACEF) : MDF déployés chez les contribuables, de les analyser, de générer les alarmes et de fournir les outils de visualisation adéquats. Elle peut être référencée par les termes « Plateforme NACEF » ou « Plateforme centrale NACEF ». NACEF L’acronyme de « système National pour l’Administration des Caisses Enregistreuses Fiscales ». Il désigne le nom du projet ou le nom de la PGSCEF. Transaction : Une transaction est une opération financière conclue entre le contribuable et son client suite à l’achat d’un ou de plusieurs produits par ce dernier. Ticket de caisse : C’est le reçu délivré par le contribuable au client suite à une transaction donnée. Données Les données d'encaissement correspondent à toutes les données liées à la réalisation d’encaissement : d’une transaction et à son règlement, les données cumulatives, et les données de traçabilité. CADES : CMS Advanced Electronic Signature. CAdES est un format de signature électronique qui utilise des signatures CMS (Cryptographic Message Syntax) pour une intégrité et authenticité des documents électroniques. Comme la signature XAdES, CAdES peut être incorporée directement dans le document ou être stockée séparément. Elle garantit aussi la non-répudiation du document. Architecture globale du système de caisses enregistreuses fiscales : Un système de caisses enregistreuses fiscales est composé d’un ensemble de modules. Il s'agit :  du module de caisse enregistreuse (CE),  du module de protection des données fiscales (MDF),  de la plateforme centrale de gestion des caisses enregistreuses fiscales (PGSCEF). Le module de caisse enregistreuse (CE) et le module de protection des données fiscales (MDF), constituent la « caisse enregistreuse fiscale (CEF) ». Ils sont déployés au niveau du contribuable prestataire de services, alors que la PGSCEF est déployée au niveau du Ministère des finances. L'interaction entre ces trois modules est illustrée par la « Figure 1 ». Figure 1 : Architecture du système de caisses enregistreuses fiscales. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 8/123 MINISTERE DES FINANCES Diffusion publique Cadre réglementaire :  L’article 59 ter du code de l’impôt sur le revenu des personnes physiques et de l’impôt sur les sociétés, a instauré l’obligation aux entreprises prestataires de services de consommation sur place de mettre en place « une caisse enregistreuse », et ce, pour toutes les transactions avec les clients.  Le décret gouvernemental numéro 2019-1126 du 26 novembre 2019, a fixé les modalités pratiques de la mise en place de la caisse enregistreuse pour les services de consommation sur place en établissant les caractéristiques de ladite caisse et les obligations des parties. Exigences réglementaires : 1. Les fournisseurs de caisses sont soumis à une procédure d’accréditation. 2. Les différents composants des caisses enregistreuses fiscales (CE et MDF) sont soumis à une procédure d’homologation. 3. Les E-MDF, doivent obéir aux conditions et procédures d’importation et de commercialisation des moyens ou des services de cryptage à travers les réseaux de télécommunications conformément au décret 2639/ du 21 juillet 2008. La vérification de la conformité par rapport aux conditions réglementaires du décret 2639/2008 est à la charge des organismes habilités (CERT, ANCE). Révision des critères et des procédures d’homologation et d’accréditation : Les critères et les procédures d’accréditation et d’homologation sont maintenus par l’unité d’homologation qui se réserve le droit de les modifier. Les modifications sont publiées par l’unité d’homologation dans le site dédié et les fournisseurs, sont notifiés à travers la plateforme NACEF. Confidentialité : L’unité d’homologation s’engage à maintenir confidentielle toute information déclarée comme telle et échangée dans le cadre de l’exécution du présent cahier des charges. Elle s’engage à prendre les mesures nécessaires à l’égard de son personnel, de ses sous-traitants et fournisseurs pour assurer, cette confidentialité. L’obligation de confidentialité et de protection des données à caractère personnel s’applique aussi aux demandeurs d’accréditation ou d’homologation des caisses enregistreuses fiscales. Suivi des procédures d’accréditation et d’homologation : Les demandes d’accréditation et d’homologation sont à déposer, par les fournisseurs, à travers la plateforme dédiée à cet effet, et accessible à partir de l’adresse https://homologation.nacef.tn. Le même site permet le suivi de l’état d’avancement des opérations d’accréditation et d’homologation. Il sert aussi pour la notification des fournisseurs. La liste des fournisseurs accrédités, ainsi que la liste des équipements homologués sont publiées par l’administration fiscale dans son site informationnel accessible à l’adresse https://caisse- enregistreuse.nacef.tn. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 9/123 MINISTERE DES FINANCES Diffusion publique PARTIE 1 : PROCEDURES D’ACCREDITATION DES FOURNISSEURS ET D’HOMOLOGATION DES CAISSES ENREGISTREUSES FISCALES NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 10/123 MINISTERE DES FINANCES Diffusion publique I. PROCEDURES D’ACCREDITATION DES FOURNISSEURS : Les fournisseurs de caisses enregistreuses fiscales (distributeurs, et importateurs) doivent être accrédités. L’accréditation d’un fournisseur se fait suite au dépôt d’une demande auprès de l’unité d’homologation à travers le site mis à disposition. Chaque demande doit être accompagnée par les éléments de preuves des conditions d’accréditation cités dans le présent cahier des charges. 1. Exigences d’accréditation : Les fournisseurs doivent satisfaire aux conditions suivantes :  Opérer dans un domaine d’activité en liaison avec la fourniture des caisses enregistreuses : fabrication, commercialisation, édition de logiciels de caisses ;  Identifié dans le registre des contribuables patentés, et figurer parmi ceux en activité ;  Avoir une situation fiscale en règle à la date du dépôt de la demande d’accréditation ;  Ne figure pas dans le fichier de ratissage maintenu par la direction générale des impôts. Le fichier de ratissage contient les contribuables inexistants aux adresses déclarées ;  Disposer d’un service d’assistance technique ;  Disposer d’un service de maintenance. Si l’unité d’homologation procède à une modification des conditions d’accréditations, elle doit préciser dans sa nouvelle version la nécessité ou non de la ré-accréditation des fournisseurs de caisses enregistreuses fiscales, ainsi que le délai qui va être octroyé aux fournisseurs pour la mise en conformité avec les nouvelles exigences. 2. Processus d’accréditation : Le processus d’accréditation est composé des étapes successives suivantes : a) Création d’un compte fournisseur ; b) Dépôt de la demande d’accréditation ; c) Etude de conformité et évaluation documentaire ; d) Traitement des compléments d’informations ; e) Contrôle sur place ; f) Décision d’accréditation et émission du certificat ; g) Publication du certificat d’accréditation. Toutes ces étapes se font à distance de manière dématérialisée à travers la plateforme dédiée. 2.1. Création d’un compte fournisseur : A travers la plateforme https://homologation.nacef.tn, le fournisseur procède à la création de son compte. Les informations à communiquer et qui doivent être à jour sont :  Le matricule fiscal de l’entreprise,  Le numéro CIN du représentant légal de l’entreprise,  Le numéro de téléphone mobile, et l’adresse mail du représentant légal de l’entreprise. Il faut veiller à ce que les informations communiquées soient correctes et valides. L’adresse mail et le numéro de téléphone vont être utilisés pour activer le compte une fois crée. Une fois le compte est activé, que le fournisseur a été accrédité, et qu’il a obtenu des certificats d’homologation pour ces caisses enregistreuses, il servira aussi pour le signalement des opérations de vente, et pour le suivi de la relation du fournisseur avec ses clients (incidents, opérations de maintenances, …). NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 11/123 MINISTERE DES FINANCES Diffusion publique 2.2. Dépôt de la demande d’accréditation : Une fois le compte fournisseur est créé et activé, l’utilisateur (représentant légal de l’entreprise) pourra accéder aux fonctionnalités de dépôt et de suivi de l’état d’avancement du traitement des demandes d’accréditation. Lors du dépôt de la demande, un ensemble de pièces doivent être téléchargées. Elles concernent :  Une copie récente du registre d’entreprise ;  Une présentation de la société et de ses activités ;  Une copie du certificat d’affiliation à la CNSS ;  Une copie de la CIN du représentant légal de l’entreprise ;  Un modèle de contrat de maintenance à fournir aux clients ;  Une liste détaillée du personnel affecté à l’assistance technique ;  Une liste détaillée du personnel affecté aux services de maintenance. A chaque demande validée, est affecté un identifiant unique. La demande doit contenir tous les éléments qui permettent de juger que le fournisseur pourra accomplir les engagements stipulés dans le décret gouvernemental numéro 2019-1126 du 26 novembre 2019. En soumettant sa demande, le fournisseur s’engage au respect des conditions et des obligations énoncées dans le présent document. 2.3. Etude de conformité et évaluation documentaire : L’étude de conformité et d’évaluation documentaire est réalisée par les agents habilités de l’unité d’homologation. Elle a pour objectif de vérifier la complétude du dossier déposé, ainsi que la conformité par rapport aux exigences d’accréditation. Cette étape peut conduire à l’une des alternatives suivantes :  Emission d’une demande d’éclaircissements ou de compléments d’informations ;  Organisation d’une mission de contrôle sur place. La notification des résultats de cette étape au fournisseur concerné se fait à travers la plateforme. 2.4. Traitement des compléments d’informations : A partir de son compte, le fournisseur doit répondre aux compléments d’informations dans les délais impartis indiqués dans l’annexe 2 du présent document. Une fois les délais sont écoulés, la demande est automatiquement rejetée. Suite au dépôt des réponses aux compléments d’informations, l’agent habilité de l’unité d’homologation procède, de nouveau, à l’étape « d’étude de conformité et d’évaluation documentaire ». 2.5. Contrôle sur place : Suite à l’étape « d’étude de conformité et d’évaluation documentaire », l’unité d’homologation procède obligatoirement à la réalisation d’une mission de contrôle sur place. L’objectif est de valider les allégations indiquées dans la demande, et de confirmer les engagements du fournisseur. La date de la mission de contrôle sur place est communiquée au fournisseur avant sa réalisation. Un procès-verbal est établi suite à la réalisation de la mission. Il doit être signé par les agents de l’unité d’homologation et le fournisseur concerné. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 12/123 MINISTERE DES FINANCES Diffusion publique 2.6. Décision d’accréditation et émission du résultat : La décision s’appuie sur les résultats de l’examen des éléments contenus dans la demande et du procès- verbal de la mission de contrôle sur place. Deux décisions peuvent résulter :  Approbation de la demande et émission du certificat d’accréditation.  Rejet motivé de la demande. La décision est notifiée au fournisseur concerné à travers la plateforme. Le certificat d’accréditation émis est téléchargeable à travers la plateforme et à partir du compte fournisseur. Dans le cas du rejet d’une demande, le fournisseur concerné aura la possibilité de déposer une nouvelle demande d’accréditation conformément aux délais indiqués dans l’annexe 2. Les fournisseurs accrédités doivent signaler toutes les opérations de vente à travers la plateforme NACEF de gestion des caisses enregistreuses fiscales. Une fois accrédité, le fournisseur peut déposer une demande d'homologation. 2.7. Publication des certificats d’accréditation : Dès leur émission, les certificats d’accréditation sont publiés dans le portail d’information publique accessible à l’adresse https://caisse-enregistreuse.nacef.tn. Le certificat d’accréditation est un document attestant qu’un fournisseur a le droit de commercialiser et de distribuer des caisses enregistreuses fiscales homologuées. 3. Suivi de la validité des certificats d’accréditation : Les certificats d’accréditation sont émis sans date limite de validité. Ils restent valables tant que les exigences d’accréditation n’ont pas été modifiées. Toutefois, l’unité d’homologation peut procéder à la suspension provisoire des certificats ou à leur retrait définitif. Ces actions peuvent être effectuées suite à des informations recoupées à partir de la plateforme NACEF de gestion des caisses enregistreuses fiscales, ou bien suite à des opérations périodiques de contrôle sur place. 3.1. Suspension des certificats : Les certificats d’accréditation peuvent être provisoirement suspendus dans les cas suivants :  Des non-conformités aux exigences d’accréditation sont constatées lors des opérations de contrôle sur place.  D’importantes réclamations justifiées ont été recoupées à partir de la plateforme NACEF de gestion des caisses enregistreuses fiscales : des retards importants dans le traitement des incidents réclamés par les clients, … La suspension du certificat d’accréditation engendrera un blocage au niveau du processus de vente des caisses enregistreuses fiscales. Toutefois, si le fournisseur procède à la levée de tous les manquements signalés, par l’unité d’homologation, conformément aux délais indiqués en annexe 2, la décision de suspension est annulée et le processus de vente des caisses enregistreuses est rétabli. Le cas échéant, le certificat sera retiré. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 13/123 MINISTERE DES FINANCES Diffusion publique 3.2. Retrait des certificats : L’unité d’homologation procède au retrait du certificat d’accréditation, dans les cas suivants :  Une décision de suspension non levée dans les délais impartis.  Le non renouvellement du certificat suite à une invitation formulée par l’unité d’homologation après que d’importantes modifications ont été apportées aux exigences d’accréditation.  Cessation d’activité signalée par le fournisseur concerné ou constatée par les services de la DGI.  La réception d’une demande d’annulation de l’accréditation de la part du fournisseur concerné. Le retrait du certificat d’accréditation, implique une interdiction définitive de l’activité de vente des caisses enregistreuses fiscale. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 14/123 MINISTERE DES FINANCES Diffusion publique II. PROCEDURES D’HOMOLOGATION DES CAISSES ENREGISTREUSES FISCALES : Pour les commercialiser, les caisses enregistreuses fiscales doivent être homologuées par l’unité d’homologation. Chaque mise à jour logicielle ou matérielle d’une caisse enregistreuse fiscale doit être identifiée par un numéro de version. Les critères d’homologation sont ceux mentionnés dans la partie intitulée « Exigences fonctionnelles et techniques des caisses enregistreuses fiscales » du présent document. Les critères d’homologation sont maintenus par l’unité d’homologation qui s’oblige à les publier. Par ailleurs, si les critères d’homologation seront modifiés, l’unité d’homologation doit préciser dans sa nouvelle version la nécessité ou non de la ré-homologation des caisses enregistreuses fiscales, ainsi que le délai qui va être octroyé aux fournisseurs pour la mise en conformité avec les nouvelles exigences. 1. Processus d’homologation : Le processus d’homologation est composé des étapes successives suivantes : a) Dépôt de la demande d’homologation ; b) Etude de conformité et évaluation documentaire ; c) Traitement des compléments d’informations ; d) Décision d’homologation et émission du certificat ; e) Publication du certificat d’homologation. Toutes ces étapes se font à distance de manière dématérialisée à travers la plateforme dédiée. Seuls les fournisseurs accrédités, peuvent déposer des demandes d’homologation. 1.1. Dépôt de la demande d’homologation : A travers la plateforme https://homologation.nacef.tn, le fournisseur accède à son compte (crée selon la procédure indiquée dans le processus d’accréditation) et procède à l’établissement de sa demande. Cette dernière doit être complétée par toutes les pièces justificatives telle qu’indiqué dans l’interface de dépôt de la demande. 1.2. Etude de conformité et évaluation documentaire : L’étude de conformité et d’évaluation documentaire est réalisée par les agents habilités de l’unité d’homologation. Elle a pour objectif de vérifier que le dossier déposé contient tous les détails et les justificatifs nécessaires permettant de juger de la conformité du composant soumis à l’homologation par rapport aux exigences fonctionnelles et techniques indiquées dans le présent document. Cette étape peut conduire à l’une des alternatives suivantes :  Emission d’une demande d’éclaircissements ou de compléments d’informations ;  Invitation du demandeur à fournir un échantillon du composant à homologuer. La notification des résultats de cette étape au demandeur concerné se fait à travers la plateforme. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 15/123 MINISTERE DES FINANCES Diffusion publique 1.3. Traitement des compléments d’informations : A partir de son compte, le fournisseur doit répondre aux compléments d’informations dans les délais impartis indiqués dans l’annexe 2 du présent document. Une fois les délais sont écoulés, et les compléments d’informations n’ont pas été fournis, la demande est automatiquement rejetée. Suite au dépôt des réponses aux compléments d’informations, l’agent habilité de l’unité d’homologation procède, de nouveau, à l’étape « d’étude de conformité et d’évaluation documentaire ». 1.4. Décision d’homologation et émission du résultat : La décision s’appuie sur les résultats des tests de conformités réalisés, par rapport aux exigences fonctionnelles et techniques du présent cahier des charges, lors de l’étape d’étude et d’évaluation. Deux décisions peuvent résulter :  Approbation de la demande et émission du certificat d’homologation.  Rejet motivé de la demande. La décision est notifiée au fournisseur concerné à travers la plateforme. Le certificat d’homologation émis est téléchargeable à travers la plateforme et à partir du compte fournisseur. 1.5. Publication des certificats d’homologation : Dès leur émission, les certificats d’homologation sont publiés dans le portail d’information publique accessible à l’adresse https://caisse-enregistreuse.nacef.tn. Le certificat d’homologation est un document attestant que le composant concerné est conforme aux exigences fonctionnelles et techniques précisées dans le présent cahier des charges, et qu’il peut être utilisé par les entreprises de consommation sur place. 4. Surveillance de la validité des certificats d’homologation : Les certificats d’homologation sont émis sans date limite de validité. Ils restent valables tant que les exigences d’homologation n’ont pas été modifiées. Toutefois, l’unité d’homologation peut procéder à la suspension provisoire des certificats ou à leur retrait définitif. Ces actions peuvent être effectuées suite à des informations recoupées à partir de la plateforme NACEF de gestion des caisses enregistreuses fiscales, ou bien suite aux opérations de surveillances permanentes réalisées par l’unité d’homologation. 4.1. Suspension des certificats : Les certificats d’homologation peuvent être provisoirement suspendus dans les cas suivants :  Une nécessité de ré-homologation constatée par l’unité d’homologation.  Une modification qualifiée majeure a été apportée au composant homologué.  Une recommandation établie par l’unité d’homologation suite à des changements réalisés dans les exigences d’homologation. La suspension engendrera un blocage au niveau du processus de vente des CEF portant la référence du certificat d’homologation en question. Toutefois, si le fournisseur procède à la levée de tous les manquements signalés, par l’unité d’homologation, conformément aux délais indiqués en annexe 2, la décision de suspension est annulée et le processus de vente est rétabli. Le cas échéant, le certificat sera retiré. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 16/123 MINISTERE DES FINANCES Diffusion publique 4.2. Retrait des certificats : L’unité d’homologation procède au retrait du certificat d’homologation, dans les cas suivants :  Une décision de suspension non levée dans les délais impartis.  Le non renouvellement du certificat suite à une invitation formulée par l’unité d’homologation après que d’importantes modifications ont été apportées aux exigences d’homologation. Le retrait du certificat d’homologation, implique une interdiction définitive de l’activité de vente des produits concernés. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 17/123 MINISTERE DES FINANCES Diffusion publique III.OBLIGATIONS DES FOURNISSEURS DE CAISSES ENREGISTREUSES FISCALES : 1. Engagements : [E0101] Les fournisseurs sont seuls responsables de la conformité de leurs produits aux exigences d’homologation, les contrôles de l’unité d’homologation ne pouvant se substituer à leurs responsabilités. Ils s’engagent à :  S’assurer que tous les produits homologués continuent de répondre aux exigences d’homologation qui les concernent.  Mettre en œuvre les changements appropriés en cas de nouvelles exigences.  Prendre toutes les dispositions nécessaires pour la réalisation des évaluations initiales et de surveillance.  Ne communiquer que des informations loyales et sincères.  Informer sans délai l’unité d’homologation des changements pouvant avoir des conséquences sur la conformité du produit ou la validité du certificat d’homologation accordé.  Maintenir un versioning pour les différents produits homologués. Les types de versions majeures ou mineures, ainsi que les modifications ou les évolutions réalisées, et leurs dates de publications doivent être identifiés. Ce qui permettra :  d’assurer la traçabilité des systèmes distribués sur le marché ;  de pouvoir faire une mise à jour ou une nouvelle installation le cas échéant (changement d’exigences de conformité à appliquer, etc.). Le fournisseur doit enregistrer et mettre continuellement à jour un registre des systèmes et versions distribués à ses clients.  Qualifier, d’une façon sincère, la criticité des évolutions de son produit, et déclarer les nouvelles versions de son produit.  Respecter les délais impartis indiqués dans l’annexe 2 du présent document.  Fournir, à leurs clients, ainsi qu’à l’administration fiscale, les données d’archivage, notamment dans le cas où le client cesse d’utiliser le système d’encaissement. La réalisation et la conservation de ces archives garantit l’intégrité et la disponibilité des données archivées en cas de contrôle fiscal durant la période imposée par la réglementation fiscale en vigueur.  Informer les services compétents du ministère des finances des manœuvres frauduleuses (utilisation de logiciels de type Phantomware ou Zapper, …) constatées sur les modules de caisses enregistreuses (article 11 du décret gouvernemental numéro 2019-1126 du 26 novembre 2019).  Fournir à leurs clients :  Tous les documents nécessaires au bon fonctionnement des CEF (modes d’emploi, prérequis matériels, etc.) ;  Les procédures de support et de formation le cas échéant ;  Une copie du certificat d’homologation portant le cachet et la signature du fournisseur.  Se doter d’un service d’assistance technique pour garantir le soutien de ses clients (contribuables) durant les heures de travail.  Conclure un contrat de maintenance avec ses clients, il doit intervenir d’urgence pour résoudre les problèmes liés aux caisses enregistreuses fiscales.  Proposer à ses clients un moyen d’obtenir la mise à jour des logiciels permettant de faire fonctionner les produits à l’identique de la version de produit certifiée qu’il a diffusée. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 18/123 MINISTERE DES FINANCES Diffusion publique 2. Enregistrement des ventes : [E0102] Lors de la vente d’une CEF à un client, le fournisseur doit communiquer, à travers la plateforme dédiée NACEF, les informations suivantes : a) Le numéro de série de l’équipement vendu, et de son adresse MAC ; b) L’identité du client (matricule fiscal) ; c) La référence du certificat d’homologation du produit vendu. 3. Maintenance des équipements matériels et logiciels : [E0103] Le fournisseur doit déclarer à travers la plateforme NACEF toutes les interventions de maintenances curatives (suite à un incident) ou évolutives effectuées sur une caisse enregistreuse fiscale. La déclaration doit comprendre : a) le matricule fiscal du client, b) le numéro de série de la CE, c) éventuellement le numéro de série du E-MDF, d) l’identifiant (IMDF) du MDF, e) la date de maintenance, f) le type de maintenance (curative, évolutive), g) la nature de la panne survenue, h) la solution mise en œuvre pour la résolution de l’incident, i) la date de clôture de l’incident. Le non-respect de ces obligations de la part du fournisseur, entraine des sanctions conformément aux dispositions de la réglementation en vigueur. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 19/123 MINISTERE DES FINANCES Diffusion publique PARTIE 2 : LES EXIGENCES FONCTIONNELLES ET TECHNIQUES DES CAISSES ENREGISTREUSES FISCALES NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 20/123 MINISTERE DES FINANCES Diffusion publique Dans cette partie, seront exposées les exigences fonctionnelles et techniques auxquelles les CEF doivent satisfaire pour qu’elles soient homologuées. Les méthodes de contrôle sont basées sur l’évaluation de la documentation de la CEF, des tests de certifications fonctionnelles et techniques. Les exigences concernent : 1. La documentation, 2. Les modules techniques de la caisse enregistreuse fiscale, 3. Les types de transactions et la structure des tickets de caisse, 4. Le logiciel de caisse. I. LA DOCUMENTATION : [E0201] La caisse enregistreuse doit faire l’objet d’une documentation décrivant sa conception, son exploitation, sa maintenance et son utilisation. [E0202] Les documents listés ci-dessous sont à mettre à la disposition de l’unité d’homologation. Ils doivent être rédigés en français, séparément et intitulés comme suit :  Dossier de conception générale,  Dossier de spécifications fonctionnelles,  Dossier d’architecture technique,  Dossier de maintenance,  Dossier d’exploitation,  Dossier utilisateur Ces documents doivent comprendre l’historique des versions et les motifs des mises à jour. [E0203] Le dossier de conception générale, décrit :  Le système et ses principes de fonctionnement dans leur ensemble, le matériel associé au système pour permettre l’encaissement.  Une cartographie des différents modules et de leurs interactions.  Le système d’exploitation, les langages utilisés, et les caractéristiques du réseau.  Les bases de données utilisées et la manière dont elles sont interfacées. [E0204] Le dossier de spécifications fonctionnelles, contient :  Une description des cas d’usage et des points d’attention.  Les spécifications liées aux exigences du présent cahier des charges. [E0205] Le dossier d’architecture technique, décrit :  La solution technique mise en œuvre pour le stockage sécurisé des données (éventuellement les types de signatures et de Hashs).  Les flux entre les différents composants du système.  Les fonctionnalités de sauvegarde, de restauration, d’archivage, d’export, de clôture, et d’impression. [E0206] Le dossier de maintenance : destiné à identifier le suivi des évolutions/corrections du produit, les processus et l’organisation en place pour la gestion des vulnérabilités, la gestion des licences, les méthodes de mises à jour d’une version (corrective ou évolutive) et de sa livraison chez le client, la politique de versionning du code mentionnant la gestion des versions majeures/mineures au sens des exigences décrites dans le présent cahier des charges. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 21/123 MINISTERE DES FINANCES Diffusion publique [E0207] Le dossier d’exploitation, contient une description de :  Les configurations et les paramétrages possibles du système,  La procédure d’installation,  Les prérequis matériels,  La gestion des droits utilisateurs,  Les modalités de supervision du système. [E0208] Le dossier utilisateur, contient :  Un manuel à destination de l’utilisateur final décrivant les fonctionnalités du système et son mode d’emploi.  Un manuel à destination de l’administration fiscale décrivant les procédures d’export des données d’encaissement et des pistes d’audit sur un support externe amovible. [E0209] Ces dossiers doivent être complétés par un document récapitulant pour chaque exigence fonctionnelle ou technique, la liste des documents, des paragraphes et des numéros de page de justifications concernés. Il est obligatoire d’utiliser le modèle de tableau des exigences fonctionnelles et techniques fourni en annexe A6. II. LES MODULES TECHNIQUES DE LA CAISSE ENREGISTREUSE FISCALE : [E0301] Une caisse enregistreuse fiscale (CEF) doit obligatoirement comporter un module de caisse (CE) et un module de données fiscales (MDF) ayant les fonctions suivantes : a) Le module de caisse assure les opérations relatives à la gestion des transactions : l’établissement, le stockage et l’impression des tickets de caisse ainsi que la génération des rapports financiers ; b) Le MDF assure la protection des données échangées entre la caisse enregistreuse fiscale et la PGSCEF. [E0302] Un lien de communication sécurisé doit être garanti en permanence entre les deux modules de la caisse enregistreuse fiscale. Ainsi, l’interruption de ce lien entraine automatiquement le blocage de cette dernière. [E0303] Le module de caisse enregistreuse (CE) doit communiquer exclusivement avec le module de données fiscales (MDF) qui lui est associé. [E0304] Le module de caisse enregistreuse (CE) peut se présenter selon les possibilités suivantes :  Un PC-caisse muni d’un tiroir de caisse. Dans ce cas chaque caisse doit être dotée d’un MDF.  Un serveur auquel sont connectés plusieurs caisses-tiroirs. Dans ce cas le MDF est connecté au serveur. [E0305] Le MDF peut être sous les formats suivants : a) un équipement matériel (E-MDF) installé chez le contribuable et connecté à la CE ; b) un module logiciel (S-MDF) qui comporte un composant client installé chez le contribuable. Il est conçu pour recevoir les données factures, de les signer et de générer les données de réponse (contrôle) à renvoyer à l’appelant ; les données de réponse fournissent l’authentification des données factures. Dans le présent document le terme MDF concerne les deux modèles E-MDF et S-MDF. Le S-MDF va être fourni par l’unité d’homologation. L’interfaçage entre le module de caisse (CE) et le S-MDF est détaillé dans la partie 3 du présent cahier des charges. Les exigences techniques de l’E-MDF sont spécifiées dans la partie 4 du présent cahier des charges. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 22/123 MINISTERE DES FINANCES Diffusion publique [E0306] Le module de caisse enregistreuse (CE) est doté d’un logiciel de caisse qui satisfait aux exigences techniques et fonctionnelles indiquées dans le présent document. [E0307] Chaque module de caisse enregistreuse (CE) doit avoir une désignation du modèle et un numéro de fabrication. Le numéro de fabrication est un numéro unique qui identifie à la fois le module de caisse enregistreuse et le fabricant. Le numéro de fabrication unique doit être apposé de manière indélébile sur chaque module de caisse enregistreuse installé. [E0308] Le module de caisse enregistreuse fiscale (CEF) doit être doté d’une interface réseau qui lui permet de se connecter à la plateforme centrale de gestion des caisses enregistreuses fiscales (PGSCEF). La connexion à la PGSCEF se fait à travers le réseau GSM/UMTS moyennant un APN dédié. [E0309] Le module de caisse enregistreuse (CE) doit être doté d’une interface de type USB 2.0 (ou version ultérieure). [E0310] La caisse enregistreuse fiscale (CEF) ne peut avoir de fonctions permettant d’effacer, de modifier ou de manipuler les transactions, avant, au cours ou après leur enregistrement. [E0311] La caisse enregistreuse fiscale (CEF) ne doit pas comporter de fonctions permettant de modifier les données préprogrammées (description, unité, prix, taux de TVA, ...) des articles ou services et ceci entre le moment de l’introduction de la transaction jusqu’à son enregistrement et l’impression du ticket de caisse. [E0312] Aucun équipement ou logiciel qui peut influencer, modifier ou perturber le fonctionnement normal des CEF ne doit être connecté ou intégré à la caisse enregistreuse. III.LES TYPES DE TRANSACTIONS ET LA STRUCTURE DU TICKET DE CAISSE : 1. Les transactions : Une transaction est une opération financière conclue entre le contribuable et son client suite à l’achat d’un ou de plusieurs produits par ce dernier. [E0401] Toute transaction effectuée par la CEF doit être conforme à la réglementation en vigueur en matière d’imposition, notamment par rapport à l’application de la TVA. A chaque transaction correspond un ticket de caisse imprimé par le contribuable et retourné au client. [E0402] A chaque transaction est affectée une référence permettant de l’identifier. La référence transaction doit être unique et suivre les règles de numérotation de séquence continue et de chronologie. L'affectation de la référence doit être irréversible et intangible. [E0403] Les transactions autorisées sont les suivantes : i. Vente (SALE) : il s’agit d’un achat effectué par le client ; ii. Formation (TRAINING) : effectuée par un utilisateur qui est en train de suivre une session de formation sur l’utilisation de la caisse enregistreuse. [E0404] Toute transaction effectuée doit être matérialisée par l’impression d’un ticket de caisse. Le logiciel de caisse doit pouvoir conserver un indicateur permettant de savoir si le ticket a bien été imprimé. 2. Le ticket de caisse : [E0501] Le ticket de caisse est le reçu délivré par le contribuable au client suite à une transaction donnée. Un ticket de caisse imprimé peut être de type : NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 23/123 MINISTERE DES FINANCES Diffusion publique i. Normal (TICKET) : il s’agit d’une transaction ordinaire ; ii. Pro-forma (PROFORMA) : il s’agit de ticket généré avant la conclusion d’une transaction. iii. Remboursement(REFUND) : il s’agit d’un retour de produit effectué par le client. iv. Copie (DUPLICATE) : c’est une copie d’un ticket de caisse déjà établi et dans ce cas le libellé « Copie » doit figurer sur le ticket pour le distinguer de l’original et un numéro différent doit être affecté au ticket. Chaque ticket « Copie » doit correspondre au même type que l’original. [E0502] Toutes les combinaisons d’opérations (Code transaction, Type ticket) sont autorisées. [E0503] Lorsque la caisse enregistreuse prévoit une fonction d’impression des tickets de formation, ces tickets doivent être clairement distingués du ticket de caisse. A cette fin, la dénomination « Ticket formation » doit être apposée sur le ticket. [E0504] Lorsqu’une transaction de remboursement est effectuée, cela doit être clairement indiqué sur le ticket. La mention « Ticket remboursement » doit être apposée sur le ticket. [E0505] Un système de caisse ne doit pas pouvoir imprimer de copie du ticket de caisse, sous quelle que forme que ce soit. La copie de ticket de caisse est une transaction particulière qui génère un ticket de caisse portant la mention obligatoire « Ticket copie ». [E0506] Le ticket de caisse doit comprendre toutes les données liées à la réalisation d’une transaction et à son règlement. Ces données comprennent à minima : (a) Le numéro de ticket (référence unique de la transaction) ; (b) Le numéro de ticket de la copie d’origine, lorsqu’il s’agit d’un ticket de type « Ticket copie » ; (c) La version du logiciel de caisse ; (d) Le numéro de série de la caisse enregistreuse ; (e) L’identifiant de l’utilisateur de la caisse enregistreuse qui a pris en charge les données de la transaction ; (f) L’identifiant (IMDF) du module de données fiscales ayant protégé l'envoi des données de la transaction ; (g) La date et l’heure de la transaction ; (h) L'identifiant du contribuable (son matricule fiscal) ; (i) La raison sociale du contribuable ; (j) Le nom commercial du contribuable ; (k) La catégorie du client :  NP : Personne physique non patentée,  PP : Personne patentée ; (l) L’indication si le client a bénéficié d’un avantage fiscal : SA : Sans avantage, AA : Avec avantage ; (m) Le type de la transaction selon la codification indiquée dans le « Tableau 1 » : une transaction est identifiée par deux champs :  Type de la facture : Normale, Copie, Pro-forma ;  Type de la transaction : Vente, Formation, Remboursement. (n) Le détail par article acheté :  Article : le code famille de l’article, prix unitaire HT, le pourcentage des taxes (Taux de TVA),  Quantité,  Prix total HTVA ; (o) Le montant total de la transaction TTC ; (p) Les montants des taxes selon la réglementation en vigueur (TVA, Timbre, …) (q) Le montant total des taxes ; NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 24/123 MINISTERE DES FINANCES Diffusion publique (r) Le total des remises ; (s) Le mode de règlement (et les détails des montants perçus par mode de paiement si le règlement a lieu via plusieurs modes de paiement) ; (t) Les modes de paiement peuvent être :  cash : Espèces,  check : Chèques,  bank_card : Carte de paiement,  restaurant_ticket : Ticket restaurant ou ticket cadeaux ,  mobile_payment : Paiement mobile,  contre_bon : Contre bon,  transfer : Virement ; (u) La monnaie rendue au client lorsqu’il s’agit d’un paiement en espèces ; (v) Le QR code obtenu du MDF. Le QR code doit être conforme avec la norme ISO/CEI 18004, et de taille imprimable 170x220px. [E0507] Les montants indiqués dans le ticket de caisse sont exprimés en Dinar Tunisien. [E0508] Les taux de TVA indiqués sur le ticket de caisse sont exprimés en nombres à deux chiffres suivis de deux chiffres après la virgule. IV. LE LOGICIEL DE CAISSE : 1. Gestion des versions : [E0601] A chaque version du logiciel de caisse est attribué un identifiant unique (numéro de version). Cet identifiant doit permettre :  d’assurer la traçabilité des versions de logiciels distribués sur le marché (le numéro de version doit être adapté à chaque modification du logiciel) ;  de pouvoir faire une mise à jour ou une nouvelle installation le cas échéant (vulnérabilité majeure détectée, changement d’exigences de conformité à appliquer, ...). [E0602] Le fournisseur doit enregistrer et mettre continuellement à jour un registre des logiciels et versions distribués à ses clients. [E0603] Chaque version doit être qualifiée : a) Majeure si les évolutions et les modifications sont concernées par les exigences d’homologation ; b) Mineure si les évolutions et les modifications ne sont pas concernées par les exigences d’homologation. [E0604] Toute version qualifiée « Majeure » doit être soumise à l’homologation. [E0605] Lors de son utilisation, le logiciel doit pouvoir restituer à tout moment : a) La référence du certificat d’homologation ; b) Le numéro de version du logiciel de caisse, et le nom du fabricant du programme ; c) L’identifiant du MDF (IMDF) ; d) La date d’expiration du certificat électronique. [E0606] Durant les 30 jours qui précèdent la date d’expiration de la validité du certificat électronique, le logiciel de caisse doit informer le contribuable concerné de la nécessité de renouvellement du certificat. 2. Gestion des accès : [E0701] Le logiciel de caisse doit permettre de gérer les utilisateurs et les droits d’accès pour les fonctions du logiciel. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 25/123 MINISTERE DES FINANCES Diffusion publique [E0702] Chaque utilisateur, doit être clairement identifiable avec un identifiant unique. Cet identifiant doit être archivé dans la base de données « utilisateurs » du système de caisse. Il doit être, aussi, enregistré dans les données d’encaissement. [E0703] Le logiciel doit permettre l’édition de la liste des utilisateurs et de leurs droits d’accès. 3. Paramétrage et configuration du logiciel de caisse : [E0801] Le logiciel de caisse doit disposer d’une interface de paramétrage qui permet de :  paramétrer l’identifiant du MDF (IMDF) rattaché à la caisse ;  mettre à jour un IMDF déjà paramétré dans le cas où le MDF correspondant a été substitué par un autre. [E0802] Le logiciel de caisse doit disposer d’une interface de paramétrage des familles d’articles et des taux de TVA telle qu’indiqué dans les annexes A4 et A5. [E0803] Tous les objets au format JSON, à transmettre à la plateforme NACEF, doivent être valides par rapport aux exigences normatives JSON (interdiction de l’utilisation de caractères spéciaux, …). 4. Traçabilité des opérations : [E0901] Le logiciel de caisse doit enregistrer l’exécution de toutes les opérations et de tous les événements qui peuvent intervenir : accès, encaissement, archivage, purge, sauvegarde, restauration, mode hors connexion, gestion des paramètres du logiciel, indisponibilité de l’imprimante, … Ces traces sont enregistrées dans une piste d’audit. [E0902] La piste d’audit ne doit pas être modifiable ni effaçable par une fonction du logiciel. [E0903] Les données suivantes sont obligatoirement conservées dans la piste d’audit :  Date et heure sous le format YYYYMMDD-HH24MNSS,  Module applicatif (code et Libelle),  Opération (Code et Libelle),  Type piste : « INFO » ou « ERREUR »,  Message. Le message contient le résultat de l’exécution de l’opération, les données qui permettent d’identifier l’opération, ainsi que les données paramètres utilisées lors de l’exécution de l’opération (données complémentaires). Pour les opérations de modification les données complémentaires doivent comporter la liste des données initiales ainsi que les données de modification. [E0904] Le logiciel de caisse doit pouvoir produire une archive de la piste d’audit. L’archive à produire est un fichier au format ASCII, où les données indiquées dans l’exigence [E0903] sont séparés par le caractère « : », et les données qui constituent le « Message » forment un champ de type JSON. Le nom du fichier est formé des champs générés suivants séparés par le caractère « _ » : « Matricule fiscal du contribuable », « IMDF », « MAC Adresse de l’équipement qui héberge le logiciel de caisse ». [E0905] Les exigences de sécurisation, d’archivage et de purge des données d’encaissement s’appliquent à la piste d’audit. 5. Enregistrement des données : [E1001] Le logiciel de caisse doit assurer l’enregistrement de toutes les données d’encaissement liées à la réalisation d’une transaction et à son règlement. Ces données doivent être enregistrées au plus tard au NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 26/123 MINISTERE DES FINANCES Diffusion publique moment du calcul du montant total de la transaction avant paiement (préalablement à l’impression du ticket). Ces données comprennent toutes les données « Tickets » indiquées dans l’exigence E0506 ainsi que :  toute donnée élémentaire nécessaire au calcul du total HT d’un article.  et toute donnée permettant d’assurer la traçabilité de la transaction et de garantir l’intégrité des données d’encaissement [E1002] Si des corrections (modifications ou annulations) sont apportées à des transactions, par quelque moyen que ce soit, ces corrections s'effectuent par un enregistrement des données d’encaissement correctives par le biais d’opérations de « plus » et de « moins », et non par modification directe des données d’encaissement enregistrées. [E1003] Exigences particulières concernant les transactions de type « Formation » :  Le type transaction « Formation » est réservé à l’enregistrement de transactions fictives. Les données de celles-ci doivent être enregistrées et sécurisées comme des données d’encaissement mais explicitement identifiées comme étant de type « Formation ».  L’identifiant de l’opérateur enregistrant les transactions, ainsi que toutes les opérations enregistrées lors de l’utilisation de ce mode font partie des données d’encaissement.  Le mode formation ne peut être activé que par un profil administrateur du logiciel de caisse.  Tout ticket de caisse émis lors de l’utilisation de ce mode doit être identifié comme tell en y apposant la mention « Formation ».  L’utilisation de ce mode doit être visible depuis l’affichage du système d’encaissement.  Si aucun mode de ce type n’est présent dans le système ceci doit être indiqué dans la documentation. 6. Sécurisation et intégrité des données : [E1101] Toutes les données d’encaissement doivent être conservées de façon inaltérable. L’inaltérabilité des données vise à permettre de garantir et d’être en capacité de démontrer par tout procédé technique fiable, l’absence de perte d’intégrité des données d’encaissement et ce depuis leur enregistrement initial. Ce procédé technique doit permettre de détecter et mettre en évidence toute modification ou suppression de données d’encaissement. Le procédé technique permettant la vérification de l’intégrité des données doit être spécifié dans le dossier d’architecture technique. [E1102] Le logiciel de caisse doit pouvoir contrôler l’intégrité des données et interdire la modification ou la suppression des données directement sur disque ou dans la base des données d’encaissement. Les erreurs identifiées doivent être enregistrées dans la piste d’audit. 7. Clôture : [E1201] Le logiciel de caisse doit comprendre des fonctionnalités de clôture journalières, mensuelles et annuelles. [E1202] Le logiciel de caisse ne doit pas permettre d’enregistrer des transactions sur une période clôturée. [1203] Les clôtures peuvent être réalisées automatiquement par le logiciel de caisse ou faites par l’utilisateur. [E1204] Pour chaque clôture, le logiciel de caisse doit enregistrer le total cumulatif de la période et le total perpétuel comme toute autre donnée d’encaissement. Le total cumulatif de la période est le cumul du chiffre d’affaire décompté depuis l’ouverture de la période concernée. Il s’agit d’un compteur initialisé à 0 à l’ouverture de la période (journalière, mensuelle ou annuelle) et dont la valeur est stockée à la clôture. Le total perpétuel est le cumul de chiffre d’affaire décompté depuis le début de l’utilisation du système d’encaissement. Il s’agit d’un compteur ne se remettant jamais à 0 et dont la valeur est stockée périodiquement à chaque clôture. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 27/123 MINISTERE DES FINANCES Diffusion publique [E1205] Dans le cas d’une mise à jour du système, tous les compteurs doivent continuer à être incrémentés sans être remis à 0. 8. Archivage des données : [E1301] Le logiciel de caisse doit prévoir une fonctionnalité d’archivage, permettant l’export dans un format ouvert, des données d’encaissement figées et horodatées. La période couverte par une archive ne doit pas pouvoir être supérieure à un an ou à un exercice fiscal. [E1302] Les fichiers d’archives doivent pouvoir être exploités sans l’utilisation du logiciel ayant créé ces données. [E1303] Les données contenues dans l’archive doivent être conformes aux données initiales figées à partir desquelles elle a été créée et doit prévoir un mécanisme fiable, indépendant du support de conservation de l’archive, garantissant cette intégrité et permettant de la vérifier. Ces mécanismes doivent permettre de détecter et mettre en évidence toute modification ou suppression de données d’encaissement conservées dans l’archive. Ils doivent aussi permettre de détecter et mettre en évidence toute différence avec la donnée d’encaissement initialement enregistrée ainsi que la date d’encaissement contenue dans l’archive. Le niveau de sécurité de ces mécanismes doit être au moins équivalent à celui utilisé pour répondre à l’exigence d’inaltérabilité des données d’encaissement. Le mécanisme de vérification de l’intégrité des données d’archives doit être spécifié dans le dossier d’architecture technique. [E1304] Les archives doivent être conservées de manière à garantir l’intégrité et la disponibilité des données archivées en cas de contrôle fiscal durant la période réglementaire. 9. Purge des données : [E1401] Si le logiciel de caisse dispose d’une fonctionnalité de purge des données d’encaissement, liée à la nécessité de libérer de l’espace mémoire, il doit garantir avant la mise en œuvre de la purge, la génération d’une archive contenant toutes les données d’encaissement à purger et sa conservation conformément aux exigences d’archivage des données. [E1402] La fonctionnalité de purge ne doit pas supprimer du système d’encaissement les données cumulatives ainsi que les données de traçabilité des opérations. Celles-ci doivent rester indéfiniment conservées, sécurisées, dans le système d’encaissement. 10. Conservation des données : [E1501] Toutes les données d’encaissement, de traçabilité, ainsi que les preuves de leur inaltérabilité, doivent être conservées conformément à la réglementation fiscale en vigueur. [E1502] Les données cumulatives ainsi que les données de traçabilité doivent être conservées dans le système. Les données d’encaissement (hors données cumulatives et les données de traçabilité) peuvent être conservées soit dans le système lui-même soit dans les archives. [E1503] Le logiciel permet la supervision de la capacité mémoire et d’avertir l’utilisateur de la nécessité de réaliser une purge, ou d’augmenter la capacité mémoire. 11. Fonctions de sauvegarde / Restauration : [E1601] Les fonctions de sauvegarde et de restauration, si elles existent, doivent obéir aux exigences suivantes :  Toute exécution de la fonction de sauvegarde doit être enregistrée dans la piste d’audit (traçabilité). NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 28/123 MINISTERE DES FINANCES Diffusion publique  Toute exécution de la fonction de restauration doit être enregistrée dans la piste d’audit après exécution.  Le contenu des enregistrements de sauvegarde et de restauration de la piste d’audit doit permettre d’identifier les données d’encaissement impactées par la fonction de restauration. 12. Accès de l’administration fiscale aux données : [E1702] La demande d’homologation doit contenir un manuel utilisateur à destination de l’administration fiscale, en français, détaillant la procédure permettant :  L’export des données d’encaissements et des pistes d’audit dans des archives,  L’accès à ces données d’archives pour les sauvegarder sur un support externe amovible à connecter à la caisse enregistreuse à l’aide d’un port USB. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 29/123 MINISTERE DES FINANCES Diffusion publique PARTIE 3 : LES PROCEDURES TECHNIQUES POUR L’INTEGRATION ET LA MISE EN ŒUVRE DU S-MDF NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 30/123 MINISTERE DES FINANCES Diffusion publique Dans cette partie seront décrites :  Les exigences techniques pour la mise en œuvre du S-MDF ;  Les services d’interfaçage avec les logiciels de caisses : API et objets échangés ;  La démarche de test des opérations d’interfaçage. I. FONCTIONNEMENT : Le S-MDF est un composant logiciel qui fait partie de la plateforme NACEF. Il permet au logiciel de caisse d’accéder aux deux principales fonctionnalités suivantes :  Demander un certificat pour l’équipement : procédure à effectuer une seule fois à l’installation du S-MDF puis au renouvellement du certificat. Chaque S-MDF doit être doté d’un certificat électronique.  Signer électroniquement un ticket : une procédure à effectuer pour chaque ticket qui va être imprimé par le logiciel de caisse. Pour la réalisation de ces opérations, le S-MDF expose un ensemble de services web pour les environnements Desktop/Serveurs ou d’appels inter-applications pour les environnements Mobile (Android/iOS). Toutes les interactions avec le contribuable lors de ces appels sont contrôlées par le S-MDF qui va afficher les pop-ups de saisie d’informations. Le S-MDF est composé de deux modules, un « S-MDF client » et un « S-MDF agent » :  Le « S-MDF client » : c’est le composant principal qui offre l’ensemble des services de sécurisation et de génération de tickets signés au logiciel de caisse.  Le « S-MDF agent » (ou désigné par SIC) : c’est un client léger à installer sur chaque équipement. Ces deux composants logiciels sont à déployer selon l’architecture technique mise en œuvre par le contribuable :  Dans le cas où le contribuable utilise plusieurs caisses (CE) connectée à un serveur : Le module « S- MDF client » est à installer sur le serveur, et le module « S-MDF agent » est à installer sur chaque caisse. Le S-MDF est de type « Server ».  Dans le cas où le contribuable utilise des caisses (CE) individuelles : Les modules « S-MDF client » et « S-MDF agent » sont à installer sur chaque caisse. Le S-MDF est de type « Terminal ». Le « S-MDF agent » est un relais entre le logiciel de caisse et le S-MDF. L’équipement qui héberge le composant « S-MDF agent » doit être préenregistré sur la plateforme NACEF depuis l’espace contribuable. La section intitulée Authentification des « S-MDF agents », détaille les conditions d’utilisation des agents. Dans ce qui suit, le mot « équipement » désigne l’équipement matériel hébergeant le logiciel de caisse. 1. Principe général de fonctionnement : Du point de vue du logiciel de caisse, le S-MDF est une « black box » qui va permettre d’interfacer le logiciel de caisse avec la plateforme NACEF. Cette « black box » expose un nombre limité de fonctionnalités qui doivent être appelées par le logiciel de caisse dans un ordre déterminé. L’objectif de la séquence d’appels est d’amener le S-MDF à l’état SYNCHRONIZED. Une fois dans cet état, le S-MDF peut être utilisé pour signer électroniquement les tickets et générer les QR-Codes à imprimer sur les tickets. L’état courant du S-MDF est déterminé par la récupération du Manifest. Le Manifest permet de récupérer les deux états suivants : NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 31/123 MINISTERE DES FINANCES Diffusion publique Information Comment récupérer la valeur Valeurs possibles État du S-MDF Valeur du Manifest.status Voir États possibles pour un S-MDF État de la demande de Valeur de Voir États possibles pour certificat Manifest.certificateInfo.certRequestStatus une demande de certificat La séquence des appels web-services permet d’implémenter l’ensemble des phases, depuis la demande du certificat de signature jusqu’à l’usage quotidien de la caisse. Ces appels web-services ne peuvent s’exécuter convenablement que si le S-MDF a été déjà installé et qu’il est en état de fonctionnement : a) Etat initial d’un S-MDF A son installation, un S-MDF est dans l’état FACTORY (voir États possibles pour un S-MDF). Dans cet état, le seul appel qui peut être fait depuis le logiciel de caisse est la demande d’un certificat. Tous les autres appels seront rejetés avec le code HTTP 401 (« Unauthorized »). Si le S-MDF est de type « Terminal », l’appel de demande de certificat doit être fait depuis le même équipement sur lequel est installé le S-MDF. Si le S-MDF est de type « Server », l’appel de demande de certificat doit être fait depuis tout équipement enregistré sur l’espace contribuable dans NACEF. b) Demande de certificat Le logiciel de caisse doit faire les appels suivants : Appel / Service Objet Prérequis État du S-MDF État de la web après l’appel demande du certificat après l’appel Récupération Vérifier le Manifest du S- SMDF FACTORY (pour N/A du Manifest MDF et s’assurer qu’il correctement un S-MDF est dans l’état FACTORY. installé et nouvellement configuré. installé). Demande de Déclencher la demande Le contribuable a CERT_REQUESTED PIN_VALIDATED certificat de certificat depuis fait la demande l’équipement. Le S-MDF d’un rendez-vous va inviter le contribuable depuis l’espace à saisir les informations contribuable. nécessaires (IMDF, Le S-MDF est pairing, OTP et PIN). Voir connecté à la Demande de certificat. plateforme NACEF. c) Génération du certificat À la fin de la phase précédente, un message est transmis au contribuable pour l’inviter à se présenter à l’unité d’enregistrement compétente pour la validation de sa demande de certificat. L’exécution des appels suivants sur le S-MDF n’est possible que si le certificat est généré : l’état de la demande de certificat retourné dans le Manifest est CERTFICATE_GENERATED. Le logiciel de caisse peut choisir d’appeler périodiquement l’appel de récupération du Manifest ou d’attendre que le contribuable soit notifié de la génération de son certificat pour déclencher la récupération du Manifest. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 32/123 MINISTERE DES FINANCES Diffusion publique Appel / Service Objet Prérequis web Récupération Vérifier l’évolution de l’état de la demande de certificat et s’assurer N/A du Manifest que c’est CERTIFICATE_GENERATED pour passer à la phase suivante. L’état du certificat est dans le champ Manifest. certificateInfo. certRequestStatus (voir SMDFManifest). d) Première synchronisation et impression du premier ticket (Ticket zéro) Avant de commencer à utiliser le S-MDF, le contribuable doit synchroniser son S-MDF avec la plateforme NACEF. Lors de la première synchronisation, le contribuable sera invité à changer son code PIN qui a été automatiquement généré lors de la phase précédente. Après le changement du code PIN, le S-MDF passe à l’état SYNCRONIZED, et retourne le ticket zéro que le logiciel de caisses doit imprimer comme preuve de la bonne configuration du S-MDF. Appel / Service Objet Prérequis État du S-MDF web après l’appel Synchronisation Cet appel va inviter le contribuable à La demande de certificat SYNCRHONIZED avec NACEF changer son code PIN (voir Première est dans l’état demande de synchronisation avec CERTIFICATE_GENERATED NACEF) et l’état du SMDF est CERT_REQUESTED e) Usage quotidien du S-MDF Après le changement du code PIN, le S-MDF est maintenant utilisable pour la signature électronique. Tant que le S-MDF est synchronisé, il peut être utilisé pour signer des tickets. Après l’expiration de la synchronisation, le logiciel de caisse doit déclencher une resynchronisation. i. Signature électronique : Appel / Service Objet Prérequis web Signature Signature électronique d’un ticket. L’appel retourne le QR-Code à L’état du S-MDF électronique imprimer sur le ticket. est SYNCRHONIZED. ii. Synchronisation : Appel / Service Objet Prérequis web Synchronisation Authentification régulière du contribuable. Appel à faire dès que le N/A avec NACEF S-MDF passe à l’état NOT_SYNCCHRONIZED. 2. Etats possibles pour un S-MDF : Un S-MDF peut être dans l’un des états suivants : État Description L’appel que doit lancer le logiciel de caisse FACTORY C'est l'état initial d'un équipement à Demande de certificat. l’acquisition. Aucune connexion n’a été encore faite sur le S-MDF. Voir Demande de certificat CERT_REQUESTED Une demande de certificat a été Synchronisation avec initiée depuis l’équipement. NACEF. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 33/123 MINISTERE DES FINANCES Diffusion publique État Description L’appel que doit lancer le logiciel de caisse SUSPENDED Cet équipement a été suspendu dans la plateforme NACEF. Voir Synchronisation avec NACEF NOT_SYNCHRONIZED L’équipement dispose d’un certificat mais il ne peut pas être utilisé pour la signature électronique. Le S-MDF passe à cet état dans les cas suivants : - Expiration de la fenêtre de synchronisation (3 jours). - Atteinte du nombre maximal de tickets signés en étant déconnecté (mode offline). - Le S-MDF a détecté des données incohérentes. MAINTENANCE L’équipement a été mis en maintenance dans la plateforme NACEF. SYNCHRONIZED L’équipement dispose d’un certificat Signature électronique de et peut être utilisé pour la signature tickets. électronique des tickets depuis le logiciel de caisse. Voir Signature électronique. SYNCHRONIZATION_IN_PROGRESS Le S-MDF est en train d’exécuter la Récupération du Manifest synchronisation avec la plateforme pour suivre l’avancement NACEF. Cet état peut être retourné de la synchronisation (le par l’appel de synchronisation. pourcentage d’avancement est retourné dans le SMDFManifest). 3. Etats possibles pour une demande de certificat électronique : État Description CREATED Un rendez-vous a été pris depuis l’espace contribuable, dans la plateforme NACEF, pour la demande de certificat. PAIRING_VALIDATED Le pairing a été validé avec succès depuis le logiciel de caisse. PHONE_VALIDATED Le numéro de téléphone du contribuable a été validé. PIN_VALIDATED Le code PIN du certificat a été saisi par le contribuable et a été validé. WAITING_CA La demande de certificat est en attente de validation par l’Autorité de Certification CERTIFICATE_GENERATED Le certificat a été généré. REJECTED La demande du certificat a été refusée. AUTOMATICALLY_REJECTED La demande du certificat a été refusée automatiquement (par exemple, le contribuable ne s’est pas présenté à son rendez-vous). NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 34/123 MINISTERE DES FINANCES Diffusion publique 4. Séquences d’appels pour le logiciel de caisse : Un S-MDF ne peut être utilisé pour la signature électronique de tickets depuis le logiciel de caisse que s’il est dans l’état SYNCHRONIZED. Pour être dans cet état, l’équipement doit disposer d’un certificat valide au moment de la signature électronique. Selon l’état courant du S-MDF, le logiciel de caisse doit faire l’appel associé pour atteindre l’état SYNCHRONIZED et permettre la signature électronique des tickets. La figure ci-dessous indique l’appel à faire depuis le logiciel de caisse selon son état. La récupération de l’état actuel du S-MDF peut être effectuée par l’appel GET /manifest (voir Récupération du Manifest). Figure 2.1 : Services web à appeler selon l'état du S-MDF 4.1. Demande de certificat : L’utilisation des services NACEF, nécessite que l’équipement (logiciel de caisse) dispose d’un certificat électronique valide. Pour ceci, le propriétaire de la caisse (le contribuable) doit déclencher la demande de certificat depuis son espace contribuable sur la plateforme NACEF (www.nacef.tn) pour déposer les documents requis et prendre un rendez-vous auprès de l’unité d’enregistrement compétente. Une fois cette procédure est réalisée, le contribuable doit pouvoir terminer la demande de certificat depuis le logiciel de caisse. Il est nécessaire que le SMDF soit connecté à Internet avant de déclencher la demande de certificat depuis l’équipement. Le logiciel de caisse doit implémenter cette fonctionnalité avec l’appel service web « demande de certificat » sur le S-MDF (voir Demande de certificat). Cet appel va déclencher les étapes suivantes par le S-MDF installé sur l’équipement : 1. Demande de saisie du code de pairing et de l’IMDF obtenus à travers l’espace contribuable (plateforme NACEF) ; NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 35/123 MINISTERE DES FINANCES Diffusion publique 2. Demande de saisie d’un code à usage unique (OTP) envoyé par la plateforme NACEF ; 3. L’affichage et la demande de saisie d’un code PIN affiché par le S-MDF. Ci-dessous, des Screenshots des popups de saisie que le S-MDF va afficher au contribuable. Le format d’affichage dépend de l’environnement (OS) de l’équipement. Figure 3.2 : demande de saisie de l'IMDF et du code de pairing (Desktop) Figure 3.3 : demande de saisie de l'IMDF et du code de pairing (Android) NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 36/123 MINISTERE DES FINANCES Diffusion publique Figure 3.4 : demande de saisie du code à usage unique (OTP) (Desktop) Figure 3.5 : demande de saisie du code à usage unique (OTP) (Android) NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 37/123 MINISTERE DES FINANCES Diffusion publique Figure 3.6 : demande de confirmation du code PIN L’affichage des popups pour la saisie et la validation de ces étapes est piloté par le S-MDF. En cas d’erreur, le logiciel de caisse doit refaire l’appel. Si toutes les étapes ont été réalisées avec succès, l’état du S-MDF passe à CERT_REQUESTED. En cas d’erreur, le logiciel de caisse doit implémenter le traitement selon le code d’erreur retourné (voir Codes d’erreur). À l’issue de cette procédure, le contribuable sera invité à se déplacer auprès de l’unité d’enregistrement, selon le rendez-vous qu’il a pris dans son espace contribuable, pour une vérification finale de son identité. Le contribuable sera notifié par émail et SMS après la validation et l’émission de son certificat. Note : dans le cas d’un S-MDF de type « server » (voir Types de SMDF), la demande de certificat peut être initiée depuis n’importe quel équipement connecté sur le S-MDF et équipé par « le S-MDF agent ». Une fois déclenchée depuis un équipement, le contribuable doit continuer toutes les étapes depuis le même équipement. Un code d’erreur sera retourné (SMDF_LOCKED_CERT_SYNC_REQUEST) si le contribuable déclenche la demande de certificat depuis plus d’un seul équipement en même temps. 4.2. Synchronisation avec NACEF : L’objectif de la synchronisation est d’authentifier le contribuable et d’échanger les données du S-MDF avec la plateforme NACEF pour vérifier l’état actuel de l’équipement dans le système NACEF. L’appel de synchronisation ne peut être réalisé que sur un équipement disposant d’un certificat électronique : le contribuable doit avoir pu terminer sa demande de certificat et avoir reçu la notification par SMS/émail. Le logiciel de caisse peut à tout moment vérifier l’état de la demande de certificat en récupérant le Manifest du S-MDF. Note : dans le cas d’un S-MDF de type « server » (voir Types de SMDF), la demande de synchronisation peut être initiée depuis n’importe quel équipement connecté sur le S-MDF et équipé par le « S-MDF agent ». Une fois déclenchée depuis un équipement, le contribuable doit continuer toutes les étapes depuis le même NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 38/123 MINISTERE DES FINANCES Diffusion publique équipement. Un code d’erreur sera retourné (SMDF_LOCKED_CERT_SYNC_REQUEST) si le contribuable déclenche la synchronisation depuis plus d’un seul équipement en même temps. a) Première demande de synchronisation avec NACEF Lors de la première demande de synchronisation, le S-MDF va inviter le contribuable à changer le code PIN de son certificat. Pour cela, le S-MDF va inviter le contribuable à saisir les informations suivantes : - Le code PIN actuel - Le nouveau code PIN - Confirmation du nouveau code PIN - Un code à usage unique (OTP) envoyé par la plateforme NACEF et reçu par SMS. Figure 3.7 : Demande de changement du code PIN (Desktop) Figure 3.8 : Demande de changement du code PIN (Android) NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 39/123 MINISTERE DES FINANCES Diffusion publique Figure 3.9 : Demande de synchronisation (saisie code PIN et OTP) (Desktop) Figure 3.10 : Demande de synchronisation (saisie code PIN et OTP) (Android) À la fin de la première demande de synchronisation, le S-MDF retourne un QR-Code « Ticket 0 » avec un message de confirmation et les données d’initialisation du S-MDF. Le logiciel de caisse doit imprimer ce ticket comme preuve de la bonne configuration du S-MDF. Exemple d’un QR-Code « Ticket 0 » : Bienvenue dans la plateforme NACEF. Votre SMDF a été configuré correctement. NACEF SMDF 1.0.0 IMDFXXXXXXXXXXX SYNCHRONIZED SERVER ONLINE Counter: 0 SignKey: 29e326f595dbb781162458c10b612aeb EncKey: 2088a266f492317a56a25c4260e9f467 2024-03-10T13:51:20.885 NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 40/123 MINISTERE DES FINANCES Diffusion publique b) Demandes suivantes de synchronisation Pour les demandes suivantes de synchronisation avec la plateforme NACEF, le contribuable sera invité à saisir les informations suivantes : - Le code PIN - Un code à usage unique (OTP) envoyé par la plateforme NACEF et reçu par SMS. En cas de succès de l’authentification du contribuable, le S-MDF sera dans l’un des deux états suivants :  SYNCHRONIZED : synchronisation terminée avec succès. Le S-MDF peut être utilisé pour la signature.  SYNCHRONIZATION_IN_PROGRESS : le S-MDF est en train de finaliser la synchronisation avec la plateforme NACEF en arrière-plan. Il ne peut pas être utilisé pour la signature tant que la synchronisation n’est pas terminée. Le logiciel de caisse peut afficher l’état d’avancement en récupérant le taux d’avancement (un pourcentage) depuis le Manifest. Le S-MDF retourne également un QR-Code « Ticket 0 » pour la confirmation de la synchronisation avec la plateforme NACEF. Le logiciel de caisse n’est pas obligé d’imprimer ce QR-Code. Figure 3.11 : Demande de synchronisation - saisie code PIN et OTP (Desktop) Figure 3.12 : Demande de synchronisation - saisie code PIN et OTP (Mobile) NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 41/123 MINISTERE DES FINANCES Diffusion publique 4.3. Signature électronique : La demande de signature électronique doit être faite pour chaque demande d’impression de ticket. Cet appel n’est possible que si le S-MDF est dans l’état SYNCHRONIZED. Dans tous les autres cas, l’appel va retourner une erreur. Cet appel retourne l’identifiant fiscal unique du ticket ainsi qu’un QR-Code. L’identifiant et le QR-Code doivent être inclus dans le ticket à imprimer selon les spécifications techniques indiquées dans le présent cahier des charges et qui concernent le format du ticket. Le contenu du QR-Code peut varier selon la configuration du S-MDF et selon si l’appel a été effectué en mode « en ligne » ou « hors ligne ». Le QR-Code est conforme à la norme ISO/CEI 18004. Figure 3.13 : Exemple d’un QR-Code généré par le S-MDF Cet appel prend en entrée le ticket à signer (en base 64). Le ticket doit être encodé en format JSON et conforme au schéma joint à la présente documentation. 5. Traçabilité des opérations du logiciel de caisse : Le S-MDF met à la disposition du logiciel de caisse un service web pour l’enregistrement des traces. Pour chaque opération, le logiciel de caisse doit envoyer les données suivantes qui seront conservées dans une piste d’audit :  Identifiant du module de logiciel de caisse,  Identifiant de l’opération,  Type piste INFO ou ERROR,  Message. Le message contient le résultat de l’exécution de l’opération, les données qui permettent d’identifier l’opération, ainsi que les données paramètres utilisées lors de l’exécution de l’opération (données complémentaires). Pour les opérations de modification les données complémentaires doivent comporter la liste des données initiales ainsi que les données de modification. Liste des opérations à tracer : Module Opération Message INFO Message ERROR lc UPGRADE Ancienne version ; nouvelle version Réponse obtenue (statut + message) lc CASHING Identifiant Transaction Identifiant Transaction ; Raison lc PURGE Motif Purge Raison lc BACKUP Identifiant Snapshot Raison lc RESTORE Identifiant et date du Snapshot à Raison restaurer lc OFFLINE lc ONLINE NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 42/123 MINISTERE DES FINANCES Diffusion publique Module Opération Message INFO Message ERROR lc PARAMETERS Liste des paramètres mis à jour lc PRINTER Raison /code erreur d’impression lc.agent CERT_REQUEST IMDF de la demande / Résultat du Réponse obtenue (statut + service web de la demande de certificat message) lc.agent SYNC_REQUEST Résultat du service web de la demande Réponse obtenue (statut + de synchronisation message) lc.agent SIGN_REQUEST Identifiant du ticket à signer Réponse obtenue (statut + message) lc.security USER_LOGIN Identifiant utilisateur / rôle de user.login;Raison l'utilisateur 6. Maintenance : La remise en fonctionnement normal d’un équipement qui sort d’une opération de maintenance (déclarée depuis l’espace contribuable sur la plateforme NACEF) nécessite de demander une synchronisation. Le S-MDF exigera lors de cette synchronisation de changer le code PIN du certificat. Dans certains cas particuliers de maintenances, les opérations suivantes doivent être exécutées pour récupérer un S-MDF fonctionnel : 1. Demander un code de pairing depuis l’espace contribuable, 2. Faire l’appel de demande de certificat depuis le logiciel de caisse, 3. A la demande du S-MDF Agent : o Saisir l’IMDF (le même qu’avant la maintenance) et le code de pairing o Saisir l’ancien code PIN, un nouveau code PIN et le code OTP reçu. II. INTEGRATION : 1. Conventions générales : Les appels décrits dans ce document, peuvent être déclenchés par des services web de type REST ou à travers des appels entre applications (Android App Links ou iOS Universal Links). Les mêmes conventions et objets s’appliquent. Ce document décrit les objets avec la sémantique des services web et objets JSON. Tous les services Web de la plateforme NACEF s'attendent à recevoir des requêtes POST ou GET avec un encodage JSON pour les paramètres. Les résultats sont renvoyés au format JSON. Pour chaque appel, une réponse est renvoyée avec l'un des statuts HTTP suivants :  200 : la requête a été exécutée avec succès. Le client doit gérer la charge utile (le payload) de la réponse ;  400 : problème dans la requête ou erreur serveur. La réponse contient un code et un message d'erreur détaillé. Le payload doit être ignoré ;  401 : l’appel est reçu depuis le « S-MDF agent » non autorisé (non enregistré ou avec un token expiré). Le payload JSON renvoyé est toujours composé de :  « objet » : la charge utile à traiter en cas de succès ou à ignorer en cas d’erreur ;  « errorCode » : le code d'erreur en cas d'erreur ; NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 43/123 MINISTERE DES FINANCES Diffusion publique  « message » : message indicatif sur l'erreur en cas d’erreur. 2. Authentification des S-MDF agents : Dans le cas d’un S-MDF de type « Terminal », le S-MDF n’accepte que les appels reçus depuis le même équipement. Aucun appel distant ou émis depuis un autre équipement ne peut faire un appel service web sur le S-MDF. Dans le cas d’un S-MDF de type « Server », plusieurs « S-MDF agents » peuvent se connecter sur le même S- MDF pour les demandes de synchronisation ou de signature électronique. Une requête reçue par un « S-MDF agent » doit se conformer aux règles suivantes pour être acceptée et traitée :  Certificat SSL : L’équipement sur lequel est installé le « S-MDF agent » doit être équipé par un certificat SSL. Seulement, les requêtes en HTTPS sont acceptées.  Enregistrement sur l’espace contribuable : L’équipement sur lequel est installé le « S-MDF agent » doit avoir été enregistré préalablement sur l’espace contribuable et assigné à l’IMDF du S-MDF à utiliser. Aucun appel ne peut être fait depuis un « S-MDF agent » non enregistré.  Enregistrement sur le « S-MDF client » : Le « S-MDF client » n’accepte des appels que depuis les « S- MDF agents » qui ont été enregistrés et authentifiés. Pour chaque nouvel équipement, le contribuable doit déclencher une synchronisation pour enregistrer et authentifier l’équipement sur le S-MDF. En cas d’expiration (absence d’appels pendant une durée déterminée), le S-MDF va exiger une nouvelle synchronisation. 3. Services Web : 3.1. Récupération du manifest : Le Manifest permet au logiciel de caisse d’avoir les informations nécessaires concernant le S-MDF : son état, l’état de la demande de certificat de l’équipement, la version… Le logiciel de caisse est invité à faire cet appel à chaque fois qu’il a besoin d’avoir l’état actuel du S-MDF et de la demande de certificat associé à l’équipement. Service GET /manifest/ Input N/A Output L’objet SMDFManifest Codes d’erreurs - SMDF_URL_NOT_SET (voir Codes - SMDF_NOT_REACHABLE d’erreur) 3.2. Demande de certificat : Cet appel permet de commencer ou de continuer la demande de certificat de l’équipement. Le traitement de cet appel par le S-MDF nécessite la présence du contribuable propriétaire de l’équipement devant le logiciel de caisse. Le contribuable sera invité à : 1. Saisir l'IMDF accordé et le code de pairing qui lui ont été fournis, depuis le logiciel de caisse. 2. Saisir un code à usage unique envoyé par la plateforme NACEF sur le numéro de téléphone du contribuable. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 44/123 MINISTERE DES FINANCES Diffusion publique Service POST /certificate/request/ Input L’objet SICCertificateRequest Output L’objet SMDFManifest mis à jour Codes d’erreurs - SMDF_URL_NOT_SET (voir Codes - SMDF_NOT_REACHABLE d’erreur) - NACEF_NOT_REACHABLE - SMDF_NOT_AUTHORIZED_BY_NACEF - SIC_FAILED_GET_HWD_INFO - SAM_INVALID_OTP - SAM_INVALID_PIN - SAM_NO_PAIRING_CODE - SAM_PAIRING_FAILED En cas d’erreur dans l’une des étapes de la demande de certificat, le Manifest du S-MDF sera mis à jour avec l’état actuel. L’appel suivant permettra de continuer la demande de certificat. 3.3. Synchronisation avec la plateforme NACEF : Cet appel permet d’échanger des informations avec la plateforme NACEF et d’authentifier le contribuable. Il est nécessaire pour faire passer l’état du S-MDF à SYNCHRONIZED permettant alors son utilisation pour la signature électronique des tickets. La demande de synchronisation est nécessaire dans les cas suivants : - Le S-MDF est dans l’état CERT_REQUESTED : cet appel va inviter le contribuable à changer son code PIN avant la première utilisation du S-MDF pour la signature électronique. - Le S-MDF est dans un des états MAINTENANCE, SUSPENDED ou NOT_SYNCHRONIZED : cet appel va inviter le contribuable à s’authentifier en saisissant son code PIN et un code à usage unique reçu par SMS. Cet appel permet également d’activer des options dans l’objet SMDFSyncRequest : - requestPINupdate : demande le changement du code PIN du certificat associé à l’IMDF. Si ce booléien est activé, le « S-MDF agent » affichera la fenêtre de saisie d’authentification et de saisie d’un nouveau code PIN. - updateSMDFURL : demande le changement de l’URL du S-MDF (uniquement dans le cas d’un S-MDF de type Server). Si ce booléien est activé, le « S-MDF agent » demandera la saisie de la nouvelle URL avant de lancer le protocole de synchronisation. La mise à jour de l’URL n’est persistée que si la synchronisation se termine avec succès. Service POST /sync/request/ Input L’objet SMDFSyncRequest Output L’objet SMDFManifest mis à jour Codes d’erreurs - SMDF_URL_NOT_SET (voir Codes - SMDF_NOT_REACHABLE d’erreur) - SMDF_CRYPTO_ERROR - SMDF_CERTFICATE_NOT_GENERATED - SMDF_NOT_AUTHORIZED_BY_NACEF - NACEF_NOT_REACHABLE - SAM_SIC_SYNCHRONIZATION_ERROR - SAM_INVALID_OTP - SAM_INVALID_PIN - SAM_REINIT_PIN_FAILED - SAM_INVALID_PIN_EXCEED_THRESHOLD NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 45/123 MINISTERE DES FINANCES Diffusion publique - SAM_INVALID_OTP_EXCEED_THRESHOLD - SIC_FAILED_SHOW_UI 3.4. Signature électronique : Cet appel permet de déclencher la signature électronique d’un ticket émis par le logiciel de caisse. Cet appel n’est possible que si le S-MDF est dans l’état SYNCHRONIZED. L’input de cet appel est le ticket JSON encodé en base64. En plus de l’encodage du ticket, l’appel prend en entrée, les données suivantes : le total hors taxes, le total des taxes, le type de la transaction et le type du ticket (définis dans le schéma JSON des tickets de caisses). Service POST /signature/request/ Input L’objet SMDFTicketInfo Output L’objet SMDFSignedTicket Codes d’erreurs - SMDF_URL_NOT_SET (voir Codes - SMDF_NOT_REACHABLE d’erreur) - SMDF_NOT_SYNCHRONIZED - SMDF_CRYPTO_ERROR - SMDF_QRCODE_GEN_ERROR - SMDF_NOT_AUTHORIZED_BY_NACEF - SAM_INVALID_SAD - NACEF_NOT_REACHABLE - SCEF_CADES_INIT_ERROR - SCEF_FAILED_OBTAIN_IMDF_CERTIFICATE - SCEF_CRYPTO_ERROR - SAM_INVALID_SAD_EXCEED_THRESHOLD 3.5. Enregistrement d’une trace de log du logiciel de caisse : Le logiciel de caisse est tenu d’utiliser ce service web pour enregistrer les traces de toutes les opérations. Service POST /log/ Input L’objet SICLogEntry Output String indiquant la réussite de l’enregistrement. Codes d’erreurs N/A (voir Codes d’erreur) 4. Objets de l’API : Ci-, la liste des objets JSON utilisé par l’API. Les schémas des objets sont détaillés dans la documentation web fournie avec ce document. 4.1. SMDFManifest Champ Type Description imdf String L’IMDF associé à l’équipement (S-MDF). status String L’état du S-MDF. Une des valeurs dans États possibles pour un S-MDF. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 46/123 MINISTERE DES FINANCES Diffusion publique Champ Type Description version String La version du S-MDF. type String Le type du S-MDF. Une des deux valeurs suivantes : - TERMINAL - SERVER certificateInfo SMDFCertificateInfo (JSON) Objet JSON maintenanceEnabled Boolean Si true, cet équipement a été mis en maintenance depuis NACEF. Il ne peut plus être utilisé par le logiciel de caisse. state String Une des deux valeurs suivantes :  Online : le SMDF est connecté à NACEF.  Offline : le SMDF n’est pas connecté à NACEF. ticketZeroQRCode Byte[] L’encodage du QRCode rapport émis par le SMDF. Lors de la première synchronisation, ce champ contient l’encodage du premier rapport (ticket 0). synchronizationRate int Le taux d’avancement (un pourcentage) de la synchronisation entre le S-MDF et NACEF. versionInfo SMDFVersionsInfo Informations sur les versions S-MDF et les agents attachés. availableOfflineTickets int Nombre de tickets que ce SMDF peut signer s’il est utilisé « offline ». 4.2. SMDFCertificateInfo Champ Type Description certRequestStatus String L’état de la demande de certificat. L’une des valeurs dans États possibles pour une demande de certificat issuanceDate Date Date d’émission du certificat. Contient une valeur seulement si l’état de la demande de certificat est CERTIFICATE_GENERATED. expirationDate Date Date d’expiration du certificat. Date d’émission du certificat. Contient une valeur seulement si l’état de la demande de certificat est CERTIFICATE_GENERATED. expired Boolean Indication si le certificat associé à cet IMDF a expiré. revoked Boolean Indication si le certificat associé à cet IMDF a été révoqué. 4.3. SICCertificateRequest Champ Type Description cashRegisterInfo SICCashRegisterInfo (JSON) Des informations associées au logiciel de caisse. 4.4. SICCashRegisterInfo Champ Type Description model String Modèle du logiciel de caisse. serialNumber String Numéro de série de l’équipement. version String Version du logiciel de caisse. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 47/123 MINISTERE DES FINANCES Diffusion publique 4.5. SMDFTicketInfo Champ Type Description base64Ticket String L’encodage en Base64 du ticket à signer. totalHT long Le total hors taxe du ticket. totalTax long Le total taxes du ticket. operationType String Le type de ticket transactionType String Le type de la transaction 4.6. SMDFSignedTicket Champ Type Description ticketIdentifier String L’identifiant unique associé au ticket par la plateforme NACEF. qrcodeImage Byte[] Le QR-Code à imprimer sur le ticket. 4.7. SMDFSyncRequest Champ Type Description requestPINupdate boolean Si true, le contribuable sera invité à changer son code PIN lors de cette synchronisation. updateSMDFURL boolean Si true, le SIC demandera la saisie de l’URL du serveur SMDF avant de commencer la synchronisation. 4.8. SICLogEntry Champ Type Description module Un identifiant de module L’identifiant du module du logiciel de caisse origine de la trace à enregistrer. operation Un identifiant d’opération L’identifiant désignant l’opération en question. level Niveau de la trace Indication du niveau de la trace (information ou erreur). Les deux niveaux supportés sont : « INFO » et « ERROR ». message Texte contenant les données associées à la trace à enregistrer. Le message contient le résultat de l’exécution de l’opération, les données qui permettent d’identifier l’opération, ainsi que les données paramètres utilisées lors de l’exécution de l’opération (données complémentaires). Pour les opérations de modification les données complémentaires doivent comporter la liste des données initiales ainsi que les données de modification. 4.9. SMDFVersionsInfo Champ Type Description smdf EquipmentVersionsInfo Les informations de version pour le SMDF. agents Map attachés. Chaque agent est identifié dans la map par son adresse MAC qui a été utilisé pour se connecter. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 48/123 MINISTERE DES FINANCES Diffusion publique 4.10. EquipementVersionsInfo Champ Type Description Os String Le nom de l’OS. Une des valeurs suivantes : « Windows », « Linux », « Mac », « Android » et « IOs ». current String La version actuelle. Last String La dernière version publiée. Minimal String La version minimale supportée. 5. Codes d’erreurs : Libelle erreur Code Signification Traitement par le erreur logiciel de caisse SMDF_INIT_FAILED_NOT_FAC 500 Le SMDF n’est pas dans l’état Problème d'installation TORY FACTORY, la demande / configuration. Si le d’initialisation ne peut pas être problème persiste, il effectuée. faut indiquer au contribuable de contacter le fournisseur. SMDF_IMDF_NOT_FOUND 501 L’IMDF communiqué au SMDF n’a Une erreur à la saisie de pas été trouvé. l’IMDF. Si le problème persiste, il faut indiquer au contribuable de contacter le fournisseur. SMDF_NOT_REACHABLE 503 Le S-MDF est de type « Server » et il Problème d'installation n'est pas joignable (problème / configuration ou un réseaux) problème de connectivité. Indiquer au contribuable qu'il doit vérifier la configuration réseaux de son équipement. Si le problème persiste, il faut indiquer au contribuable de contacter le fournisseur. AGENT_FAILED_GET_HWD_IN 504 Le « S-MDF agent » installé sur cette Problème d'installation FO caisse a échoué pour obtenir des / configuration. Si le informations sur le matériel sur problème persiste, il lequel il est installé (problème de faut indiquer au droits). contribuable de contacter le fournisseur. SMDF_STORAGE_FAILURE 505 Un problème lors de la tentative de Réessayer l'appel. Si le chargement du stockage SMDF ou problème persiste, il de sa mise à jour. Probablement faut indiquer au causé par un manque de permission contribuable de (problème d'installation). contacter le fournisseur. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 49/123 MINISTERE DES FINANCES Diffusion publique Libelle erreur Code Signification Traitement par le erreur logiciel de caisse SMDF_IMDF_CAN_NOT_BE_U 506 L’état actuel du SMDF ne permet Vérifier l’état du SMDF SED pas son utilisation. retourné dans le Manifest (suspension ? maintenance ?) et afficher le message correspondant à l’utilisateur. SMDF_IMDF_NOT_SERVER 507 Cet SMDF est de type « Terminal », il ne doit pas être utilisé comme serveur. SEC_AGENT_SYNCHRONIZATI 508 Une erreur s'est produite lors de Réessayer l'appel de ON_ERROR l'exécution du protocole de synchronization. Si le synchronisation du S-MDF avec la problème persiste, il plateforme NACEF. L'erreur peut faut indiquer au être causée par une interruption contribuable de réseau ou une indisponibilité coté contacter le plateforme NACEF. fournisseur. SMDF_NOT_SYNCHRONIZED 509 Le SMDF n'est plus synchronisé avec Faire l'appel pour la NACEF. Il n'est plus possible de demande de signer les tickets. synchronization. SMDF_CRYPTO_ERROR 510 Une erreur s'est produite lors d'un Réessayer l'appel. Si le échange avec la plateforme NACEF. problème persiste, il L'erreur peut être causée par une faut indiquer au mauvaise configuration dans contribuable de l'environnement local. contacter le fournisseur. SMDF_QRCODE_GEN_ERROR 511 Une erreur s'est produite lors de la Mauvaise intégration. Si génération du QR-Code d'un ticket le problème persiste, il signé. faut indiquer au contribuable de contacter le fournisseur. NACEF_NOT_REACHABLE 512 La connexion à la plateforme NACEF Problème d'installation a échoué. / configuration ou un problème de connectivité. Indiquer au contribuable qu'il doit vérifier la configuration réseaux de son équipement. Si le problème persiste, il faut indiquer au contribuable de contacter le fournisseur. SMDF_CERTFICATE_NOT_GEN 513 Le certificat associé à ce S-MDF n'a Attendre la génération ERATED pas été encore généré. La demande du certificat. Le dernier de synchronisation/signature ne statut peut être peut pas être effectuée. récupéré par l'appel GET smdf/manifest/ NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 50/123 MINISTERE DES FINANCES Diffusion publique Libelle erreur Code Signification Traitement par le erreur logiciel de caisse AGENT_FAILED_SHOW_UI 514 Le composant « S-MDF agent » n'a Problème d'installation pas pu faire afficher la fenêtre de / configuration. Si le saisie de données pour le problème persiste, il contribuable. faut indiquer au contribuable de contacter le fournisseur. SEC_SAP_PROTOCOL_ERROR 515 Une erreur s’est produite au niveau Problème d'installation de l’algorithme de chiffrement. / configuration. Si le problème persiste, il faut indiquer au contribuable de contacter le fournisseur. SMDF_OFFLINE_SIGN_ERROR 516 Une erreur s’est produite lors de la Le S-MDF ne peut plus signature en offline. être utilisé en offline. Il faut indiquer au contribuable de vérifier sa connexion et de faire une synchronisation. SMDF_LOCKED_CERT_SYNC_R 517 Le logiciel de caisse a demandé le Finaliser la demande de EQUEST lancement d’une demande de certificat (ou de certificat (ou de synchronisation) synchronisation) depuis alors qu’une demande de certificat l’équipement qui l’a (ou de synchronisation) a été initiée. Si un problème demandée depuis un autre terminal est survenu sur cet avec le « S-MDF agent » installé. équipement, attendre l’expiration du délai de verrouillage (10 minutes) avant de refaire l’appel. SMDF_EXPIRED_CERTIFICATE 518 Le certificat de signature associé à Indiquer au ce S-MDF a expiré. Le S-MDF ne contribuable qu’il doit permet plus les appels de signature refaire une nouvelle électronique. demande de certificat. SMDF_REVOKED_CERTIFICATE 519 Le certificat de signature associé à Indiquer au ce S-MDF a été révoqué. Le S-MDF contribuable qu’il doit ne permet plus les appels de refaire une nouvelle signature électronique. demande de certificat. SMDF_CONNECTION_REFUSE 520 Une erreur de connexion s’est Problème de D produite lors d’un échange avec la disponibilité du service plateforme NACEF. NACEF. Si le problème persiste, il faut indiquer au contribuable de contacter le fournisseur. AGENT_INVALID_SMDF_URL_ 521 L’URL du SMDF entré par le Afficher un message au SYNTAX contribuable au niveau de l’agent contribuable l’invitant est invalide (problème de syntaxe). de vérifier l’URL entrée. Cette erreur peut survenir si le logiciel de caisse demande le changement de l’URL du SMDF à travers l’appel de synchronisation. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 51/123 MINISTERE DES FINANCES Diffusion publique Libelle erreur Code Signification Traitement par le erreur logiciel de caisse SMDF_SERVER_ERROR 522 Une erreur (non identifiée) s’est Problème d'installation produite au niveau du SMDF du / configuration. Si le contribuable. problème persiste, il faut indiquer au contribuable de contacter le fournisseur. SMDF_ALREADY_HAS_CE 523 Le logiciel de caisse a initié une Afficher un message RTIFICATE demande de certificat sur un au contribuable qu’il SMDF qui est déjà attaché à un ne peut pas initier une certificat valide. demande de certificat sur ce SMDF. SMDF_AUDIT_IO_ERROR 549 L’exécution de la procédure d’audit Afficher un message a rencontré un problème d’écriture explicite sur l’écran avec / lecture. le code d’erreur pour l’auditeur. SMDF_AUDIT_MISSING_FILE 550 L’exécution de la procédure d’audit Afficher un message a échoué à cause d’un fichier explicite sur l’écran avec manquant sur le disque amovible. le code d’erreur pour l’auditeur. SMDF_AUDIT_CRYPTO_ERRO 551 L’exécution de la procédure d’audit Afficher un message R a échoué à cause d’une erreur explicite sur l’écran avec interne. le code d’erreur pour l’auditeur. SMDF_AUDIT_DEVICE_NOT_I 552 Cet équipement n’est pas inclus Afficher un message NCLUDED dans le périmètre d’audit de l’ordre explicite sur l’écran avec de mission. le code d’erreur pour l’auditeur. SMDF_AUDIT_OUT_OF_RANG 553 L’ordre de mission a expiré. Afficher un message E explicite sur l’écran avec le code d’erreur pour l’auditeur. SMDF_AUDIT_FAILED_TO_WR 554 L’écriture du rapport d’audit a Afficher un message ITE_REPORT échoué. explicite sur l’écran avec le code d’erreur pour l’auditeur. SEC_NO_PAIRING_CODE 103 Le S-MDF tente de continuer une Demander au demande de certificat qui n’a pas contribuable de été initialisée depuis l’espace s’assurer qu’il a fait la contribuable, ou l’IMDF saisi ne demande de certificat correspond pas à l’équipement en depuis son espace question. contribuable. Sinon, il faut que le contribuable se connecte et refait la demande de certificat depuis son espace contribuable. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 52/123 MINISTERE DES FINANCES Diffusion publique Libelle erreur Code Signification Traitement par le erreur logiciel de caisse SEC_PAIRING_FAILED 104 Le S-MDF tente de continuer une Demander au demande de certificat avec un code contribuable de vérifier ou des données de pairing invalides. le code de pairing affiché sur son espace contribuable. Réessayer l’appel. Si le problème persiste, il faut indiquer au contribuable de contacter le fournisseur. SEC_INVALID_OTP 105 Le S-MDF a envoyé un code à usage Réessayer l'appel. Si unique (OTP) invalide pour l'échec persiste, le S- l'activation de sa signature MDF va retourner le électronique. code « 115 ». SEC_INVALID_DATA 109 Le S-MDF a envoyé un chiffrement Réessayer l'appel de invalide pour l'activation de sa signature électronique. signature électronique. Si l'échec persiste, le S- MDF va retourner le code « 116 ». SEC_REINIT_PIN_FAILED 114 Une erreur s'est produite lors du Réessayer l'appel. Si le changement du code PIN. problème persiste, il faut indiquer au contribuable de contacter le fournisseur. SEC_INVALID_OTP_EXCEED_T 115 Le contribuable a saisi plusieurs fois Si c'est une demande de HRESHOLD successives un code à usage unique certificat, il faut (OTP) invalide. indiquer au contribuable qu'il doit se connecter sur son espace contribuable pour refaire la demande de certificat. Si c'est une demande de synchronisation, il faut relancer la demande de synchronisation. SEC_INVALID_SAD_EXCEED_T 116 Le S-MDF a envoyé plusieurs fois Le logiciel de caisse doit HRESHOLD successives un chiffrement invalide faire l'appel de lors de la demande de signature synchronisation. électronique. Le S-MDF va passer à l'état NOT_SYNCHRONIZED. SCEF_CRYPTO_ERROR 600 Une erreur s'est produite lors de la Réessayer l'appel. Si le signature électronique (accès à la problème persiste, il clé de signature). faut indiquer au contribuable de contacter le fournisseur. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 53/123 MINISTERE DES FINANCES Diffusion publique Libelle erreur Code Signification Traitement par le erreur logiciel de caisse SCEF_CADES_INIT_ERROR 613 Une erreur s'est produite lors de la Réessayer l'appel. Si le signature électronique d'un ticket problème persiste, il ou son traitement par la plateforme faut indiquer au NACEF. contribuable de contacter le fournisseur. SCEF_FAILED_OBTAIN_IMDF_ 614 Une erreur s'est produite lors de Réessayer l'appel. Si le CERTIFICATE l'obtention et la validation du problème persiste, il certificat de l'équipement. faut indiquer au contribuable de contacter le fournisseur. III.INSTALLATION : Le S-MDF est une « Blackbox » logiciel dont l'objectif est de sécuriser les échanges entre le logiciel de caisse et le système NACEF. Le S-MDF surveille en permanence l'intégrité et l'authenticité des données envoyées à la plateforme NACEF. Les fournisseurs de logiciels de caisse doivent intégrer le S-MDF dans leurs logiciels de caisse à homologuer pour s’interfacer avec la plateforme NACEF. Le S-MDF permet l'interfaçage avec les logiciels de caisses sur les environnements cibles suivants : - Windows (Desktop / Serveur) - Mac OS (Desktop / Serveur) - Linux (Desktop / Serveur) - Android - iOS L’environnement cible doit assurer les prérequis détaillés ci-dessous. 1. Composants logiciels Lors de l'installation d'un logiciel de caisse avec S-MDF, le fournisseur de caisse est amené à installer les deux composants suivants (voir Types de S-MDF) : - « S-MDF Client » : une seule installation par contribuable / IMDF. - « S-MDF Agent » : une installation par « terminal » / « client » que le contribuable va utiliser pour émettre des tickets. 2. Prérequis Les binaires du « S-MDF Client » et du « S-MDF Agent » doivent être installés sur des environnements compatibles avec les prérequis ci-dessous. a) S-MDF Client NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 54/123 MINISTERE DES FINANCES Diffusion publique Exigences techniques Environnements qui peuvent garantir ces exigences  Accès à l'espace de stockage et de log du  Desktop : Windows, Mac OS, Linux logiciel de caisse  Serveur : Windows, Mac OS, Linux  Lancement du « S-MDF Client » en tant que service système actif pendant toute utilisation du logiciel de caisse  Installation avec un utilisateur ayant les droits d'administration pour garantir l'accès aux fichiers systèmes de l'OS  L'équipement doit être sous le contrôle exclusif du contribuable b) S-MDF Agent Exigences techniques Environnements qui peuvent garantir ces exigences  Environnement avec support pour l'affichage  Desktop : Windows, Mac OS, Linux graphique  Mobile : Android, iOS  L'équipement doit être sous le contrôle exclusif du contribuable 3. Types de S-MDF Le S-MDF est fourni en deux versions : - Version « terminal » : le « S-MDF Client » et le « S-MDF Agent » doivent être installés sur le même équipement hébergeant le logiciel de caisse. Ces deux composants sont fournis sous la formes d’un seul module à installer. Dans ce cas, il n’est pas possible de faire les demandes de signature depuis un autre équipement. - Version « Server » : le « S-MDF Client » peut être installé sur un serveur pour être utilisé par plusieurs « S-MDF Agents » installés sur plusieurs équipements (caisses). Dans ce cas, il est possible de faire les demandes de signature depuis tout équipement enregistré disposant d’un « S-MDF agent ». 4. Les installeurs : a) S-MDF Client : Le « S-MDF Client » est fourni dans le format d’un installeur (Windows) ou un script d’installation (Linux / Mac OS). Le fournisseur doit installer le « S-MDF Client » dans le même environnement que l’équipement. L’installation du « S-MDF Client » ne nécessite aucune configuration ou paramétrage manuel de la part du fournisseur. Au premier démarrage le « S-MDF Client » initialisera l’environnement de l’installation en créant les dossiers nécessaires et les entrées dans le registry. Le chemin d’installation par défaut du « S-MDF Client » peut être modifié à l’installation (voir ci-dessous). En revanche, il est important de noter qu’après l’installation, il n’est plus possible de déplacer ce dossier. Son déplacement causera l’envoie d’alertes à la plateforme NACEF et un potentiel arrêt de fonctionnement. Les installeurs gèrent également la désinstallation et les mises à jour. Le fournisseur doit utiliser l’installeur approprié selon l’environnement d’installation du logiciel de caisse. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 55/123 MINISTERE DES FINANCES Diffusion publique Figure 3 : Installeur du S-MDF Client (1) (Windows) Figure 4 : Installeur du S-MDF Client (2) (Windows) Figure 16 : Installeur S-MDF Client (package manager Mac OS) NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 56/123 MINISTERE DES FINANCES Diffusion publique b) S-MDF Agent : Les versions Windows, Mac OS et Linux du « S-MDF Agent » sont également fournies sous la forme d’installeurs. L’installation ne nécessite aucune configuration ou paramétrage manuel du fournisseur. Au premier démarrage le « S-MDF Agent » initialisera l’environnement de l’installation. Le chemin d’installation par défaut du « S-MDF Agent » peut être modifié à l’installation (voir ci-dessous). En revanche, il est important de noter qu’après l’installation, il n’est plus possible de déplacer ce dossier. Son déplacement causera l’envoie d’alertes à la plateforme NACEF et un potentiel arrêt de fonctionnement. Les installeurs gèrent également la désinstallation et les mises à jour. Le fournisseur doit utiliser l’installeur approprié selon l’environnement d’installation du logiciel de caisse. Figure 5 : Installeur du S-MDF Agent (Windows) Figure 6 : Installeur du S-MDF Agent (Windows) Pour les environnements Android et iOS, le « S-MDF Agent » est une application que le fournisseur doit installer sur l’équipement. L’application doit être téléchargée depuis le store officiel de chaque OS. 5. La version « Server » du S-MDF : Avec cette version le S-MDF peut être utilisé depuis un réseau d’équipements. Pour chaque équipement, il faut installer le composant « S-MDF Agent ». NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 57/123 MINISTERE DES FINANCES Diffusion publique 5.1. Prérequis supplémentaires L’ensemble des équipements doivent appartenir au même réseau que le « S-MDF Client ». Chaque équipement doit être équipé par un certificat SSL. 5.2. Configuration client/serveur Au lancement de chaque « S-MDF Agent », un popup est affiché pour la saisie de l’URL du serveur « S-MDF Client ». Il est important de noter que ce popup de saisie n’est affiché qu’au premier lancement du « S-MDF agent ». Pour changer cette URL ultérieurement, il faut utiliser l’option correspondante dans l’appel de synchronisation (voir Synchronisation avec NACEF). L’appel de synchronisation pour le changement doit être fait depuis chaque équipement avec un « S-MDF agent ». Figure 7 : Saisie de l'URL du « S-MDF Client » au lancement du « S-MDF Agent » (Desktop) NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 58/123 MINISTERE DES FINANCES Diffusion publique Figure 8 : Saisie de l'URL du « S-MDF Client » au lancement du « S-MDF Agent » (Android) 5.3. Déclaration des « S-MDF Agents » Pour connecter un nouvel S-MDF Agent, il faut exécuter les étapes suivantes : 1. Le S-MDF Agent doit être, préalablement, déclaré au niveau l’espace contribuable (plateforme NACEF) pour être attaché au « S-MDF Client ». La déclaration se fait avec l’adresse MAC de l’équipement hébergeant le S-MDF Agent. 2. Une demande de synchronisation doit être lancée depuis le logiciel de caisse sur l’équipement hébergeant le S-MDF Agent concerné. Note : Si l’équipement hébergeant le « S-MDF Agent » dispose de plusieurs cartes réseaux, il faut déclarer la carte qui est activée et configurée pour la communication avec le « S-MDF Client ». Dans le cas d’un changement de carte réseaux, les 2 étapes précédentes doivent être reconduites en utilisant la nouvelle adresse MAC. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 59/123 MINISTERE DES FINANCES Diffusion publique Figure 9 : Saisie de l'URL du « S-MDF Client » au lancement du « S-MDF Agent » (Android) NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 60/123 MINISTERE DES FINANCES Diffusion publique PARTIE 4 : LES SPECIFICATIONS TECHNIQUES DU E-MDF NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 61/123 MINISTERE DES FINANCES Diffusion publique Dans cette partie seront décrites les exigences techniques à laquelle doit se conformer un fournisseur d’équipements E-MDF. I. DESCRIPTION GENERALE DE LA TOE : Le rôle principal de l’E-MDF est d’assurer la signature électronique des tickets au niveau de la caisse et de communiquer les informations à la plateforme NACEF de façon sécurisée. 1. Composants : Figure 1 : Architecture du système de caisses enregistreuses fiscales (SCEF) Les composants formant cette architecture : a) PGSCEF (Plateforme de Gestion des Systèmes de Caisses Enregistreuses Fiscales) : plateforme centrale distante à laquelle l’E-MDF doit envoyer les données fiscales récupérées de la caisse. b) E-MDF : module matériel et logiciel qui implémente l’ensemble des fonctions nécessaires pour assurer le rôle d’un Module de Données Fiscales (MDF). c) Support de clé cryptographique : module matériel utilisé comme support de stockage de la clé privée du contribuable associé à sa caisse enregistreuse. d) Caisse Enregistreuse : module matériel et logiciel utilisé par le contribuable pour la gestion de sa caisse. Les canaux d’échanges : Canal Objet Types autorisés PGSCEF_E-MDF Canal pour l’échange de données fiscales et de  Réseau sécurité entre la plateforme centrale NACEF et l’E- MDF. Ce canal doit être assuré à travers un réseau fiable (voir Exigences matérielles). E-MDF_CE Canal pour l’échange de données fiscales entre l’E-  Interne (même MDF et le logiciel de caisse dans la Caisse équipement) Enregistreuse.  Réseau local  USB E-MDF_Token Canal pour l’utilisation de la clé de signature du  Interne (même contribuable gérée par le support de clé équipement) cryptographique. Le token peut être un périphérique  USB externe ou interne. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 62/123 MINISTERE DES FINANCES Diffusion publique 2. Cible d’évaluation (TOE – Target of Evaluation) : La cible d’évaluation est la combinaison des composants E-MDF et le support de clé cryptographique. Figure 2 : Désignation de la TOE Les exigences matérielles (Exigences matérielles) et les exigences de sécurités (Exigences de sécurité) définies dans ce document s’appliquent aux composants de la TOE ainsi que les canaux d’échanges de données entre la TOE et les autres composants. 3. Composants logiques : [H0101] La TOE doit implémenter au moins les modules fonctionnels suivants : 1. Signature électronique : module de signature électronique supportant au moins le format et les algorithmes exigés dans ce document et homologué par l’ANCE. 2. Stockage sécurisé : module de gestion de stockage de données chiffrés supportant au moins les algorithmes de chiffrements exigés dans ce document. 3. Synchronisation avec la PGSCEF : module métier implémentant la logique de synchronisation et échanges de données avec la plateforme NACEF. 4. Génération d’un rapport d’audit : module métier pour la génération et le chiffrement d’un rapport d’audit. Figure 3 : Les principales fonctionnalités que doit assurer la TOE NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 63/123 MINISTERE DES FINANCES Diffusion publique 3.1. Principes de fonctionnement [H0102] La fonctionnalité principale de la TOE est d’offrir le service de signature électronique des tickets émis par la Caisse Enregistreuse (CE). Chaque ticket émis par la CE est associé à un identifiant unique émis par la plateforme NACEF. La TOE doit assurer cette fonctionnalité en 2 modes : 1. Mode online : la plateforme NACEF est joignable depuis l’E-MDF. Dans ce cas, l’E-MDF doit 1) récupérer un nouvel identifiant unique et 2) remettre le ticket signé immédiatement à la plateforme centrale NACEF. 2. Mode offline : la plateforme NACEF n’est pas joignable. Cela peut être due à un problème temporaire au niveau de la connectivité de l’E-MDF. Dans ce cas, l’E-MDF doit utiliser un identifiant unique préalablement obtenu. C’est l’objectif du service de synchronisation avec la plateforme NACEF. L’objet de la synchronisation est de transmettre à la plateforme NACEF les données traitées pendant la phase « offline » et récupérer un nouveau lot d’identifiants uniques. Lors de chaque appel de synchronisation, l’E- MDF obtient un nouveau lot d’identifiants uniques qui peuvent être utilisés en mode offline. [H0103] Avant de commencer à utiliser l’E-MDF pour la signature électronique, il doit faire la première demande de synchronisation. Lors de cet appel, l’E-MDF récupèrera le premier lot d’identifiants et doit retourner le « Ticket 0 » comme preuve que l’état du E-MDF et son statut au niveau de la plateforme NACEF permet de commencer la signature électronique. 3.2. Description fonctionnelle a) Signature électronique [H0104] Signature électronique en mode online La TOE doit implémenter une procédure fonctionnellement équivalente aux étapes suivantes : i. Récupération du ticket à signer par la Caisse Enregistreuse ii. Appel d’un service web sur la plateforme NACEF pour l’envoie du ticket et la récupération d’un identifiant unique pour le ticket à signer iii. Génération d’une signature cryptographique avec la clé de signature du contribuable iv. Transmission de la signature électronique à la plateforme NACEF v. Génération du QR-Code du ticket signé (type Online) et retour à la Caisse Enregistreuse. [H0105] Signature électronique en mode offline La TOE doit implémenter une procédure fonctionnellement équivalente aux étapes suivantes : i. Récupération du ticket à signer par la Caisse Enregistreuse ii. Vérification de la possibilité de la signature électronique en mode offline : la disponibilité d’un identifiant unique dans le dernier lot récupéré iii. Génération d’une signature cryptographique avec la clé de signature du contribuable iv. Chiffrement et enregistrement du ticket signé au niveau du E-MDF v. Génération du QR-Code du ticket signé (type Offline) et retour à la Caisse Enregistreuse. b) Synchronisation avec la plateforme NACEF après utilisation en mode « Offline » [H01006] La TOE doit implémenter une procédure fonctionnellement équivalente aux étapes suivantes : i. Authentification forte du contribuable pour demande de synchronisation ii. Envoie à la plateforme NACEF les données de synchronisation demandée ainsi que tout enregistrement effectué en offline iii. Enregistrement des données reçues. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 64/123 MINISTERE DES FINANCES Diffusion publique c) Audit [H0107] La TOE doit implémenter une procédure fonctionnellement équivalente aux étapes suivantes : i. Détection d’une demande d’audit par la lecture d’un fichier de demande d’audit sur un support amovible branché sur un connecteur USB sur la TOE ii. Vérification de la signature électronique du fichier de demande d’audit iii. Affichage d’une interface pour la saisie du code de déchiffrement pour l’auditeur iv. Déchiffrement du fichier de demande d’audit v. Vérification de la syntaxe du fichier de demande d’audit vi. Exécution de la procédure d’audit selon les paramètres de la demande d’audit vii. Génération du rapport d’audit au format JSON exigé viii. Chiffrement du rapport d’audit ix. Enregistrement du rapport d’audit chiffré sur le support amovible. Les schémas JSON du fichier de demande d’audit et du fichier du rapport d’audit seront fournis en complément au fournisseur E-MDF. Les algorithmes de signature électronique et de chiffrement sont donnés dans l’Annexe B. d) Stockage sécurisé [H0108] La TOE doit incorporer : - Un support de stockage local des données. - Un mécanisme de chiffrement des données stockés. - Un mécanisme de vérification de l’intégrité des données stockées. II. EXIGENCES DU PROFIL DE PROTECTION : Cette section liste les exigences du Profil de Protection (PP) de la TOE. 1. Exigences de sécurité : 1.1. Confidentialité des données a) [H0201] Chiffrement des données en transit Objectif : Protéger les données pendant leur transmission : 1. Entre la caisse et le E-MDF 2. Entre le E-MDF et la plateforme NACEF Exigences : 1. Les données en transit entre la CE et le E-MDF doivent être chiffrés avec un protocole de chiffrement assurant un niveau de sécurité équivalent à TLS 1.3. 2. Le E-MDF doit supporter TLS 1.3 pour toutes les communications avec la plateforme NACEF. b) [H02002] Chiffrement des données stockées Objectif : Protéger les données stockées sur l’espace de stockage de l’E-MDF. Exigences : 1. Toutes les données (fichiers, logs, bases de données...) stockées par le E-MDF doivent être chiffrés par un algorithme de chiffrement symétrique ou asymétrique. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 65/123 MINISTERE DES FINANCES Diffusion publique 1.2. Intégrité des données a) [H0203] Mécanisme de vérification de l’intégrité des données Objectif : Assurer l'intégrité des données stockées et transmises. Exigences : 1. Le E-MDF doit implémenter un mécanisme qui permet de détecter toute altération sur les données stockées localement ou en transit vers la caisse ou vers la plateforme NACEF. 2. Le mécanisme de détection doit envoyer toute détection d’altération à la plateforme NACEF dès la première connexion suivant la détection. 3. Le mécanisme de détection doit sauvegarder localement de façon sécurisée toute détection d’altération en attente de la première connexion à la plateforme NACEF ou le déclenchement d’un audit. b) [H0204] Mécanisme de vérification de l’intégrité des paramètres Objectif : Assurer l'intégrité des données paramètres de fonctionnement de l’E-MDF. Exigences : 1. L’E-MDF doit implémenter un mécanisme sécurisé et fiable pour le stockage de ses paramètres 2. L’E-MDF doit interdire toute modification de ces paramètres sauf suite à une intervention de mise à jour ou intervention tracée du fournisseur E-MDF 3. L’E-MDF doit détecter toute modification non autorisée sur ces paramètres 4. Les paramètres doivent être chiffrés. c) [H0205] Journalisation des modifications Objectif : Enregistrer et garder trace de toutes les modifications apportées aux données stockées localement. Exigences : 1. Le E-MDF doit journaliser toutes les modifications apportées aux données stockées localement. 1.3. Gestion des clés a) [H0206] Clé de signature électronique Objectif : Garantir la sécurité de la clé de signature électronique du contribuable. Exigences : 1. La clé de signature du contribuable doit être stockée sur un module matériel certifié FIPS- 140 Level 3. b) [H0207] Clé de session Objectif : Garantir la sécurité de toutes les clés de chiffrement ou de signature utilisés par l’E-MDF. Exigences : 1. L’E-MDF doit implémenter un mécanisme de rotation régulière de toutes les clés logicielles. 2. L’E-MDF doit maintenir et fournir un registre détaillé des clés de session utilisées en spécifiant pour chaque clé : son type, sa taille, son usage et la politique de sécurité associée. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 66/123 MINISTERE DES FINANCES Diffusion publique 1.4. Protection contre les menaces externes a) [H0208] Pare-feu Objectif : Contrôler et surveiller le trafic réseau entrant et sortant. Exigences : 1. Mise en œuvre d’une politique de sécurité restrictive avec la liste explicite des flux et ports ouverts. 2. Configuration d'un pare-feu pour filtrer le trafic non autorisé. b) [H0209] Connectivité internet Objectif : Contrôler et surveiller le trafic Internet. Exigences : 1. Si le E-MDF utilise un réseau Wifi pour la connectivité Internet, le E-MDF doit utiliser un protocole au moins aussi sécurisé que le protocole WPA3. 2. Si le canal E-MDF_CE est basé sur une connectivité réseaux, l’E-MDF ne doit permettre qu’une connectivité à travers un réseaux local privé (une IP privée). 1.5. Surveillance et audit a) [H0201] Enregistrement des événements Objectif : Enregistrer les événements de sécurité pertinents. Exigences : 1. L’E-MDF doit implémenter un système de journalisation robuste pour capturer les événements. 2. L’E-MDF doit tracer chaque communication entre la CE et le E-MDF avec date, objet et résultat. 3. L’E-MDF doit tracer chaque communication avec la plateforme NACEF avec date, objet et résultat. b) [H0202] Analyse des journaux Objectif : Analyser régulièrement les journaux pour détecter les anomalies. Exigences : 1. L’E-MDF doit définir et implémenter des procédures régulières d'analyse des journaux de sécurité. 1.6. Gestion des vulnérabilités a) [H0203] Analyse de vulnérabilités Objectif : Le fournisseur de l’E-MDF doit disposer d’une politique pour l’identification et l’évaluation des vulnérabilités potentielles liés à l’E-MDF. Exigences : 1. Réalisation régulière d'analyses de vulnérabilités par des outils spécialisés. 2. Documentation des résultats de l'analyse de vulnérabilités. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 67/123 MINISTERE DES FINANCES Diffusion publique 3. Mise en place d'un processus de gestion des correctifs pour remédier aux vulnérabilités dans les délais spécifiés. 4. Priorisation des correctifs en fonction de leur criticité. 5. Élaboration d'un plan d'urgence détaillé pour répondre rapidement aux vulnérabilités critiques. 1.7. Gestion des mises à jour a) [H0204] Politique de mise à jour Objectif : Établir une politique formelle pour la gestion des mises à jour. Exigences : 1. Définition d'une politique de mises à jour claire et documentée, spécifiant la fréquence et la procédure à suivre. 2. Réalisation de tests préalables aux mises à jour pour évaluer leur impact sur le E-MDF. 3. Documentation des résultats des tests et validation avant le déploiement. b) [H0205] Mécanismes de Rollback Objectif : Disposer de mécanismes de rétablissement en cas de problèmes liés à une mise à jour. Exigences : 1. Mise en place d'une surveillance post-mise à jour pour détecter les anomalies de performance ou de sécurité. 2. Mise en place de mécanismes de Rollback permettant de revenir à une version antérieure en cas de problème majeur post-mise à jour. 1.8. Contrôle d’accès a) [H0206] Authentification Objectif : Assurer l'identification fiable des utilisateurs du E-MDF. Exigences : 1. Mise en place d'une politique de gestion d’accès à l’E-MDF 2. Utilisation de méthodes d'authentification robustes basés sur une politique de gestion des facteurs d’authentification. 3. Utilisation de comptes nominatifs identifiés. b) [H0207] Autorisations Objectif : Définir et mettre en œuvre des politiques d'autorisation granulaires. Exigences : 1. Attribution de privilèges d'accès en fonction des rôles et responsabilités dans la politique de gestion des accès. 2. Restriction d'accès en fonction du principe du moindre privilège. 3. Protection les sessions utilisateur contre les attaques et les accès non autorisés. 1.9. Algorithmes cryptographiques a) [H0208] Chiffrement symétrique NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 68/123 MINISTERE DES FINANCES Diffusion publique Objectif : Utiliser un algorithme de chiffrement symétrique recommandé et reconnu robuste par la réglementation en vigueur (voir les recommandations en annexe). Exigences : 1. L’E-MDF doit utiliser un algorithme de chiffrement symétrique tel que l'AES avec une implémentation conforme aux normes de sécurité actuelles. 2. L’E-MDF doit utiliser un algorithme et une taille de clé reconnus robustes jusqu’au moins 5 années après la mise en production planifiée de l’E-MDF. b) [H0209] Chiffrement asymétrique Objectif : Utiliser un algorithme de chiffrement asymétrique recommandé et reconnu robuste par la réglementation en vigueur (voir les recommandations en annexe). Exigences : 1. L’E-MDF doit utiliser un algorithme de chiffrement asymétrique conforme aux normes de sécurité actuelles. 2. L’E-MDF doit utiliser un algorithme et une taille de clé reconnus robustes jusqu’au moins 5 années après la mise en production planifiée de l’E-MDF. c) [H02010] Hashage cryptographique Objectif : Utiliser un algorithme de hashage cryptographique recommandé et reconnu robuste par la réglementation en vigueur (voir les recommandations en annexe). Exigences : 1. L’E-MDF doit utiliser un algorithme de hashage cryptographique conforme aux normes de sécurité actuelles. 2. L’E-MDF doit utiliser un algorithme hashage reconnu robuste jusqu’au moins 10 années après la mise en production planifiée de l’E-MDF. d) [H02011] Signature électronique Objectif : Utiliser un algorithme et format de signature électronique recommandés et reconnus robustes par la réglementation en vigueur (voir les recommandations en annexe). Exigences : 1. L’E-MDF doit utiliser le même algorithme de signature électronique (chiffrement + hash) tels que spécifiés dans le certificat de signature électronique du contribuable. 2. L’E-MDF doit signer le ticket en format CAdES conforme au niveau B conforme à la version en vigueur de la norme ETSI EN 319 122. 3. L’E-MDF doit produire une signature CAdES détachée. 4. L’E-MDF doit inclure, en plus des attributs signés strictement obligatoires, l’attribut « Signing- Time ». e) [H02012] Sources de temps Objectif : Synchroniser l’horloge interne du E-MDF pour assurer une date fiable pour la journalisation et la signature électronique. Exigences : 1. L’E-MDF doit synchroniser son horloge avec une source de temps NTP qui sera fournie par la PGSCEF. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 69/123 MINISTERE DES FINANCES Diffusion publique 2. La précision de la synchronisation doit être maintenue à un niveau acceptable d’une déviation maximale de ±2 seconde par jour). 3. L'E-MDF doit enregistrer des logs détaillés des opérations de synchronisation, y compris les erreurs éventuelles, les ajustements effectués, et les informations sur la source de temps utilisée. f) [H02013] Interface de saisie de codes ou de mots de passes Objectif : Permettre la saisie en toute sécurité des codes d’accès ou de chiffrement. L’usage typique est la fenêtre de saisie du code de chiffrement par un auditeur. Exigences : 1. Isolation : La fenêtre de saisie doit être isolée des autres composants de l'application pour éviter tout accès non autorisé. Cela inclut l'utilisation d'un espace mémoire distinct pour stocker temporairement les données saisies. 2. Protection contre l'injection : Implémenter des mécanismes pour empêcher l'injection de code malveillant à travers la fenêtre de saisie, par exemple, en filtrant les entrées et en échappant les caractères spéciaux. 3. Effacement en Mémoire : Une fois le code de chiffrement utilisé, il doit être immédiatement effacé de la mémoire pour empêcher toute récupération ultérieure. 4. Masquage des Saisies : Les caractères saisis doivent être masqués pour éviter qu'ils ne soient visibles par des personnes non autorisées ou des logiciels de capture d’écran. 5. Fenêtre Locale : La fenêtre de saisie doit être implémentée comme une fenêtre native de l'application, s'exécutant entièrement en local sur l'appareil de l'utilisateur. Aucune partie de la fenêtre ne doit être basée sur des technologies web, telles que HTML, CSS ou JavaScript, pour minimiser les vecteurs d'attaque potentiels et éviter les vulnérabilités liées aux technologies web. 2. Exigences d’intégration : L’E-MDF assure tous les échanges entre la CE et la plateforme NACEF. La plateforme NACEF expose plusieurs services web que le E-MDF doit intégrer en conformité avec les exigences de cette section. 2.1. Format de données a) Appel services web Tous les services Web de la plateforme NACEF s'attendent à recevoir des requêtes POST ou GET avec un encodage JSON pour les paramètres. Les résultats sont renvoyés au format JSON. Pour chaque appel, le serveur renvoie une réponse avec l'un des statuts HTTP suivants : - 200 : la requête a été exécutée avec succès. Le client doit gérer la charge utile (le payload) de la réponse ; - 400 : problème dans la requête ou erreur serveur. La réponse contient un code et un message d'erreur détaillé. Le payload doit être ignoré. - 401 : l’appel à la plateforme NACEF n’a pas été autorisé. Le payload JSON renvoyée est toujours composée de : - « objet » : la charge utile à traiter en cas de succès ou à ignorer en cas d’erreur. - « errorCode » : le code d'erreur en cas d'erreur ; - « message » : message indicatif sur l'erreur en cas d’erreur NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 70/123 MINISTERE DES FINANCES Diffusion publique b) Authentification [H0301] Pour pouvoir faire les appels services Web sur la plateforme NACEF, l’E-MDF doit être préalablement déclaré et enregistré. Tous les appels doivent utiliser un Token d’authentification JWT (Bearer authentication) fournit par la plateforme NACEF. c) QR Code mode Online [H0302] Pour un ticket signé « Online », le E-MDF doit retourner à la CE un code bidimensionnel (QR Code) conforme aux spécifications de la norme ISO/CEI 18004. Le QR Code doit être facilement lisible avec une impression en une résolution de 300 dpi. Le QR Code doit contenir les informations suivantes structurées en lignes : Ligne Contenu 1 « ONLINE » 2 L’identifiant unique du ticket d) QR Code Mode Offline [H0303] Pour un ticket signé « Offline », le E-MDF doit retourner à la CE un code bidimensionnel (QR Code) conforme aux spécifications de la norme ISO/CEI 18004. Le QR Code doit être facilement lisible avec une impression en une résolution de 300 dpi. Le QR Code doit contenir les informations suivantes structurées en lignes : Ligne Contenu 1 « OFFLINE » 2 L’IMDF 3 L’identifiant unique du ticket 4 Le type de l’opération 5 Le type de la transaction 6 Le montant total Hors Taxes 7 Le montant de la taxe 8 La signature électronique e) Signature électronique [H0304] À la transmission, la signature électronique CAdES doit être encodée en format DER de l’encodage ASN.1 (ITU-T X.680 - Specification of basic notation) 2.2. Services web [H0401] La signature électronique d’un ticket demandé par la CE et la génération du QR Code nécessitent que l’E-MDF implémente les services web suivants. Lors de la mise en service (première utilisation avec une CE), l’E-MDF doit obligatoirement faire la demande de synchronisation comme premier appel sur la plateforme NACEF avant tout autre appel. Lors de ce premier appel, l’E-MDF récupère son premier lot d’identifiants uniques et doit retourner le QR Code du « Ticket 0 ». NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 71/123 MINISTERE DES FINANCES Diffusion publique Figure 4 : Séquence des appels pour la génération d'un QRCode pour un ticket signé a) Récupération d’un identifiant unique Service POST /nacef/emdf/sign/init/{IMDF}/ Paramètres IMDF : L’identifiant du MDF Input L’objet EMDFTicketInfo : { « ticketHash » : « Encodage en Base64 du hash cryptographique du ticket », « ticketHashAlgorithm » : « L’algorithme de hash utilisé », } Output L’objet EMDFTicketIdentifier : { « tuid » : « la chaine de caractères de l’identifiant unique associé au ticket » } b) Soumission d’un ticket signé Service POST /nacef/emdf/sign/finalize/{IMDF}/tuid/ Paramètres IMDF : L’identifiant du MDF tuid : L’identifiant unique du ticket signé. Input L’objet EMDFSignedTicket : { « signedTicket » : « Encodage en Base64 de la signature électronique tu ticket », « signatureAlgorithm » : « L’algorithme de signature électronique utilisé », « ticket » : « Encodage en Base64 du ticket » } NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 72/123 MINISTERE DES FINANCES Diffusion publique Output N/A c) Demande de synchronisation La demande de la synchronisation a deux objectifs : Transmettre à la plateforme NACEF les données de fonctionnement offline, si l’E-MDF a utilisé ce mode pendant une période de déconnexion. Renouveler le lot d’identifiant uniques à utiliser en mode offline. L’E-MDF doit faire cet appel avant de permettre la signature de tickets Service POST /nacef/emdf/sync/{IMDF}/ Input L’objet EMDFSyncRequest :{ « offlineSignedTickets » : [{« tuid » : « identifiant unique tu ticket », « signedTicket » : « Encodage en Base64 de la signature électronique tu ticket », « signatureAlgorithm » : « L’algorithme de signature électronique utilisé », « ticket » : « Encodage en Base64 du ticket » }], « unusedTuidCount » : « Nombre d’identifiants uniques non utilisés » } Output L’objet EMDFSyncResponse :{ « tuids » : « Identifiants uniques séparés par une virgule » « qrCodeZero » : « Encodage en base64 du QRCode du ticket ‘0’ » } 3. Exigences matérielles : 3.1. Connecteur USB [H0501] L’E-MDF doit être équipé d'au moins un port USB (Universal Serial Bus) conforme à la norme USB 2.0 ou plus pour permettre la connectivité avec des périphériques externes. Ce port USB doit être intégré de manière fonctionnelle dans le système, offrir une alimentation suffisante conformément aux spécifications de la norme USB, et être compatible avec les périphériques USB couramment utilisés. Les spécifications et la localisation du port USB sur l'équipement doit être spécifiée dans la documentation technique de l’E-MDF. 3.2. Connecteur réseaux a) [H0502] Connectivité entre CE et E-MDF Si les échanges entre la CE et l’E-MDF se font sur le réseau, les interfaces réseaux doivent être compatibles avec au moins une des normes suivantes : - Ethernet : IEEE 802.3 (10/100/1000/10Gigabit, etc.). - Wi-Fi : IEEE 802.11 (a/b/g/n/ac/ax, etc.). Dans ce cas, en plus des spécifications de base, le système doit intégrer des mécanismes de sécurité robustes, notamment le support de protocoles de chiffrement tels que WPA3 ou équivalent. b) [H0503] Connectivité entre E-MDF et la PGSCEF Le E-MDF doit disposer d’une interface permettant La connectivité Ethernet IEEE 802.3 (10/100/1000/10Gigabit, etc.). NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 73/123 MINISTERE DES FINANCES Diffusion publique 4. Exigences réglementaires : 4.1. Utilisation d’une solution de signature électronique homologuée [H0601] Le module de signature électronique utilisé par l’E-MDF doit être homologué par l’Agence Nationale de Certification Electronique (ANCE) et le certificat d’homologation doit être en cours de validité. Le certificat d’homologation doit couvrir au moins :  La génération de signature électronique au format CAdES (selon la dernière norme en vigueur / recommandation ANCE).  La validation de signature électronique au format CAdES (selon la dernière norme en vigueur / recommandation ANCE). Figure 5 : Périmètre de l'homologation de l'ANCE 4.2. Utilisation d’un support cryptographique homologué [H0602] Le support de clé cryptographique utilisé par l’E-MDF doit être homologué par le CERT (Centre d’Études et de Recherches des Télécommunications) et le certificat d’homologation doit être en cours de validité. 5. Exigences de documentation [H0701] Le fournisseur du E-MDF doit fournir au moins les documents techniques suivants : - Matrice de conformité aux exigences techniques et fonctionnelles avec les certifications exigées. - Architecture fonctionnelle et logique. - Spécifications techniques matérielles et logicielles du E-MDF (prérequis pour la CE, interfaces…). - Manuel d’administration et d’intégration du E-MDF. III. RECOMMANDATIONS ALGORITHMIQUES [H0801] Les recommandations ci-dessous sont extraites du document ETSI TS 119 312 « Electronic Signatures and Infrastructures (ESI); Cryptographic Suites » V1.4.3 (2023-08). Les algorithmes recommandés ci-dessous sont identifiés en tant que Recommended Mechanisms pour les six prochaines années. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 74/123 MINISTERE DES FINANCES Diffusion publique Type de l’algorithme Algorithmes / schémas autorisés Taille de clé cryptographique minimale (bits) Hash SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-384, SHA3-512 N/A Symétrique AES >= 128 Asymétrique rsa-pss with mgf1SHA-256Identifier >= 3000 rsa-pss with mgf1SHA-512Identifier >= 3000 rsa-pss with mgf1SHA3-Identifier >= 3000 sha256-with-dsa >= 3072 ha512-with-dsa Courbe elliptique EC-DSA / EC-SDSA-opt avec NIST P-(384/521) ou BrainpoolP- 384/521 (384/521). III. ALGORITHMES UTILISES POUR LE MODULE D’AUDIT :  Signature électronique L’E-MDF doit implémenter une procédure de validation de signature électronique au format CAdES. Le fichier de demande d’audit sera signé au format CAdES-B en mode attaché. Le document attaché à la signature CAdES est le fichier de demande d’audit chiffré (input du déchiffrement décrit ci-dessous).  Déchiffrement Le fichier de demande d’audit est chiffré avec l’algorithme AES. La génération de la clé symétrique doit être implémentée en dérivant une clé symétrique avec l’algorithme de dérivation « PKCS 5 V2.0 Scheme 2 » (RFC 2898) et en utilisant le code de déchiffrement saisi par l’auditeur. Les données « salt » et « iv » utilisés dans cet algorithme sont transmises également avec le fichier de demande d’audit. Il est à noter que le code de déchiffrement et les données « salt » et « iv » sont générés par la plateforme NACEF pour une mission d’audit déterminée pour un équipement E-MDF déterminé et ne sont pas valables pour d’autres missions ou d’autres équipements.  Chiffrement L’E-MDF doit en contrepartie également chiffrer le rapport d’audit avec l’algorithme AES en utilisant la même clé symétrique. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 75/123 MINISTERE DES FINANCES Diffusion publique PARTIE 5 : ANNEXES A1. Le décret gouvernemental numéro 2019-1126 du 26 novembre 2019 A2. Délais applicables pour l’accréditation des fournisseurs et l’homologation des caisses enregistreuses fiscales A3. Spécification technique des tickets de caisses :  Schéma JSON du ticket de caisse  Modèle de ticket de caisse A4. Les taux de TVA par familles de produits A5. Codification des taxes A6. Modèle de tableau des exigences techniques et fonctionnelles de la caisse enregistreuse A7. Modèle de tableau des exigences techniques et fonctionnelles du E-MDF A8. Modèle d’engagement pour les fournisseurs de caisses enregistreuses fiscales NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 76/123 MINISTERE DES FINANCES Diffusion publique A1 : Le décret gouvernemental numéro 2019-1126 du 26 novembre 2019, fixant les modalités pratiques de la mise en place de la caisse enregistreuse pour les services de consommation sur place Le Chef du Gouvernement, Sur proposition du ministre des finances, Vu la Constitution, Vu la loi organique n° 2004-63 du 27 juillet 2004, portant sur la protection des données à caractère personnel, Vu le Code de l’impôt sur le revenu des personnes physiques et l’impôt sur les sociétés, promulgué par la loi n°89-114 du 30 décembre 1989 tel que modifié et complété par les textes subséquents, notamment la loi n° 2015-53 du 25 décembre 2015 portant loi des finances pour l’année 2016, notamment son article 59 ter, Vu le Code des droits et procédures fiscaux promulgué par la loi n° 2000-82 du 9août 2000 tel que modifié et complété par les textes subséquents, notamment la loi n° 2015-53 du 25 décembre 2015 portant loi des finances pour l’année 2016 et notamment son article 94, Vu le décret n° 2008-2639 du 21 juillet 2008, fixant les conditions et les procédures d’importation et de commercialisation des moyens ou des services de cryptage à travers les réseaux de télécommunications, Vu le décret Présidentiel n° 2016-107 du 27 août 2016 portant nomination du Chef de Gouvernement et de ses membres, Vu le décret Présidentiel n° 2017-124 du 12 septembre 2017 portant nomination de membres de Gouvernement, Vu l’avis du Tribunal administratif. Prend le décret gouvernemental dont la teneur suit : Chapitre premier Dispositions générales Article premier - Le présent décret gouvernemental a pour objet de fixer les modalités pratiques de la mise en place de la caisse enregistreuse pour les services de consommation sur place en fixant les caractéristiques de ladite caisse et les obligations des parties intervenantes. Art. 2 - Les entreprises prestataires de services de consommation sur place, qu'il s'agisse d'une personne physique ou morale, doivent mettre en place « une caisse enregistreuse », et ce, pour enregistrer toutes leurs transactions avec les clients. Art. 3 - Le système de caisses enregistreuses est composé d’une : - « caisse enregistreuse » installée au niveau de l'entreprise prestataire de services de consommation sur place qui est composée d’un : - « module de caisse enregistreuse » qui permet de collecter et d’enregistrer les opérations effectuées au niveau de l'entreprise prestataire de services de consommation sur place, - « module de données fiscales » qui permet de protéger et d’envoyer les données collectées. - « plateforme de gestion du système de caisses enregistreuses » qui permet au niveau des services compétents du ministère des finances de recevoir, d’enregistrer et de traiter les données envoyées par le module de données fiscales. Art. 4 - Le module de données fiscales doit être homologué conformément aux dispositions du décret n° 2008- 2639 du 21 juillet 2008, fixant les conditions et les procédures d’importation et de commercialisation des moyens ou des services de cryptage à travers les réseaux de télécommunications. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 77/123 MINISTERE DES FINANCES Diffusion publique La caisse enregistreuse doit être conforme aux conditions techniques fixées par le cahier des charges établi à cet effet et doit être homologuée par les services compétents du ministère des finances. Art. 5 - Sont considérées comme transactions nécessitant la mise en place de la caisse enregistreuse par les entreprises de services de consommation sur place : - les opérations d’achat des produits ou des services par le client, - les opérations d’émission des tickets pro-forma, - les opérations de remboursement, - les opérations effectuées durant la période de formation qui permet l’utilisation de la caisse enregistreuse. Les opérations effectuées par le biais de la caisse enregistreuse doivent être conformes à la législation et à la règlementation en vigueur en matière fiscale. Chapitre II Caractéristiques de la caisse enregistreuse Art. 6 - La caisse enregistreuse installée auprès des entreprises prestataires de services de consommation sur place doit comporter les caractéristiques suivantes : - Permettre une communication permanente avec la plateforme de gestion du système de caisses enregistreuses, - Collecter les traces relatives aux logiciels d'enregistrement des opérations et aux systèmes d’exploitation utilisés, - Déclencher des alarmes en cas de mauvaise manipulation ou des manœuvres frauduleuses, - Enregistrer les opérations prévues par l’article 5 du présent décret gouvernemental. Toutefois, la caisse enregistreuse ne peut pas avoir des caractéristiques permettant de modifier ou d’effacer les opérations effectuées. Elle ne peut avoir également de caractéristiques permettant de modifier les données préprogrammées relatives aux services ou produits, et ce, à partir de l’introduction des transactions jusqu’à leur enregistrement et l’impression du ticket. Art. 7 - La caisse enregistreuse doit générer : - un rapport électronique quotidien de clôture de compte, - un rapport électronique financier des recettes et des ventes ayant eu lieu au cours de la journée. Art. 8 - Les opérations effectuées par la caisse enregistreuse doivent permettre l'impression d'un ticket délivré au client comportant notamment les mentions suivantes : - numéro du ticket, - identifiant du module des données fiscales et l'identifiant du module de caisse enregistreuse, - identifiant de l’agent qui a effectué l’opération, - date de l'opération, - raison sociale de l'entreprise, nom commercial et matricule fiscal, - type de l’opération (opération d'achat d'un produit ou d'un service, opération de remboursement, opération de formation), - type de ticket (normal, copie avec un numéro différent, pro-forma), - liste des achats, leur quantité, leur prix hors taxes et taux des taxes, - montant total de l'opération et montant des taxes, - mode de paiement, - montant payé par le client et montant rendu, - code QR. Chapitre III Obligations des fournisseurs des caisses enregistreuses NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 78/123 MINISTERE DES FINANCES Diffusion publique Art. 9 - Les services compétents du ministère des finances fixent la liste des fournisseurs accrédités pour fournir des caisses enregistreuses, conformes aux dispositions de l’article 4 du présent décret gouvernemental, aux entreprises prestataires de services de consommation sur place. Les conditions que doivent remplir les fournisseurs susmentionnés au premier alinéa du présent article sont fixées par le cahier des charges établi à cet effet. Art. 10 - Les fournisseurs des caisses enregistreuses sont tenus lors de chaque opération de vente de caisse enregistreuse, de communiquer aux services compétents du ministère des finances les données relatives à la marque, au modèle et au numéro de série de toutes les caisses enregistreuses vendues. Lesdits fournisseurs sont tenus également de communiquer aux services compétents du ministère des finances lors de toute opération de vente de caisse enregistreuse notamment les données suivantes : - le numéro de fabrication, - l'identité du client : le matricule fiscal, le nom et le prénom ou la raison sociale, l'adresse et le nom commercial, - l'adresse d’installation de la caisse enregistreuse, - le numéro de série, les caractéristiques techniques et les logiciels installés au sein de la caisse enregistreuse, - la date de mise en service. Les fournisseurs des caisses enregistreuses sont tenus lors de toute opération de vente de caisse enregistreuse de délivrer au client une copie du certificat électronique délivré par les services compétents du ministère des finances comportant le cachet du fournisseur. Art. 11 - Les fournisseurs des caisses enregistreuses sont tenus d'assurer les services après- vente et les services de maintenance ou de réparation des caisses vendues. En cas de fourniture de services de maintenance, ils sont tenus d’informer les services compétents du ministère des finances de la date et du type de l’opération de maintenance, la nature de la panne et les nouvelles caisses installées en cas de remplacement des caisses objet de l’opération de maintenance. Les fournisseurs des caisses enregistreuses sont tenus également d’informer les services compétents du ministère des finances des manœuvres frauduleuses constatées auprès des entreprises prestataires de services de consommation sur place. Chapitre IV Obligations des utilisateurs des caisses enregistreuses Art. 12 - Les entreprises prestataires de services de consommation sur place sont tenues d’utiliser une caisse enregistreuse conforme aux dispositions de l’article 4 du présent décret gouvernemental, laquelle est acquise auprès des fournisseurs accrédités par les services compétents du ministère des finances. Lesdites entreprises doivent obtenir un certificat électronique pour chaque caisse enregistreuse utilisée. Art. 13 - Les entreprises prestataires de services de consommation sur place sont tenues d’enregistrer la caisse enregistreuse auprès des services compétents du ministère des finances avant son utilisation, et ce, conformément au manuel de procédures établi à cet effet par les services compétents du ministère des finances. Lors du premier enregistrement, l'entreprise prestataire de services de consommation sur place doit présenter notamment les données suivantes : - secteur et nature d’activité, - adresse, - date de mise en service de la caisse enregistreuse, - bureau de contrôle des impôts compétent, - taux de la taxe sur la valeur ajoutée, - estimation du nombre de tickets mensuel, du chiffre d’affaires mensuel et des charges mensuelles, NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 79/123 MINISTERE DES FINANCES Diffusion publique Les dites données doivent être mises à jour chaque fois que de besoin. Art. 14 - Chaque utilisateur de la caisse enregistreuse, quelle que soit sa fonction au sein de l'entreprise prestataire de services de consommation sur place, doit avoir un identifiant spécifique permettant son identification. Cet identifiant est archivé dans la base de données du système de caisse enregistreuse. Art. 15 - Les entreprises prestataires de services de consommation sur place sont tenues : - d'utiliser la caisse enregistreuse d'une façon permanente, - de garantir une communication permanente et sans interruption entre le module de caisse enregistreuse, le module de données fiscales et la plateforme de gestion du système de caisses enregistreuses, - de réparer les pannes techniques affectant la caisse dans un délai ne dépassant pas trois (3) jours sans que le nombre total de jours de panne dépasse dix (10) jours par an, - d'informer d'une manière instantanée les services compétents du ministère des finances de toute panne technique empêchant la caisse enregistreuse d'envoyer les données à la plateforme de gestion du système de caisses enregistreuses. Les pannes techniques sont réparées exclusivement par les fournisseurs accrédités conformément aux dispositions de l’article 9 du présent décret gouvernemental. Art. 16 - Les entreprises qui utilisent des caisses enregistreuses sont tenues d'informer les services compétents du ministère des finances en cas de cessation définitive ou temporaire de l’utilisation de la caisse enregistreuse. Art. 17 - Les sanctions prévues par l’article 94 du Code des droits et procédures fiscaux s'appliquent en cas du non-respect des obligations prévues par le chapitre IV du présent décret gouvernemental. Chapitre V Dispositions diverses Art. 18 - Les critères de classification des entreprises prestataires de services de consommation sur place et les délais de leur mise en conformité avec les dispositions du présent décret gouvernemental selon leur classification, sont fixés par arrêté du ministre des finances. Art. 19 - Le ministre des finances est chargé de l'exécution du présent décret gouvernemental qui sera publié au Journal officiel de la République tunisienne. Tunis, le 26 novembre 2019. Le Chef du Gouvernement Youssef Chahed Pour Contreseing Le ministre des finances Mouhamed Ridha Chalghoum NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 80/123 MINISTERE DES FINANCES Diffusion publique A2 : Délais applicables pour l’accréditation des fournisseurs et l’homologation des caisses enregistreuses fiscales Délais Valeurs Prolongations (jours calendaires) DL-001 Délais maximum pour la réponse aux demandes de 10 2 fois compléments d’informations relatives aux procédures d’accréditation DL-002 Délais maximum pour la réponse aux demandes de 10 2 fois compléments d’informations relatives aux procédures d’homologation DL-003 Délais minimum pour le dépôt d’une nouvelle 90 demande d’accréditation DL-004 Délais maximum pour rétablir la situation suite à la 30 2 fois suspension du certificat d’accréditation DL-005 Délais maximum pour rétablir la situation suite à la 30 2 fois suspension du certificat d’homologation NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 81/123 A3 : Spécifications techniques des tickets de caisses Schéma JSON du ticket de caisse : Le schéma JSON du ticket de caisse ainsi que sa documentation sont à télécharger à partir du site homologation.nacef.tn. Le site fournit aussi des exemples de tickets. TRES IMPORTANT : Il faut que l’objet ticket au format JSON, à transmettre au S-MDF, soit valide par rapport aux exigences normatives JSON (interdiction de l’utilisation de caractères spéciaux, …). Modèle de ticket de caisse : Le modèle de ticket suivant est fourni à titre indicatif. Il contient seulement les informations qui doivent obligatoirement figurer sur le ticket à délivrer au client. Modèle de ticket Description Matricule fiscal : 1234567L Identification de l’entreprise. Nom commercial : CAFE RESTO Adresse : Berges du Lac L’adresse et la ville doivent correspondre au lieu de l’opération Ville : Tunis de vente Store ID : 00X Identifiant de l’établissement au sein de l’entreprise telle qu’il a été affecté par le bureau de contrôle des impôts Id. Agent : 0001 Identifiant de l’agent qui a pris en charge les données de la transaction. Caisse : {SERIE}-{VERSION} Numéro de série de la caisse enregistreuse et le numéro de version du logiciel de caisse séparés par le caractère ‘-‘. IMDF : {ID. MDF} Identifiant du module de données fiscales (IMDF). Type Transaction : VENTE - NORMALE Le type transaction selon les valeurs indiquées dans le cahier des charges. Une transaction est identifiée par deux champs : le type ticket (Normal, Copie, Pro-forma) et le type transaction (Vente, Formation, Remboursement). Réf. Transaction : YYXXXXXXXX La référence unique et chronologique attribuée à la transaction par le logiciel de caisse. Date : 13/06/2023 16:01:53 Date et heure locale de la transaction. Réf. Origine : YYXXXXXXXX La référence de la transaction d’origine, valable uniquement dans le cas d’une transaction de type copie. Catégorie client : PP La catégorie du client (NP : Personne physique non patentée, PP : Personne patentée. Matricule Fiscal: 1234567M Matricule Fiscal, si la catégorie de client est PP Avantage fiscal : AAAAAAAAA Référence de l’autorisation d’achat en suspension de taxes telle qu’elle a été délivrée par l’administration fiscale. Articles Liste des articles achetés : Fam. Design. PU TTC Qte. Total TTC  Fam. : Famille d’articles selon la codification indiquée en 00 Produit1 99.999 9 99.999 annexe A4,  Design. : désignation de l’article acheté, 00 Produit2 99.999 9 99.999  PU : Prix unitaire de l’article avant remises (TTC), 00 Produit3 99.999 9 99.999  Qte. : Quantité achetée, 00 Produit4 99.999 9 99.999  Total : Total avant remises (TTC) Taxes : Les montants regroupés par code taxe et appliqués selon la Fam. Code Taxe Taux Valeur réglementation en vigueur (Annexe A5) 00 00 9.99% 99.999 00 00 9.99% 99.999 Total Taxes : 99.999 Total des Taxes Montant remises : 99.999 Montant total des remises accordées (celles accordées par article ainsi que la remise supplémentaire globale). Total à payer : 99.999 Montant total TTC à payer. Règlement : Défalcation du montant total perçu par mode de règlement. Mode Montant Espèces 99.999 Chèque 99.999 Monnaie rendue : 99.999 Monnaie rendue au client. Réf. Transaction MDF : {REF. TRANSACTION} Référence transaction attribuée par le MDF. QR code de vérification de l’authenticité du ticket telle qu’il a été reçu de la part du MDF MINISTERE DES FINANCES Diffusion publique A4 : Les taux de TVA par familles de produits Le tableau suivant est régulièrement mis à jour conformément à la réglementation en vigueur. Les taux suivants sont ceux appliqués à la date de publication de la présente version du cahier des charges. Activités Familles de produits Taux Code Libellé Code Libellé TVA 2102 VENTE DE PATISSERIE & GLACE 01 Tous les produits de consommation sur 7% place 4401 RESTAURANTS 01 Tous les produits de consommation sur 7% place 4402 RESTAURANTS CLASSES 02 Tous les produits de consommation sur 7% TOURISTIQUES place à l’exception des produits alcooliques 10 Produits alcooliques 19% 4403 PIZZERIAS, CREPERIES, 01 Tous les produits de consommation sur 7% SANDWICHERIES place 4405 HOTELS CLASSES TOURISTIQUES 02 Tous les produits de consommation sur 7% place à l’exception des produits alcooliques 10 Produits alcooliques 19% 4406 GESTION D'HOTELS CLASSES 02 Tous les produits de consommation sur 7% TOURISTIQUES place à l’exception des produits alcooliques 10 Produits alcooliques 19% 4408 DISCOTHEQUES 02 Tous les produits de consommation sur 7% place à l’exception des produits alcooliques 10 Produits alcooliques 19% 4409 CAFES 1ere CATEGORIE 01 Tous les produits de consommation sur 7% place 4410 CAFES et BARS 02 Tous les produits de consommation sur 7% place à l’exception des produits alcooliques 10 Produits alcooliques 19% 4411 BUVETTES 01 Tous les produits de consommation sur 7% place 4412 CASINOS 02 Tous les produits à l’exception des produits 7% alcooliques 10 Produits alcooliques 19% 4417 SALONS DE THE 01 Tous les produits de consommation sur 7% place A5 : Tableau de codification des taxes Code Libellé Valeur 10 TVA 7% 7% 11 TVA 19% 19% 20 Droit de timbre sur franchises 0.100 DT NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 84/123 MINISTERE DES FINANCES Diffusion publique A6 : Modèle de tableau des exigences techniques et fonctionnelles de la caisse enregistreuse Les exigences sont qualifiées selon deux natures telle qu’indiqué dans la colonne « Nature » : - E : Engagement. - C : Conformité. Pour chaque exigence de nature « C : Conformité », il convient de décrire : - La configuration mise en œuvre pour assurer la conformité à l'exigence. - Les scénarios de tests utilisés pour appuyer la conformité. Pour chaque exigence de nature « E : Engagement », il y a lieu d’indiquer l’avis « Oui » ou « Non » dans la colonne intitulée « Conformité obligatoire ». De plus, il est nécessaire d'indiquer les pages et les paragraphes correspondants dans le dossier d'accréditation ou d'homologation. Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0101 Les fournisseurs sont seuls E responsables de la conformité de leurs produits aux exigences d’homologation, les contrôles de l’unité d’homologation ne pouvant se substituer à leurs responsabilités. En outre, ils s’engagements à mettre en œuvre toutes les obligations indiquées dans le présent cahier des charges. E0102 Lors de la vente d’une CEF à E un client, le fournisseur doit communiquer, à travers la plateforme dédiée, toutes les informations demandées de manière sincère et correcte. E0103 Le fournisseur doit déclarer à E l’administration fiscale toutes les interventions de maintenances curatives (suite à un incident) ou évolutives effectuées sur une caisse enregistreuse fiscale. E0201 La caisse enregistreuse doit E faire l’objet d’une documentation décrivant sa conception, son exploitation, sa maintenance et son utilisation. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 85/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0202 La demande d’homologation E doit être accompagnée par la documentation suivante :  Dossier de conception générale,  Dossier de spécifications fonctionnelles,  Dossier d’architecture technique,  Dossier de maintenance,  Dossier d’exploitation,  Dossier utilisateur Cette documentation doit être rédigée en français. Ces documents doivent comprendre l’historique des versions et les motifs des mises à jour. E0203 Le dossier de conception E générale, décrit :  Le système et ses principes de fonctionnement dans leur ensemble, le matériel associé au système pour permettre l’encaissement.  Une cartographie des différents modules et de leurs interactions.  Le système d’exploitation, les langages utilisés, et les caractéristiques du réseau.  Les bases de données utilisées et la manière dont elles sont interfacées (modèles conceptuels et logiques de données). NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 86/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0204 Le dossier de spécifications E fonctionnelles, contient :  Une description des cas d’usage et des points d’attention.  Les spécifications liées aux exigences du présent cahier des charges E0205 Le dossier d’architecture E technique, décrit :  La solution technique mise en œuvre pour le stockage sécurisé des données (éventuellement les types de signatures et de Hashs).  Les flux entre les différents composants du système.  Les fonctionnalités de sauvegarde, de restauration, d’archivage, d’export, de clôture, et d’impression. E0206 Le dossier de maintenance E est destiné à identifier le suivi des évolutions/corrections du produit, les processus et l’organisation en place pour la gestion des vulnérabilités, la gestion des licences, les méthodes de mises à jour d’une version (corrective ou évolutive) et de sa livraison chez le client, la politique de versionning du code mentionnant la gestion des versions majeures/mineures au sens des exigences décrites dans le présent cahier des charges. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 87/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0207 Le dossier d’exploitation, E contient une description de :  Les configurations et les paramétrages possibles du système,  La procédure d’installation,  Les prérequis matériels,  La gestion des droits utilisateur,  Les modalités de supervision du système. E0208 Le dossier utilisateur, E contient :  Un manuel à destination de l’utilisateur final décrivant les fonctionnalités du système et son mode d’emploi.  Un manuel à destination de l’administration fiscale décrivant les procédures d’export des données d’encaissement et des pistes d’audit sur un support externe amovible. E0209 Les dossiers doivent être E complétés par un document récapitulant pour chaque exigence fonctionnelle ou technique, la liste des documents, des paragraphes et des numéros de page de justifications concernés. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 88/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0301 Une caisse enregistreuse C fiscale (CEF) doit obligatoirement comporter un module de caisse (CE) et un module de données fiscales (MDF) ayant les fonctions suivantes : a) Le module de caisse assure les opérations relatives à la gestion des transactions : l’établissement, le stockage et l’impression des tickets de caisse ainsi que la génération des rapports financiers ; b) Le MDF assure la protection des données échangées entre la caisse enregistreuse fiscale et la PGSCEF. E0302 Un lien de communication C sécurisé doit être garanti en permanence entre les deux modules de la caisse enregistreuse fiscale. Ainsi, l’interruption de ce lien entraine automatiquement le blocage de cette dernière. E0303 Le module de caisse C enregistreuse (CE) doit communiquer exclusivement avec le module de données fiscales (MDF) qui lui est associé. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 89/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0304 Le module de caisse C enregistreuse (CE) peut se présenter selon les possibilités suivantes :  Un PC-caisse muni d’un tiroir de caisse. Dans ce cas chaque caisse doit être dotée par MDF.  Un serveur auquel sont connectés plusieurs tiroirs. Dans ce cas le MDF est connecté au serveur. E0305 Le MDF peut être sous les C formats suivants : a) un équipement matériel (E-MDF) installé chez le contribuable et connecté à la CE ; b) un module logiciel (S- MDF) qui comporte un composant client installé chez le contribuable et une autre partie centralisée au niveau de la PGSCEF. Il est conçu pour recevoir les données factures, de les signer et de générer les données de réponse (contrôle) à renvoyer à l’appelant ; les données de réponse fournissent l’authentification des données factures. E0306 Le module de caisse E enregistreuse (CE) est doté d’un logiciel de caisse qui satisfait aux exigences techniques et fonctionnelles indiquées dans le présent document. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 90/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0307 Chaque module de caisse E enregistreuse (CE) doit avoir une désignation du modèle et un numéro de fabrication. Le numéro de fabrication est un numéro unique qui identifie à la fois le module de caisse enregistreuse et le fabricant. Le numéro de fabrication unique doit être apposé de manière indélébile sur chaque module de caisse enregistreuse installé. E0308 Le module de caisse C enregistreuse fiscale (CEF) doit être doté d’une interface réseau qui lui permet de se connecter à la plateforme centrale de gestion des caisses enregistreuses fiscales (PGSCEF). La connexion à la PGSCEF se fait à travers le réseau GSM/UMTS moyennant un APN dédié. E0309 Le module de caisse C enregistreuse (CE) doit être doté d’une interface de type USB 2.0 (ou version ultérieure). E03010 La caisse enregistreuse fiscale C (CEF) ne peut avoir de fonctions permettant d’effacer, de modifier ou de manipuler les transactions, avant, au cours ou après leur enregistrement. E0311 La caisse enregistreuse fiscale C (CEF) ne doit pas comporter de fonctions permettant de modifier les données préprogrammées (description, unité, prix, taux de TVA, ...) des articles ou services et ceci entre le moment de l’introduction de la transaction jusqu’à son enregistrement et l’impression du ticket de caisse. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 91/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0312 Aucun équipement ou logiciel E qui peut influencer, modifier ou perturber le fonctionnement normal des CEF ne doit être connecté ou intégré à la caisse enregistreuse. E0401 Toute transaction effectuée C par la CEF doit être conforme à la réglementation en vigueur en matière d’imposition, notamment par rapport à l’application de la TVA. A chaque transaction correspond un ticket de caisse imprimé par le contribuable et retourné au client. E0402 A chaque transaction est C affectée une référence permettant de l’identifier. La référence transaction doit être unique et suivre les règles de numérotation de séquence continue et de chronologie. L'affectation de la référence doit être irréversible et intangible. E0403 Les transactions autorisées C sont les suivantes : i. Vente (SALE) : il s’agit d’un achat effectué par le client ; ii. Formation (TRAININ G) : effectuée par un utilisateur qui est en train de suivre une session de formation sur l’utilisation de la caisse enregistreuse. E0403 Toute transaction effectuée C doit être matérialisée par l’impression d’un ticket de caisse. Le logiciel de caisse doit pouvoir conserver un indicateur permettant de savoir si le ticket a bien été imprimé. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 92/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0501 Le ticket de caisse est le reçu C délivré par le contribuable au client suite à une transaction donnée. Un ticket de caisse imprimé peut être de type : i. Normal (TICKET) : il s’agit d’une transaction ordinaire ; ii. Pro-forma (PROFORMA) : il s’agit de ticket généré avant la conclusion d’une transaction. iii. Remboursement(REF UND) : il s’agit d’un retour de produit effectué par le client. iv. Copie (DUPLICATE) : c’est une copie d’un ticket de caisse déjà établi et dans ce cas le libellé « Copie » doit figurer sur le ticket pour le distinguer de l’original et un numéro différent doit être affecté au ticket. Chaque ticket « Copie » doit correspondre au même type que l’original. E0502 Toutes les combinaisons C d’opérations (Code transaction, Type ticket) sont autorisées E0503 Lorsque la caisse C enregistreuse prévoit une fonction d’impression des tickets de formation, ces tickets doivent être clairement distingués du ticket de caisse. A cette fin, la dénomination « Ticket formation » doit être apposée sur le ticket. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 93/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0504 Lorsqu’une transaction de C remboursement est effectuée, cela doit être clairement indiqué sur le ticket. La mention « Ticket remboursement » doit être apposée sur le ticket.. E0505 Un système de caisse ne doit C pas pouvoir imprimer de copie du ticket de caisse, sous quelle que forme que ce soit. La copie de ticket de caisse est une transaction particulière qui génère un ticket de caisse portant la mention obligatoire « Ticket copie ». E0506 Le ticket de caisse doit C comprendre toutes les données liées à la réalisation d’une transaction et à son règlement. Le QR code doit être de taille imprimable 170x220px. E00507 Les montants indiqués dans le C ticket de caisse sont exprimés en Dinar Tunisien. E0508 Les taux de TVA indiqués sur C le ticket de caisse sont exprimés en nombres à deux chiffres suivis de deux chiffres après la virgule. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 94/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0601 A chaque version du logiciel C de caisse est attribué un identifiant unique (numéro de version). Cet identifiant doit permettre :  d’assurer la traçabilité des versions de logiciels distribués sur le marché (le numéro de version doit être adapté à chaque modification du logiciel) ;  de pouvoir faire une mise à jour ou une nouvelle installation le cas échéant (vulnérabilité majeure détectée, changement d’exigences de conformité à appliquer, ...). E0602 Le fournisseur doit enregistrer C et mettre continuellement à jour un registre des logiciels et versions distribués à ses clients. E0603 Chaque version doit être C qualifiée : a) Majeure si les évolutions et les modifications sont concernées par les exigences d’homologation ; b) Mineure si les évolutions et les modifications ne sont pas concernées par les exigences d’homologation. E0604 Toute version qualifiée E « Majeure » doit être soumise à l’homologation. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 95/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0605 Lors de son utilisation, le C logiciel doit pouvoir restituer à tout moment : a) La référence du certificat d’homologation ; b) Le numéro de version du logiciel de caisse, et le nom du fabricant du programme ; c) L’identifiant du MDF (IMDF) ; d) La date d’expiration du certificat électronique. E0606 Durant les 30 jours qui C précèdent la date d’expiration de la validité du certificat électronique, le logiciel de caisse doit informer le contribuable concerné de la nécessité de renouvellement du certificat. E0701 Le logiciel de caisse doit C permettre de gérer les utilisateurs et les droits d’accès pour les fonctions du logiciel. E0702 Chaque utilisateur, doit être C clairement identifiable avec un identifiant unique. Cet identifiant doit être archivé dans la base de données « utilisateurs » du système de caisse. Il doit être, aussi, enregistré dans les données d’encaissement. E0703 Le logiciel doit permettre C l’édition de la liste des utilisateurs et de leurs droits d’accès. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 96/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0801 Le logiciel de caisse doit C disposer d’une interface de paramétrage qui permet de :  paramétrer l’identifiant du MDF (IMDF) rattaché à la caisse ;  mettre à jour un IMDF déjà paramétré dans le cas où le MDF correspondant a été substitué par un autre. E0802 Le logiciel de caisse doit C disposer d’une interface de paramétrage des familles d’articles et des taux de TVA telle qu’indiqué dans les annexes A4 et A5. E0803 Tous les objets au format C JSON, à transmettre à la plateforme NACEF, doivent être valides par rapport aux exigences normatives JSON (interdiction de l’utilisation de caractères spéciaux, …). E0901 Le logiciel de caisse doit C enregistrer l’exécution de toutes les opérations et de tous les événements qui peuvent intervenir : accès, encaissement, archivage, purge, sauvegarde, restauration, mode hors connexion, gestion des paramètres du logiciel, indisponibilité de l’imprimante, … Ces traces sont enregistrées dans une piste d’audit. E0902 La piste d’audit ne doit pas C être modifiable ni effaçable par une fonction du logiciel. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 97/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E0903 Les données suivantes sont C obligatoirement conservées dans la piste d’audit :  Date et heure sous le format YYYYMMDD- HH24MNSS,  Module applicatif (code et Libelle),  Opération (Code et Libelle),  Type piste : « INFO » ou « ERREUR »,  Message. Le message contient le résultat de l’exécution de l’opération, les données qui permettent d’identifier l’opération, ainsi que les données paramètres utilisées lors de l’exécution de l’opération (données complémentaires). Pour les opérations de modification les données complémentaires doivent comporter la liste des données initiales ainsi que les données de modification. E0904 Le logiciel de caisse doit C pouvoir produire une archive de la piste d’audit. E0905 Les exigences de sécurisation, C d’archivage et de purge des données d’encaissement s’appliquent à la piste d’audit. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 98/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E1001 Le logiciel de caisse doit C assurer l’enregistrement de toutes les données d’encaissement liées à la réalisation d’une transaction et à son règlement. Ces données doivent être enregistrées au plus tard au moment du calcul du montant total de la transaction avant paiement (préalablement à l’impression du ticket). Ces données comprennent toutes les données « Tickets » indiquées dans l’exigence E0506 ainsi que :  toute donnée élémentaire nécessaire au calcul du total HT d’un article,  et toute donnée permettant d’assurer la traçabilité de la transaction et de garantir l’intégrité des données d’encaissement. E1002 Si des corrections C (modifications ou annulations) sont apportées à des transactions, par quelque moyen que ce soit, ces corrections s'effectuent par un enregistrement des données d’encaissement correctives par le biais d’opérations de « plus » et de « moins », et non par modification directe des données d’encaissement enregistrées. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 99/123 MINISTERE DES FINANCES Diffusion publique E1003 Exigences particulières C concernant les transactions de type « Formation » :  Le type transaction « Formation » est réservé à l’enregistrement de transactions fictives. Les données de celles-ci doivent être enregistrées et sécurisées comme des données d’encaissement mais explicitement identifiées comme étant de type « Formation ».  L’identifiant du responsable de l’opérateur enregistrant les transactions, ainsi que toutes les opérations enregistrées lors de l’utilisation de ce mode font partie des données d’encaissement. A ce titre ces données doivent respecter toutes les exigences qui les concernent (enregistrement, sécurisation, archivage).  Toute pièce justificative émise lors de l’utilisation de ce mode doit être identifiée comme telle en y apposant la mention « Formation ».  L’utilisation de ce mode doit être visible depuis l’affichage du système d’encaissement.  Si aucun mode de ce type n’est présent dans le système ceci doit être indiqué dans la documentation. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 100/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E1101 Toutes les données C d’encaissement doivent être conservées de façon inaltérable. L’inaltérabilité des données vise à permettre de garantir et d’être en capacité de démontrer par tout procédé technique fiable, l’absence de perte d’intégrité des données d’encaissement et ce depuis leur enregistrement initial. Ce procédé technique doit permettre de détecter et mettre en évidence toute modification ou suppression de données d’encaissement. E1102 Le logiciel de caisse doit C pouvoir contrôler l’intégrité des données et interdire la modification ou la suppression des données directement sur disque ou dans la base des données d’encaissement. Les erreurs identifiées doivent être enregistrées dans la piste d’audit. E1201 Le logiciel de caisse doit C comprendre des fonctionnalités de clôture journalières, mensuelles et annuelles. E1202 Le logiciel de caisse ne doit C pas permettre d’enregistrer des transactions sur une période clôturée. E1203 Les clôtures peuvent être C réalisées automatiquement par le logiciel de caisse ou faites par l’utilisateur. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 101/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E1204 Pour chaque clôture, le C logiciel de caisse doit enregistrer le total cumulatif de la période et le total perpétuel comme toute autre donnée d’encaissement. Le total cumulatif de la période est le cumul du chiffre d’affaire décompté depuis l’ouverture de la période concernée. Il s’agit d’un compteur initialisé à 0 à l’ouverture de la période (journalière, mensuelle ou annuelle) et dont la valeur est stockée à la clôture. Le total perpétuel est le cumul de chiffre d’affaire décompté depuis le début de l’utilisation du système d’encaissement. Il s’agit d’un compteur ne se remettant jamais à 0 et dont la valeur est stockée périodiquement à chaque clôture. E1205 Dans le cas d’une mise à jour C du système, tous les compteurs doivent continuer à être incrémentés sans être remis à 0. E1301 Le logiciel de caisse doit C prévoir une fonctionnalité d’archivage, permettant l’export dans un format ouvert, des données d’encaissement figées et horodatées. La période couverte par une archive ne doit pas pouvoir être supérieure à un an ou à un exercice fiscal. E1302 Les fichiers d’archives doivent C pouvoir être exploités sans l’utilisation du logiciel ayant créé ces données. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 102/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E1303 Les données contenues dans C l’archive doivent être conformes aux données initiales figées à partir desquelles elle a été créée et doit prévoir un mécanisme fiable, indépendant du support de conservation de l’archive, garantissant cette intégrité et permettant de la vérifier. Ces mécanismes doivent permettre de détecter et mettre en évidence toute modification ou suppression de données d’encaissement conservées dans l’archive. Ils doivent aussi permettre de détecter et mettre en évidence toute différence avec la donnée d’encaissement initialement enregistrée ainsi que la date d’encaissement contenue dans l’archive. Le niveau de sécurité de ces mécanismes doit être au moins équivalent à celui utilisé pour répondre à l’exigence d’inaltérabilité des données d’encaissement. E1304 Les archives doivent être C conservées de manière à garantir l’intégrité et la disponibilité des données archivées en cas de contrôle fiscal durant la période réglementaire. E1401 Si le logiciel de caisse dispose C d’une fonctionnalité de purge des données d’encaissement, liée à la nécessité de libérer de l’espace mémoire, il doit garantir avant la mise en œuvre de la purge, la génération d’une archive contenant toutes les données d’encaissement à purger et sa conservation conformément aux exigences d’archivage des données. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 103/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E1402 La fonctionnalité de purge ne C doit pas supprimer du système d’encaissement les données cumulatives ainsi que les données de traçabilité des opérations. Celles-ci doivent rester indéfiniment conservées, sécurisées, dans le système d’encaissement E1501 Toutes les données C d’encaissement, de traçabilité, ainsi que les preuves de leur inaltérabilité, doivent être conservées conformément à la réglementation fiscale en vigueur. E1502 Les données cumulatives ainsi C que les données de traçabilité doivent être conservées dans le système. Les données d’encaissement (hors données cumulatives et les données de traçabilité) peuvent être conservées soit dans le système lui-même soit dans les archives. E1503 Le logiciel permet la C supervision de la capacité mémoire et d’avertir l’utilisateur de la nécessité de réaliser une purge, ou d’augmenter la capacité mémoire. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 104/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le (Oui/Non) configuration dossier d’accréditatio n/ homologation (pages, paragraphes) E1601 Les fonctions de sauvegarde C et de restauration, si elles existent, doivent obéir aux exigences suivantes :  Toute exécution de la fonction de sauvegarde doit être enregistrée dans la piste d’audit (traçabilité).  Toute exécution de la fonction de restauration doit être enregistrée dans la piste d’audit après exécution.  Le contenu des enregistrements de sauvegarde et de restauration de la piste d’audit doivent permettre d’identifier les données d’encaissement impactées par la fonction de restauration. E1701 La demande d’homologation E doit contenir un manuel utilisateur à destination de l’administration fiscale, en français, détaillant la procédure permettant :  L’export des données d’encaissements et des pistes d’audit dans des archives,  L’accès à ces données d’archives pour les sauvegarder sur un support externe amovible à connecter à la caisse enregistreuse à l’aide d’un port USB. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 105/123 MINISTERE DES FINANCES Diffusion publique A7 : Modèle de tableau des exigences techniques et fonctionnelles du E-MDF Les exigences sont qualifiées selon deux natures telle qu’indiqué dans la colonne « Nature » : - E : Engagement. - C : Conformité. Pour chaque exigence de nature « C : Conformité », il convient de décrire : - La configuration mise en œuvre pour assurer la conformité à l'exigence. - Les scénarios de tests utilisés pour appuyer la conformité. Pour chaque exigence de nature « E : Engagement », il y a lieu d’indiquer l’avis « Oui » ou « Non » dans la colonne intitulée « Conformité obligatoire ». De plus, il est nécessaire d'indiquer les pages et les paragraphes correspondants dans le dossier d'homologation. Les exigences qui figurent dans le tableau suivant concernent la cible d’évaluation (TOE), qui est la combinaison des composants E-MDF et le support de clé cryptographique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0101 La TOE doit implémenter au C moins les modules fonctionnels suivants : 1. Signature électronique : module de signature électronique supportant au moins le format et les algorithmes exigés dans ce document et homologué par l’ANCE. 2. Stockage sécurisé : module de gestion de stockage de données chiffrés supportant au moins les algorithmes de chiffrements exigés dans ce document. 3. Synchronisation avec la PGSCEF : module métier implémentant la logique de synchronisation et échanges de données avec la plateforme NACEF. 4. Génération d’un rapport d’audit : module métier pour la génération et le chiffrement d’un rapport d’audit. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 106/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0102 La fonctionnalité principale de la C TOE est d’offrir le service de signature électronique des tickets émis par la Caisse Enregistreuse (CE). Chaque ticket émis par la CE est associé à un identifiant unique émis par la plateforme NACEF. La TOE doit assurer cette fonctionnalité en 2 modes : 3. Mode online : la plateforme NACEF est joignable depuis l’E-MDF. Dans ce cas, l’E- MDF doit 1) récupérer un nouvel identifiant unique et 2) remettre le ticket signé immédiatement à la plateforme centrale NACEF. 4. Mode offline : la plateforme NACEF n’est pas joignable. Cela peut être due à un problème temporaire au niveau de la connectivité de l’E-MDF. Dans ce cas, l’E- MDF doit utiliser un identifiant unique préalablement obtenu. C’est l’objectif du service de synchronisation avec la plateforme NACEF. L’objet de la synchronisation est de transmettre à la plateforme NACEF les données traitées pendant la phase « offline » et récupérer un nouveau lot d’identifiants uniques. Lors de chaque appel de synchronisation, l’E-MDF obtient un nouveau lot d’identifiants uniques qui peuvent être utilisés en mode offline. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 107/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0103 Avant de commencer à utiliser C l’E-MDF pour la signature électronique, il doit faire la première demande de synchronisation. Lors de cet appel, l’E-MDF récupèrera le premier lot d’identifiants et doit retourner le « Ticket 0 » comme preuve que l’état du E-MDF et son statut au niveau de la plateforme NACEF permet de commencer la signature électronique. H0104 Signature électronique en mode C online La TOE doit implémenter une procédure fonctionnellement équivalente aux étapes suivantes : i. Récupération du ticket à signer par la Caisse Enregistreuse ii. Appel d’un service web sur la plateforme NACEF pour l’envoie du ticket et la récupération d’un identifiant unique pour le ticket à signer iii. Génération d’une signature cryptographique avec la clé de signature du contribuable iv. Transmission de la signature électronique à la plateforme NACEF v. Génération du QR-Code du ticket signé (type Online) et retour à la Caisse Enregistreuse. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 108/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0105 Signature électronique en mode C offline La TOE doit implémenter une procédure fonctionnellement équivalente aux étapes suivantes : i. Récupération du ticket à signer par la Caisse Enregistreuse ii. Vérification de la possibilité de la signature électronique en mode offline : la disponibilité d’un identifiant unique dans le dernier lot récupéré iii. Génération d’une signature cryptographique avec la clé de signature du contribuable iv. Chiffrement et enregistrement du ticket signé au niveau du E-MDF v. Génération du QR-Code du ticket signé (type Offline) et retour à la Caisse Enregistreuse. H0106 La TOE doit implémenter une C procédure fonctionnellement équivalente aux étapes suivantes : i. Authentification forte du contribuable pour demande de synchronisation ii. Envoie à la plateforme NACEF les données de synchronisation demandée ainsi que tout enregistrement effectué en offline iii. Enregistrement des données reçues. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 109/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0107 La TOE doit implémenter une C procédure fonctionnellement équivalente aux étapes suivantes : i. Détection d’une demande d’audit par la lecture d’un fichier de demande d’audit sur un support amovible branché sur un connecteur USB sur la TOE ii. Vérification de la signature électronique et de la syntaxe du fichier de demande d’audit iii. Exécution de la procédure d’audit selon les paramètres de la demande d’audit iv. Génération et chiffrement du rapport d’audit v. Enregistrement du rapport d’audit sur le support amovible. H0108 La TOE doit incorporer : C - Un support de stockage local des données. - Un mécanisme de chiffrement des données stockés. - Un mécanisme de vérification de l’intégrité des données stockées. H0201 Chiffrement des données en C transit : 1. Les données en transit entre la CE et le E-MDF doivent être chiffrés avec un protocole de chiffrement assurant un niveau de sécurité équivalent à TLS 1.3. 2. Le E-MDF doit supporter TLS 1.3 pour toutes les communications avec la plateforme NACEF H0202 Chiffrement des données C stockées : Toutes les données (fichiers, logs, bases de données...) stockées par le E-MDF doivent être chiffrés par un algorithme de chiffrement symétrique ou asymétrique NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 110/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0203 Mécanisme de vérification de C l’intégrité des données : 1. Le E-MDF doit implémenter un mécanisme qui permet de détecter toute altération sur les données stockées localement ou en transit vers la caisse ou vers la plateforme NACEF. 2. Le mécanisme de détection doit envoyer toute détection d’altération à la plateforme NACEF dès la première connexion suivant la détection. 3. Le mécanisme de détection doit sauvegarder localement de façon sécurisée toute détection d’altération en attente de la première connexion à la plateforme NACEF ou le déclenchement d’un audit. H0204 Mécanisme de vérification de C l’intégrité des paramètres : 1. L’E-MDF doit implémenter un mécanisme sécurisé et fiable pour le stockage de ses paramètres 2. L’E-MDF doit interdire toute modification de ces paramètres sauf suite à une intervention de mise à jour ou intervention tracée du fournisseur E-MDF 3. L’E-MDF doit détecter toute modification non autorisée sur ces paramètres 4. Les paramètres doivent être chiffrés H0205 Journalisation des modifications : C Le E-MDF doit journaliser toutes les modifications apportées aux données stockées localement H0206 Clé de signature électronique : C La clé de signature du contribuable doit être stockée sur un module matériel certifié FIPS- 140 Level 3. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 111/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0207 Clé de session : C 1. L’E-MDF doit implémenter un mécanisme de rotation régulière de toutes les clés logicielles. 2. L’E-MDF doit maintenir et fournir un registre détaillé des clés de session utilisées en spécifiant pour chaque clé : son type, sa taille, son usage et la politique de sécurité associée. H0208 Pare-feu : C 1. Mise en œuvre d’une politique de sécurité restrictive avec la liste explicite des flux et ports ouverts. 2. Configuration d'un pare-feu pour filtrer le trafic non autorisé H0209 Connectivité internet : C 1. Si le E-MDF utilise un réseau Wifi pour la connectivité Internet, le E-MDF doit utiliser un protocole au moins aussi sécurisé que le protocole WPA3. 2. Si le canal E-MDF_CE est basé sur une connectivité réseaux, l’E-MDF ne doit permettre qu’une connectivité à travers un réseaux local privé (une IP privée). H0210 Enregistrement des événements : C 1. L’E-MDF doit implémenter un système de journalisation robuste pour capturer les événements. 2. L’E-MDF doit tracer chaque communication entre la CE et le E-MDF avec date, objet et résultat. 3. L’E-MDF doit tracer chaque communication avec la plateforme NACEF avec date, objet et résultat. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 112/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0211 Analyse des journaux : C L’E-MDF doit définir et implémenter des procédures régulières d'analyse des journaux de sécurité. H0212 Analyse de vulnérabilités : C 1. Réalisation régulière d'analyses de vulnérabilités par des outils spécialisés. 2. Documentation des résultats de l'analyse de vulnérabilités. 3. Mise en place d'un processus de gestion des correctifs pour remédier aux vulnérabilités dans les délais spécifiés. 4. Priorisation des correctifs en fonction de leur criticité. 5. Élaboration d'un plan d'urgence détaillé pour répondre rapidement aux vulnérabilités critiques. H0213 Politique de mise à jour : C 1. Définition d'une politique de mises à jour claire et documentée, spécifiant la fréquence et la procédure à suivre. 2. Réalisation de tests préalables aux mises à jour pour évaluer leur impact sur le E-MDF. 3. Documentation des résultats des tests et validation avant le déploiement H0214 Mécanismes de Rollback : C 1. Mise en place d'une surveillance post-mise à jour pour détecter les anomalies de performance ou de sécurité. 2. Mise en place de mécanismes de Rollback permettant de revenir à une version antérieure en cas de problème majeur post-mise à jour. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 113/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0215 Authentification : C 1. Mise en place d'une politique de gestion d’accès à l’E-MDF 2. Utilisation de méthodes d'authentification robustes basés sur une politique de gestion des facteurs d’authentification. 3. Utilisation de comptes nominatifs identifiés. H0216 Autorisations : C 1. Attribution de privilèges d'accès en fonction des rôles et responsabilités dans la politique de gestion des accès. 2. Restriction d'accès en fonction du principe du moindre privilège. 3. Protection les sessions utilisateur contre les attaques et les accès non autorisés. H0217 Chiffrement symétrique : C 1. L’E-MDF doit utiliser un algorithme de chiffrement symétrique tel que l'AES avec une implémentation conforme aux normes de sécurité actuelles. 2. L’E-MDF doit utiliser un algorithme et une taille de clé reconnus robustes jusqu’au moins 5 années après la mise en production planifiée de l’E-MDF H0218 Chiffrement asymétrique : C 1. L’E-MDF doit utiliser un algorithme de chiffrement asymétrique conforme aux normes de sécurité actuelles. 2. L’E-MDF doit utiliser un algorithme et une taille de clé reconnus robustes jusqu’au moins 5 années après la mise en production planifiée de l’E-MDF. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 114/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0219 Hashage cryptographique : C 1. L’E-MDF doit utiliser un algorithme de hashage cryptographique conforme aux normes de sécurité actuelles. 2. L’E-MDF doit utiliser un algorithme hashage reconnu robuste jusqu’au moins 10 années après la mise en production planifiée de l’E- MDF. H0220 Signature électronique : C 1. L’E-MDF doit utiliser le même algorithme de signature électronique (chiffrement + hash) tels que spécifiés dans le certificat de signature électronique du contribuable. 2. L’E-MDF doit signer le ticket en format CAdES conforme au niveau B conforme à la version en vigueur de la norme ETSI EN 319 122. 3. L’E-MDF doit produire une signature CAdES détachée. 4. L’E-MDF doit inclure, en plus des attributs signés strictement obligatoires, l’attribut « Signing-Time ». H0221 Sources de temps C 1. L’E-MDF doit synchroniser son horloge avec une source de temps NTP qui sera fournie par la PGSCEF. 2. La précision de la synchronisation doit être maintenue à un niveau acceptable d’une déviation maximale de ±2 seconde par jour). 3. L'E-MDF doit enregistrer des logs détaillés des opérations de synchronisation, y compris les erreurs éventuelles, les ajustements effectués, et les informations sur la source de temps utilisée. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 115/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0222 Interfaces de saisie de codes ou C de mots de passe La saisie des codes d’accès ou de chiffrement se fait de manière sécurisée. L’usage typique est la fenêtre de saisie du code de chiffrement par un auditeur 1. Isolation : La fenêtre de saisie doit être isolée des autres composants de l'application pour éviter tout accès non autorisé. Cela inclut l'utilisation d'un espace mémoire distinct pour stocker temporairement les données saisies. 2. Protection contre l'injection : Implémenter des mécanismes pour empêcher l'injection de code malveillant à travers la fenêtre de saisie, par exemple, en filtrant les entrées et en échappant les caractères spéciaux. 3. Effacement en Mémoire : Une fois le code de chiffrement utilisé, il doit être immédiatement effacé de la mémoire pour empêcher toute récupération ultérieure. 4. Masquage des Saisies : Les caractères saisis doivent être masqués pour éviter qu'ils ne soient visibles par des personnes non autorisées ou des logiciels de capture d’écran. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 116/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) 5. Fenêtre Locale : La fenêtre de saisie doit être implémentée comme une fenêtre native de l'application, s'exécutant entièrement en local sur l'appareil de l'utilisateur. Aucune partie de la fenêtre ne doit être basée sur des technologies web, telles que HTML, CSS ou JavaScript, pour minimiser les vecteurs d'attaque potentiels et éviter les vulnérabilités liées aux technologies web. H0301 Authentification : C Pour pouvoir faire les appels services Web sur la plateforme NACEF, l’E-MDF doit être préalablement déclaré et enregistré. Tous les appels doivent utiliser un Token d’authentification JWT (Bearer authentication) fournit par la plateforme NACEF. H0302 QR Code mode Online : C Pour un ticket signé « Online », le E-MDF doit retourner à la CE un code bidimensionnel (QR Code) conforme aux spécifications de la norme ISO/CEI 18004. Le QR Code doit être facilement lisible avec une impression en une résolution de 300 dpi. Le QR Code doit contenir les informations suivantes structurées en lignes : 1. Ligne 1 : « ONLINE » 2. Ligne 2 : L’identifiant unique du ticket NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 117/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0303 QR Code Mode Offline : C Pour un ticket signé « Offline », le E-MDF doit retourner à la CE un code bidimensionnel (QR Code) conforme aux spécifications de la norme ISO/CEI 18004. Le QR Code doit être facilement lisible avec une impression en une résolution de 300 dpi. Le QR Code doit contenir les informations suivantes structurées en lignes : 1. Ligne 1 : « OFFLINE » 2. L’IMDF 3. Ligne 2 : L’identifiant unique du ticket 4. Le type de l’opération 5. Le type de la transaction 6. Le montant total Hors Taxes 7. Le montant de la taxe 8. La signature électronique H0304 Signature électronique : C À la transmission, la signature électronique CAdES doit être encodée en format DER de l’encodage ASN.1 (ITU-T X.680 - Specification of basic notation). H0401 La signature électronique d’un C ticket demandé par la CE et la génération du QR Code nécessitent que l’E-MDF implémente les services web suivants. Lors de la mise en service (première utilisation avec une CE), l’E-MDF doit obligatoirement faire la demande de synchronisation comme premier appel sur la plateforme NACEF avant tout autre appel. Lors de ce premier appel, l’E-MDF récupère son premier lot d’identifiants uniques et doit retourner le QR Code du « Ticket 0 ». NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 118/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0501 L’E-MDF doit être équipé d'au C moins un port USB (Universal Serial Bus) conforme à la norme USB 2.0 ou plus pour permettre la connectivité avec des périphériques externes. Ce port USB doit être intégré de manière fonctionnelle dans le système, offrir une alimentation suffisante conformément aux spécifications de la norme USB, et être compatible avec les périphériques USB couramment utilisés. Les spécifications et la localisation du port USB sur l'équipement doit être spécifiée dans la documentation technique de l’E-MDF. H0502 Connectivité entre CE et E-MDF : C Si les échanges entre la CE et l’E- MDF se font sur le réseau, les interfaces réseaux doivent être compatibles avec au moins une des normes suivantes : - Ethernet : IEEE 802.3 (10/100/1000/10Gigabit, etc.). - Wi-Fi : IEEE 802.11 (a/b/g/n/ac/ax, etc.). Dans ce cas, en plus des spécifications de base, le système doit intégrer des mécanismes de sécurité robustes, notamment le support de protocoles de chiffrement tels que WPA3 ou équivalent. H0503 Connectivité entre E-MDF et la C PGSCEF : Le E-MDF doit disposer d’une interface permettant l’une des manières suivantes : - La connectivité Ethernet IEEE 802.3 (10/100/1000/10Gigabit, etc.). - Ou La connectivité avec une carte SIM. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 119/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0601 Le module de signature C électronique utilisé par l’E-MDF doit être homologué par l’Agence Nationale de Certification Electronique (ANCE) et le certificat d’homologation doit être en cours de validité. Le certificat d’homologation doit couvrir au moins :  La génération de signature électronique au format CAdES (selon la dernière norme en vigueur / recommandation ANCE).  La validation de signature électronique au format CAdES (selon la dernière norme en vigueur / recommandation ANCE). H0602 Le support de clé E cryptographique utilisé par l’E- MDF doit être homologué par le CERT (Centre d’Études et de Recherches des Télécommunications) et le certificat d’homologation doit être en cours de validité. H0701 Exigences de documentation E pour l’E-MDF : Au moins les documents techniques suivants doivent être fournis : - Matrice de conformité aux exigences techniques et fonctionnelles avec les certifications exigées. - Architecture fonctionnelle et logique. - Spécifications techniques matérielles et logicielles du E-MDF (prérequis pour la CE, interfaces…). - Manuel d’administration et d’intégration du E- MDF. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 120/123 MINISTERE DES FINANCES Diffusion publique Exigences Nature Conformité Description Scénarios Références obligatoire de la de tests dans le dossier (Oui/Non) configuration d’accréditation / homologation (pages, paragraphes) H0801 L’E-MDF doit implémenter au C moins l’une des recommandations algorithmiques indiquées dans le cahier des charges et qui sont extraites du document ETSI TS 119 312 « Electronic Signatures and Infrastructures (ESI); Cryptographic Suites » V1.4.3 (2023-08). Les algorithmes recommandés ci-dessous sont identifiés en tant que Recommended Mechanisms pour les six prochaines années. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 121/123 MINISTERE DES FINANCES Diffusion publique A8 : Modèle d’engagement pour les fournisseurs de caisses enregistreuses fiscales Je m’engage à :  S’assurer que tous les produits homologués continuent de répondre aux exigences d’homologation qui les concernent.  Mettre en œuvre les changements appropriés en cas de nouvelles exigences.  Prendre toutes les dispositions nécessaires pour la réalisation des évaluations initiales et de surveillance.  Ne communiquer que des informations loyales et sincères.  Informer sans délai l’unité d’homologation des changements pouvant avoir des conséquences sur la conformité du produit ou la validité du certificat d’homologation accordé.  Maintenir un versioning pour les différents produits homologués. Les types de versions majeures ou mineures, ainsi que les modifications ou les évolutions réalisées, et leurs dates de publications soient identifiés. Ce qui permettra : - d’assurer la traçabilité des systèmes distribués sur le marché ; - de pouvoir faire une mise à jour ou une nouvelle installation le cas échéant (changement d’exigences de conformité à appliquer, etc.). Enregistrer et mettre continuellement à jour un registre des systèmes et versions distribués à mes clients.  Qualifier, d’une façon sincère, la criticité des évolutions de mon produit, et déclarer les nouvelles versions.  Ne connecter ou intégrer aucun équipement matériel ou logiciel qui peut influencer, modifier ou perturber le fonctionnement normal des caisses enregistreuses fiscales.  Respecter les délais impartis indiqués dans le cahier des charges.  Fournir, à mes clients, ainsi qu’à l’administration fiscale, les données d’archivage, notamment dans le cas où le client cesse d’utiliser le système d’encaissement. La réalisation et la conservation de ces archives garantit l’intégrité et la disponibilité des données archivées en cas de contrôle fiscal durant la période imposée par la réglementation fiscale en vigueur.  Informer les services compétents du ministère des finances des manœuvres frauduleuses (utilisation de logiciels de type Phantomware ou Zapper, …) constatées sur les modules de caisses enregistreuses (article 11 du décret gouvernemental numéro 2019-1126 du 26 novembre 2019).  Fournir à mes clients : - Tous les documents nécessaires au bon fonctionnement des caisses enregistreuses (modes d’emploi, prérequis matériels, etc.) ; - Les procédures de support et de formation le cas échéant ; - Une copie du certificat d’homologation portant le cachet et la signature du fournisseur.  Se doter d’un service d’assistance technique pour garantir le soutien de mes clients (contribuables) durant les heures de travail.  Conclure un contrat de maintenance avec mes clients. Intervenir d’urgence pour résoudre les problèmes liés aux caisses enregistreuses fiscales.  Proposer à mes clients un moyen d’obtenir la mise à jour des logiciels permettant de faire fonctionner les produits à l’identique de la version de produit certifiée qui a diffusée.  Lors de la vente d’une caisse enregistreuse à un client, je m’engage à communiquer, à travers la plateforme dédiée, les informations suivantes : a. Le numéro de série de l’équipement vendu, et de son adresse MAC ; b. L’identité du client (matricule fiscal) ; NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 122/123 MINISTERE DES FINANCES Diffusion publique c. La référence du certificat d’homologation du produit vendu.  Déclarer à travers la plateforme NACEF toutes les interventions de maintenances curatives (suite à un incident) ou évolutives effectuées sur une caisse enregistreuse fiscale. La déclaration doit comprendre : a. le matricule fiscal du client, b. le numéro de série de la CE, c. éventuellement le numéro de série du E-MDF, d. l’identifiant (IMDF) du MDF, e. la date de maintenance, f. le type de maintenance (curative, évolutive), g. la nature de la panne survenue, h. la solution mise en œuvre pour la résolution de l’incident, i. la date de clôture de l’incident. Le non-respect de ces obligations, entraine des sanctions conformément aux dispositions de la réglementation en vigueur. NACEF – CAHIER DES CHARGES POUR L’HOMOLOGATION DES CAISSES ENREGISTREUSES Ver 1.2 123/123