Aller au contenu

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

BR-CL-15 : Utiliser un code de pays ISO 3166-1 pour le pays d'origine de l'article

Le pays d'origine d'un article doit être un code ISO 3166-1 à deux lettres en majuscules, comme DE. EU n'est pas un code de pays et échoue.

EN 16931Erreur : le document n'est pas valideListes de codesLignes et prix

Sur cette page

La réponse courte

BR-CL-15 échoue lorsque cac:Item/cac:OriginCountry/cbc:IdentificationCode n'est pas un code de la liste ISO 3166-1 alpha-2. L'article enregistré indiquait EU comme origine ; l'élément attend le code d'un seul pays, DE dans la facture corrigée.

L'Union européenne n'est pas un pays de cette liste. Si la marchandise a été produite dans un État membre, indiquez cet État ; si l'origine est inconnue ou répartie entre plusieurs pays, omettez cac:OriginCountry pour l'article.

Ce que la règle vérifie

Chaque pays d'origine d'article est contrôlé, un par ligne, et le constat désigne la ligne : cac:InvoiceLine[1]/cac:Item[1]/cac:OriginCountry[1]/cbc:IdentificationCode[1] dans l'exemple enregistré.

Les espaces autour du code sont ignorés et le reste doit correspondre en majuscules. Lors d'un essai, DE a réussi, tandis que de et le code à trois lettres DEU ont échoué.

La liste acceptée est celle que BR-CL-14 applique aux adresses, avec XI et 1A en plus des codes ISO. XI a réussi comme pays d'origine lors d'un essai.

Les pays des adresses sont hors du champ de cette règle. Ils relèvent de BR-CL-14, si bien qu'un code erroné dans une adresse ne signale jamais BR-CL-15.

TermeSignificationÉlément UBL
BT-159Pays d'origine de l'articlecac:InvoiceLine/cac:Item/cac:OriginCountry/cbc:IdentificationCode (cac:CreditNoteLine in a credit note)

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 :

  • Les données de référence des produits indiquent l'origine EU, telle qu'elle peut figurer sur un emballage, au lieu du pays de fabrication.
  • Les origines sont enregistrées sous forme de codes ISO alpha-3 comme DEU, ou de noms de pays.
  • La valeur est saisie à la main en minuscules.
  • Une abréviation d'étiquette comme UK est recopiée ; le code ISO du Royaume-Uni est GB.

Comment corriger le document

  1. Repérez la ligne grâce à l'emplacement du constat, ainsi que le produit qu'elle décrit.
  2. Déterminez le pays où la marchandise a été produite et écrivez son code ISO 3166-1 alpha-2 en majuscules.
  3. Quand seule une région comme l'UE est connue, omettez cac:OriginCountry pour cet article plutôt que d'envoyer un code de région.
  4. Convertissez les codes alpha-3 et les noms là où les données produit entrent dans votre système, avec la même correspondance que pour les pays des adresses.

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 : le pays d'origine de l'article est EU

<cac:Item>
  <cbc:Name>Example service</cbc:Name>
  <cac:OriginCountry>
    <cbc:IdentificationCode>EU</cbc:IdentificationCode>
  </cac:OriginCountry>
  <!-- tax category omitted from this fragment -->
</cac:Item>

Fragment de la facture corrigée : le pays d'origine de l'article est DE

<cac:Item>
  <cbc:Name>Example service</cbc:Name>
  <cac:OriginCountry>
    <cbc:IdentificationCode>DE</cbc:IdentificationCode>
  </cac:OriginCountry>
  <!-- tax category omitted from this fragment -->
</cac:Item>

Seul le code d'origine diffère : EU dans la facture en échec, DE dans la facture corrigée. Le document en échec ne signale que BR-CL-15, et l'étape Peppol a réussi.

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 ; EU comme origine sur une ligne d'avoir n'a signalé que cette règle lors d'un essai.
  • Signalée à l'étape EN 16931 seulement : dans chaque essai, l'étape Peppol a réussi, quel que soit le code d'origine.
  • cac:OriginCountry peut aussi contenir un cbc:Name, que l'étape EN 16931 déconseille par l'avertissement UBL-CR-591. Cette règle ne lit que le code.

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 BR-CL-15 (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.