Aller au contenu

Ironfang Finance - Référence des règles

PEPPOL-EN16931-CL001 : Déclarer une pièce jointe intégrée avec l'un des six codes MIME de Peppol

Peppol accepte six codes MIME sur une pièce jointe intégrée, les six mêmes que BR-CL-24. Une variante comme application/x-pdf échoue aux deux règles.

Peppol BIS BillingErreur : le document n'est pas valideListes de codesProcessus et références

Sur cette page

La réponse courte

PEPPOL-EN16931-CL001 échoue lorsque le mimeCode d'un cbc:EmbeddedDocumentBinaryObject n'est pas exactement l'un des six codes que Peppol autorise pour les pièces jointes : PDF, PNG, JPEG, CSV, Excel xlsx et tableur OpenDocument. Le PDF enregistré était déclaré application/x-pdf, un nom non enregistré que certains logiciels utilisent encore pour le PDF ; la valeur à envoyer est application/pdf.

C'est la copie Peppol de BR-CL-24. Les deux règles ont les six mêmes valeurs et les comparent de la même façon : une valeur qui échoue à l'une échoue à l'autre, et une seule correction efface les deux.

Ce que la règle vérifie

Chaque objet binaire intégré qui porte un attribut mimeCode est contrôlé, et le constat pointe vers cet élément.

La comparaison est exacte : aucun retrait d'espaces et aucune normalisation de la casse. Lors d'un essai, application/PDF, application/pdf avec une espace en tête et un attribut vide ont chacun échoué, et chacun a aussi été signalé par BR-CL-24.

Les types d'autres formats échouent même lorsque ce sont des types MIME enregistrés. Lors d'un essai, application/vnd.ms-excel pour un ancien classeur Excel et text/plain ont tous deux été rejetés.

Aucune valeur ne sépare cette règle de BR-CL-24 : les deux listes concordent entrée par entrée et aucune des deux règles ne retire d'espaces à l'attribut, si bien que dans chaque essai les deux constats sont arrivés ensemble.

TermeSignificationÉlément UBL
BT-125-1Code MIME du document jointcac:AdditionalDocumentReference/cac:Attachment/cbc:EmbeddedDocumentBinaryObject/@mimeCode
BT-125Document jointcac:AdditionalDocumentReference/cac:Attachment/cbc:EmbeddedDocumentBinaryObject

Comment une intégration en arrive là

Causes possibles, déduites de la forme de la règle et non d'une utilisation mesurée :

  • Une bibliothèque MIME ou une table du système d'exploitation renvoie un alias ancien comme application/x-pdf.
  • Le type de l'ancien format binaire d'Excel, application/vnd.ms-excel, est envoyé pour tout tableur.
  • L'attribut est recopié depuis les métadonnées du fichier sans normaliser la casse ni les espaces.
  • Un export texte ou XML est joint tel quel, alors qu'aucun de ces deux types ne figure dans la liste.

Comment corriger le document

  1. Déterminez le format à partir du contenu du fichier ou d'un contrôle fiable de l'extension, et non d'après ce que propose une bibliothèque.
  2. Faites correspondre le format aux six valeurs autorisées par une table fixe, pour qu'un PDF soit toujours envoyé en application/pdf.
  3. Convertissez tout autre format, comme un document Word ou un classeur .xls, en PDF, xlsx ou ods avant de l'intégrer, et adaptez le nom du fichier.
  4. Corrigez la valeur une fois, dans la correspondance ; les contrôles EN 16931 et Peppol lisent le même attribut.

Valider votre facture corrigée

Avant et après

Ce sont des extraits, pas des documents complets. Les documents synthétiques complets dont ils proviennent sont liés ci-dessous.

Fragment de la facture en échec : la feuille de temps PDF est déclarée application/x-pdf

<cac:AdditionalDocumentReference>
  <cbc:ID>TIMESHEET-001</cbc:ID>
  <cbc:DocumentDescription>Timesheet</cbc:DocumentDescription>
  <cac:Attachment>
    <cbc:EmbeddedDocumentBinaryObject mimeCode="application/x-pdf" filename="timesheet.pdf">JVBERi0xLjQK</cbc:EmbeddedDocumentBinaryObject>
  </cac:Attachment>
</cac:AdditionalDocumentReference>

Fragment de la facture corrigée : le même fichier déclaré application/pdf

<cac:AdditionalDocumentReference>
  <cbc:ID>TIMESHEET-001</cbc:ID>
  <cbc:DocumentDescription>Timesheet</cbc:DocumentDescription>
  <cac:Attachment>
    <cbc:EmbeddedDocumentBinaryObject mimeCode="application/pdf" filename="timesheet.pdf">JVBERi0xLjQK</cbc:EmbeddedDocumentBinaryObject>
  </cac:Attachment>
</cac:AdditionalDocumentReference>

Seul l'attribut mimeCode diffère : application/x-pdf dans la facture en échec, application/pdf dans la facture corrigée, pour le même contenu de timesheet.pdf. Le document en échec signale aussi BR-CL-24 sur le même élément, le contrôle EN 16931 par rapport aux six mêmes valeurs.

Ce que le validateur a signalé

Enregistré avec phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, le moteur du validateur gratuit, sur des données synthétiques. Un résultat enregistré est une preuve de non-régression pour ces documents ; ce n'est pas une certification.

Où la règle s'applique

  • S'applique à Invoice et CreditNote ; lors d'un essai, une pièce jointe déclarée application/x-pdf dans un avoir a signalé cette règle et BR-CL-24.
  • Une règle Peppol BIS Billing 3.0, signalée à l'étape Peppol avec la liste de codes de la version figée de mai 2026.
  • Une pièce jointe sans aucun mimeCode n'atteint jamais cette règle : lors d'un essai, elle a échoué à l'étape XSD, qui exige l'attribut.
  • Un document référencé par URL dans cac:ExternalReference n'est pas intégré, n'a pas de code MIME et échappe à la règle.

Portée et source

Rédigé pour Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, tel qu'appliqué aux documents Invoice et CreditNote en UBL 2.1. D'autres profils, syntaxes et versions peuvent définir cet identifiant autrement. Version du catalogue d'aide 2026-09-28.1 : source vérifiée le 2026-09-28, explication mise à jour le 2026-09-28.

La définition officielle de PEPPOL-EN16931-CL001 (en anglais) contient le texte normatif et le test. Cette page en est notre explication, pas une copie.

Cette aide ne modifie pas le verdict du moteur. Corriger ce constat ne signifie pas que le document passe toutes les étapes de validation, et la validation ne certifie pas la conformité juridique ou fiscale et ne transmet aucun document via Peppol.