Aller au contenu

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

BR-AE-07 : Donner un taux de TVA de 0 à des frais au niveau du document en autoliquidation

Des frais au niveau du document de catégorie de TVA AE ont besoin d'un cbc:Percent d'exactement 0 dans leur catégorie de taxe, et un taux omis échoue aussi.

EN 16931Erreur : le document n'est pas valideTVARemises et frais

Sur cette page

La réponse courte

BR-AE-07 échoue lorsqu'un cac:AllowanceCharge dont le cbc:ChargeIndicator vaut true a une cac:TaxCategory de catégorie AE dont le taux n'est pas zéro. Dans l'exemple enregistré, les frais d'intervention de 5.00 n'ont aucun cbc:Percent ; ajoutez <cbc:Percent>0</cbc:Percent> juste après leur cbc:ID.

Omettre le taux n'équivaut pas à indiquer zéro. La règle lit la valeur de cbc:Percent, et sans élément il n'y a aucune valeur égale à 0.

Ce que la règle vérifie

Elle examine chaque cac:TaxCategory placée dans des frais, cbc:ChargeIndicator à true, dont le cbc:ID vaut AE sous le schéma VAT, et signale chaque échec sur cette cac:TaxCategory. Les remises en autoliquidation sont contrôlées par BR-AE-06.

Un taux présent doit être nul en tant que nombre : 0 et 0.00 ont tous deux passé lors d'un essai, et des taux de 5 et de 20 sur les frais d'intervention ont chacun échoué à cette règle et à rien d'autre.

Avec cbc:Percent absent des frais, cette règle a été le seul constat de l'exemple enregistré : aucune autre règle n'a signalé le taux manquant.

Le taux des frais n'est pas comparé à celui de la ventilation et ne change pas la somme. Avec les frais à 20, la base imposable en autoliquidation de 28.50 a continué de satisfaire BR-AE-08 lors d'un essai, car cette règle compte les frais AE à n'importe quel taux.

TermeSignificationÉlément UBL
BT-102Code de catégorie de TVA des charges ou frais au niveau du documentcac:AllowanceCharge[cbc:ChargeIndicator = true]/cac:TaxCategory/cbc:ID
BT-103Taux de TVA des charges ou frais au niveau du documentcac:AllowanceCharge[cbc:ChargeIndicator = true]/cac:TaxCategory/cbc:Percent

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 frais sont ajoutés par un modèle qui écrit le code de catégorie mais n'a pas de champ pour le taux, en supposant qu'un taux d'autoliquidation n'apporte rien.
  • Les valeurs vides sont supprimées à la sérialisation, et le taux du code de taxe des frais d'intervention était resté vide.
  • Le taux des frais vient du paramétrage national des frais, qui contient le taux normal, alors que la catégorie suit l'indicateur d'autoliquidation du client.
  • Les majorations sont générées par un autre module que les lignes et n'ont jamais reçu la règle qui met les taux d'autoliquidation à 0.

Comment corriger le document

  1. Vérifiez que les frais font partie de l'opération en autoliquidation, comme des frais d'intervention ou de déplacement pour le même service. Si c'est le cas, la catégorie AE reste.
  2. Écrivez cbc:Percent avec la valeur 0 dans la cac:TaxCategory des frais, après cbc:ID et avant cac:TaxScheme, en remplaçant tout autre taux présent.
  3. Ne touchez ni au montant des frais ni à la base imposable en autoliquidation ; dans l'exemple enregistré, ils sont déjà cohérents à 5.00 et 28.50.
  4. Faites écrire au sérialiseur un taux nul au lieu de le supprimer, et mettez à 0 le code de taxe des frais en autoliquidation pour que tous les futurs frais le portent.

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 : des frais d'intervention en autoliquidation sans taux

<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReason>Call-out charge</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="GBP">5.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>AE</cbc:ID>
    <cac:TaxScheme>
      <cbc:ID>VAT</cbc:ID>
    </cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>

Fragment de la facture corrigée : le taux de 0 se place entre la catégorie et le schéma fiscal

<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReason>Call-out charge</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="GBP">5.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>AE</cbc:ID>
    <cbc:Percent>0</cbc:Percent>
    <cac:TaxScheme>
      <cbc:ID>VAT</cbc:ID>
    </cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>

La facture corrigée a <cbc:Percent>0</cbc:Percent> dans la catégorie de taxe des frais d'intervention ; la facture en échec n'y a aucun élément de taux, et rien d'autre ne diffère. Le document en échec ne signale que BR-AE-07.

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 aux documents UBL Invoice et CreditNote. Convertie en avoir, la facture en échec a signalé le même constat sur le deuxième cac:AllowanceCharge lors d'un essai.
  • Signalée par l'étape EN 16931, une fois pour chaque frais en autoliquidation en échec.
  • Des frais en autoliquidation exigent aussi les identifiants des parties selon BR-AE-04, et tous les frais au niveau du document ont besoin d'un code de catégorie de TVA selon BR-37.

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-AE-07 (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.