Aller au contenu

Ironfang Finance - Preuves

Ce que prouve un rapport signé

Une signature lie une observation d'Ironfang Finance aux fichiers et au jeu de règles listés. L'intégrité du rapport et la validité de la facture sont des résultats distincts.

Vérifier un rapport sans compte. La vérification contrôle la signature du manifeste, toutes les empreintes incluses et tout horodatage requis. Elle ne relance pas PHIVE. Un rapport vérifié peut consigner une facture non valide.

Pour garder le paquet sur votre ordinateur, téléchargez le vérificateur hors ligne pour Linux, macOS ou Windows. Vérifiez l'archive avec le fichier SHA256SUMS de la version et obtenez les clés publiques de façon indépendante. Le vérificateur ne demande pas de clé API et ne fait aucune requête réseau.

Demander un rapport

Envoyez un POST à /finance/v1/einvoices/reports avec une clé qui a finance:einvoices:read. Fournissez {"operation_id":"your-operation-uuid"}. L'opération doit appartenir à votre organisation et son résultat enregistré doit encore être conservé. Le portail propose aussi le téléchargement d'un rapport signé depuis les résultats enregistrés. L'émission nécessite un service de signature activé ; HTTP 503 report_unavailable signifie qu'il n'est pas disponible et laisse le résultat enregistré inchangé.

Les paquets de génération contiennent exactement le XML validé. Ajoutez "include_pdf": true pour lier un PDF lisible fraîchement généré et la version de son modèle. Les imports uniquement validés ne conservent pas le XML source, si bien que leurs rapports contiennent l'empreinte de la source sans fichier XML. Ils ne peuvent pas inclure de PDF de facture lisible.

L'émission ne crée aucune nouvelle opération de validation ni aucun coût d'utilisation, et n'enregistre aucune autre copie hébergée. Des téléchargements répétés peuvent avoir des heures d'émission, des signatures, des jetons d'horodatage ou des octets PDF différents. Les faits de la validation d'origine restent figés. L'émission d'un rapport est refusée après la suppression ou l'expiration du résultat. Un rapport téléchargé peut toujours être vérifié hors ligne.

Rapports de résultats V2

Les résultats produits via l'API V2 (Peppol BIS Billing 3, XRechnung et ZUGFeRD / Factur-X, en XML ou, pour ZUGFeRD / Factur-X, en PDF avec le XML de la facture intégré) ont leur propre rapport : envoyez {"operation_id":"your-operation-uuid"} en POST à /finance/v2/einvoices/reports avec une clé qui a finance:einvoices:read. Son manifeste (ironfang/finance/einvoice/report-manifest/v2) consigne l'entrée par son empreinte et, pour un PDF, le XML intégré par son empreinte ; la version du jeu de règles avec sa famille, sa variante, sa syntaxe, son périmètre et la somme de contrôle du manifeste de la chaîne ; pour une version PDF, le moteur PDF, les profils PDF/A et la table de liaison qu'elle fixe ; les deux moteurs par empreinte d'image ; chaque groupe de contrôles et chaque étape ; ce qui n'a pas été vérifié ; et les fichiers de règles de la version par leur empreinte. Le paquet contient le manifeste, sa signature, le résultat enregistré exact, les constats complets et la page lisible. Un résultat V2 n'a pas de PDF de facture lisible.

Les rapports V2 sont signés avec les mêmes clés sous leur propre domaine de signature, si bien qu'une signature V1 ne peut jamais être lue comme V2, ni l'inverse. Pour un résultat produit via V1, le même endpoint émet exactement le rapport V1. Vérifiez l'une ou l'autre version à /finance/v2/einvoices/reports/verify, qu'utilise la page de vérification ; l'endpoint de vérification de V1 ne lit que les rapports V1. Un rapport sur un PDF ne dit pas si le PDF visible montre la même facture que son XML : cela n'a pas été vérifié.

Contenu du paquet

  • manifest.json : les faits canoniques d'Ironfang Finance, le jeu de règles/VES et l'image du moteur exacts, les sommes de contrôle des artefacts exécutables, les issues des étapes, le nombre complet de constats, les empreintes des sources, les versions du générateur et du rendu le cas échéant, l'heure d'émission, la clé de signature et les limites de ce qui est affirmé.
  • signature.json : la signature Ed25519 et l'ID de la clé, avec un séparateur de domaine propre à Ironfang Finance.
  • result.json et findings.json : la réponse enregistrée exacte et le tableau complet des constats, chacun lié par son empreinte et sa longueur en octets.
  • report.html : une vue imprimable et échappée, dérivée du manifeste signé. La vérification contrôle qu'elle correspond.
  • document.xml et, en option, readable.pdf : le XML généré conservé et la représentation lisible demandée.
  • timestamp.tsq et timestamp.tsr : présents ensemble lorsque la politique signée exige un horodatage RFC 3161.

Ironfang Finance conserve actuellement au plus 1 000 constats renvoyés. Si un résultat enregistré indique que ses constats ont été tronqués, l'émission du rapport renvoie 422 report_incomplete. Une liste partielle n'est jamais présentée comme un relevé signé complet des constats. Les versions de bibliothèques absentes de l'observation d'origine ne sont pas reconstituées à partir du validateur qui se trouve en service à ce moment-là.

Confiance et horodatage

L'endpoint des clés publiques contient les clés configurées par l'opérateur. Obtenez les clés indépendamment du rapport lui-même. Les clés actives émettent des rapports ; les clés retirées vérifient les rapports antérieurs ; les clés révoquées sont refusées. La vérification hors ligne reflète la liste de clés que vous fournissez, tenez donc les révocations à jour. Une clé incluse dans le paquet ou fournie par un attaquant n'est pas une ancre de confiance indépendante.

Aucune autorité d'horodatage n'est actuellement configurée. L'heure d'émission est une affirmation du service Ironfang Finance. Si l'horodatage est configuré, seul le condensé du manifeste séparé par domaine est envoyé à l'autorité d'horodatage configurée. La politique signée exige la paire d'horodatage renvoyée ; la retirer ou échouer à sa vérification indépendante auprès de l'autorité de certification rend le rapport non vérifié. Le vérificateur public ne fait aucun appel réseau, y compris vers une autorité d'horodatage.

Limites et confidentialité

Les paquets compressés comme décompressés sont limités à 48 Mio, avec des limites par membre et une liste d'autorisation exacte de neuf noms au plus. Les entrées ZIP en double, inconnues ou dangereuses sont rejetées. Le contrôle hébergé n'accepte que des octets ZIP, les traite de façon transitoire, ne récupère aucune URL de document et n'envoie aucun fichier ailleurs. La CLI hors ligne ne fait aucun appel réseau.

Une signature ne transmet pas de factures, n'enregistre pas de participants Peppol, ne fait pas d'Ironfang un point d'accès (Access Point), ne certifie pas la conformité juridique ou fiscale, ne prouve pas qu'une facture a été acceptée et ne remplace pas un examen comptable ou normatif. Consultez le guide de validation pour comprendre ce que PHIVE a vérifié.