Aller au contenu

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

BR-CL-05 : Utiliser un code ISO 4217 pour la devise de comptabilisation de la TVA

cbc:TaxCurrencyCode doit être un code de la liste alphabétique ISO 4217 figée, comme EUR. Le code retiré HRK, les codes numériques et les minuscules sont rejetés.

EN 16931Erreur : le document n'est pas valideListes de codesTVA

Sur cette page

La réponse courte

BR-CL-05 échoue lorsque cbc:TaxCurrencyCode, la devise dans laquelle le vendeur comptabilise la TVA, n'est pas un code de la liste alphabétique ISO 4217 figée avec cette version. Écrivez le code à trois lettres de cette devise en majuscules : EUR dans l'exemple corrigé, là où l'exemple en échec avait HRK.

HRK était le code de la kuna croate, que l'euro a remplacée en 2023, et il ne figure plus dans la liste. La facture en échec portait aussi HRK comme devise de son total de TVA dans la devise de comptabilisation, si bien que ce montant a également été rejeté.

Ce que la règle vérifie

La règle lit cbc:TaxCurrencyCode et rien d'autre, et seulement lorsque le document en contient un. L'élément est facultatif : une facture dont la TVA est comptabilisée dans la devise de facturation l'omet et n'est pas contrôlée ici.

Le code est débarrassé de ses espaces puis recherché en tenant compte de la casse. Lors d'un essai, 978, le code ISO numérique de l'euro, et le mot EURO ont tous deux échoué. EUR entouré d'espaces a réussi cette règle mais a été signalé par BR-53, car le currencyID EUR du total de TVA ne correspondait plus au code tel qu'il était écrit.

La liste figée a un trou : STN, le code actuel de la dobra de São Tomé-et-Príncipe, en est absent, alors que l'ancien STD y figure encore. Lors d'un essai, STN aux deux endroits a échoué à cette règle et à BR-CL-03 ; STD a réussi l'étape EN 16931 et a été rejeté sur le montant par PEPPOL-EN16931-CL007, dont la liste fait l'inverse.

Seul le code est jugé. Qu'il diffère de cbc:DocumentCurrencyCode est contrôlé par PEPPOL-EN16931-R005, et qu'un total de TVA existe dans cette devise par BR-53.

TermeSignificationÉlément UBL
BT-6Code de devise de comptabilisation de la TVAcbc:TaxCurrencyCode
BT-111Montant total de la TVA de la facture dans la devise de comptabilisationcac:TaxTotal/cbc:TaxAmount (in the tax total without cac:TaxSubtotal)

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 :

  • La devise de comptabilisation de la TVA est réglée une fois dans la configuration et contient encore un code retiré depuis, comme HRK après le passage de la Croatie à l'euro.
  • La devise est enregistrée sous son code ISO numérique, 978 pour l'euro, et transmise telle quelle.
  • Un nom de devise ou une abréviation comme EURO est saisi là où le code est attendu.
  • Un formateur met les codes en minuscules, ou la valeur a été saisie à la main en minuscules.

Comment corriger le document

  1. Déterminez la devise dans laquelle le vendeur tient sa comptabilité de TVA pour cette opération ; pour un vendeur qui déclare la TVA en euros, c'est EUR.
  2. Écrivez son code alphabétique ISO 4217, trois lettres majuscules sans espaces, dans cbc:TaxCurrencyCode.
  3. Utilisez le même code comme currencyID du cbc:TaxAmount du second cac:TaxTotal, celui sans ventilation, qui indique le total de TVA converti dans cette devise.
  4. Si la TVA est finalement comptabilisée dans la devise de facturation, supprimez plutôt cbc:TaxCurrencyCode et le second total de taxe.
  5. Revoyez les réglages de devise enregistrés lorsqu'un pays change de monnaie ; un code valide au moment de la configuration peut ensuite disparaître de la liste.

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 devise de comptabilisation de la TVA et son total de TVA sont tous deux en HRK

<cbc:DocumentCurrencyCode>GBP</cbc:DocumentCurrencyCode>
<cbc:TaxCurrencyCode>HRK</cbc:TaxCurrencyCode>
<!-- buyer reference, parties and the first tax total omitted from this fragment -->
<cac:TaxTotal>
  <cbc:TaxAmount currencyID="HRK">5.80</cbc:TaxAmount>
</cac:TaxTotal>

Fragment de la facture corrigée : EUR aux deux endroits

<cbc:DocumentCurrencyCode>GBP</cbc:DocumentCurrencyCode>
<cbc:TaxCurrencyCode>EUR</cbc:TaxCurrencyCode>
<!-- buyer reference, parties and the first tax total omitted from this fragment -->
<cac:TaxTotal>
  <cbc:TaxAmount currencyID="EUR">5.80</cbc:TaxAmount>
</cac:TaxTotal>

Deux valeurs diffèrent, HRK dans la facture en échec et EUR dans la facture corrigée : cbc:TaxCurrencyCode et le currencyID du total de TVA dans cette devise. BR-CL-05 est signalé sur le code de devise. BR-CL-03 et PEPPOL-EN16931-CL007 sont signalés sur le cbc:TaxAmount du second cac:TaxTotal, qui porte le même code invalide comme devise. Corriger le code aux deux endroits efface les trois constats.

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, un avoir avec HRK aux deux endroits a signalé les trois mêmes règles.
  • L'étape Peppol ne contrôle pas cbc:TaxCurrencyCode par rapport à une liste de devises. Lors d'un essai où seul cet élément était changé en HRK, l'étape Peppol a signalé PEPPOL-EN16931-R055, qui n'a trouvé aucun total de TVA dans la devise de comptabilisation, et l'étape EN 16931 a ajouté BR-53 à cette règle.
  • La liste est le même état de l'ISO 4217 que BR-CL-03 et BR-CL-04 appliquent aux montants et à la devise de la facture.

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-05 (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.