La nouvelle version 2.3.3 de ZUGFeRD est désormais disponible pour les abonnés à XML Update Professional. Nous avons également apporté des améliorations à la gestion des remises par ligne ainsi qu'aux remises globales sur facture pour les formats ZUGFeRD et XRechnung.
Mises à jour XSD
- Nouvelle version 2.3.3 de ZUGFeRD
- Amélioration de la remise par ligne pour les formats ZUGFeRD et XRechnung
- Amélioration de la remise globale sur facture pour les formats ZUGFeRD et XRechnung
Concernant le point 1) Nouvelle version 2.3.3 de ZUGFeRD
La nouvelle version 2.3.3 de ZUGFeRD a été publiée par l'AWV au milieu du deuxième trimestre 2025. Cette version ne comporte aucun changement fonctionnel ; il s'agit principalement de corrections de bugs dans les fichiers exemples, de sorte qu'aucune action immédiate n'est requise.
Concernant le point 2) Amélioration de la remise par ligne pour les formats ZUGFeRD et XRechnung
Bien que la nouvelle version de ZUGFeRD n'apporte pas d'améliorations fonctionnelles, nous en avons profité pour revoir la gestion des remises à la demande de plusieurs partenaires.
Les nœuds suivants sont concernés :
- BT-146 Prix net de l'article = montant de la ligne divisé par la quantité (la valeur totale remisée est utilisée directement ici pour déterminer le prix unitaire net remisé) (P-S-I-LINE_NET-PRICE-CHARGE-AMOUNT).
- BG-27 Remises au niveau de la ligne de facture = À l'avenir, ce nœud ne sera créé que si la condition de création renvoie une valeur positive (CHECK-P-S-I-LINE_DISCOUNT-TRUE/CHECK-P-S-CM-LINE_DISCOUNT-TRUE/CHECK-P-P-I-LINE_DISCOUNT-TRUE/CHECK-P-P-CM-LINE_DISCOUNT-TRUE)
- BG-27-1 Indicateur de remise, valeur = Défini sur « false » pour les remises (P-S-I-LINE_ALLOWANCE-CHARGE-INDICATOR/P-S-CM-LINE_ALLOWANCE-CHARGE-INDICATOR/P-P-I-LINE_ALLOWANCE-CHARGE-INDICATOR/P-P-CM-LINE_ALLOWANCE-CHARGE-INDICATOR)
- BT-138 Pourcentage de remise au niveau de la ligne de facture = Le pourcentage de remise de ligne est renvoyé dans ce nœud. (P-S-I-LINE_ALLOWANCE-CALC-PERCENT/P-S-CM-LINE_ALLOWANCE-CALC-PERCENT/P-P-I-LINE_ALLOWANCE-CALC-PERCENT/P-P-CM-LINE_ALLOWANCE-CALC-PERCENT).
- BT-137 Montant de base de la remise au niveau de la ligne de facture = La base d'évaluation pour la remise de ligne est calculée dans ce nœud. Nous utilisons le montant de la ligne auquel nous ajoutons le montant de la remise de ligne. (P-S-I-LINE-DISCOUNT-BASIS-NET-AMOUNT/P-S-CM-LINE-DISCOUNT-BASIS-NET-AMOUNT/P-P-I-LINE-DISCOUNT-BASIS-NET-AMOUNT/P-P-CM-LINE-DISCOUNT-BASIS-NET-AMOUNT)
- BT-136 Montant de la remise au niveau de la ligne de facture = Le montant de la remise de ligne est renvoyé dans ce nœud. Nos tests ont montré qu'il est préférable d'utiliser le mappage de données en cas de remises différentes. C'est pourquoi nous filtrons à nouveau le mappage de données vers la ligne correcte. (P-S-I-LINE_ALLOWANCE_DISCOUNT-AMOUNT/P-S-CM-LINE_ALLOWANCE_DISCOUNT-AMOUNT/P-P-I-LINE_ALLOWANCE_DISCOUNT-AMOUNT/P-P-CM-LINE_ALLOWANCE_DISCOUNT-AMOUNT)
- BT-139 Motif de la remise au niveau de la ligne de facture = Il s'agit d'une valeur statique identique dans tous les schémas XSD pour une remise. (P-S-I-LINE_DISCOUNT-REASON/P-S-CM-LINE_DISCOUNT-REASON/P-P-I-LINE_DISCOUNT-REASON/P-P-CM-LINE_DISCOUNT-REASON)
- BT-131 Montant net de la ligne de facture = Ce nœud est rempli avec le montant de la ligne. (P-S-I-LINE_LINETOTALAMOUNT/P-S-CM-LINE_LINETOTALAMOUNT/P-P-I-LINE_LINETOTALAMOUNT/P-P-CM-LINE_LINETOTALAMOUNT)
Concernant le point 3) Amélioration de la remise générale sur facture pour les formats ZUGFeRD et XRechnung
Comme pour le niveau de ligne, nous avons dû effectuer de nombreux ajustements et modifications au niveau de l'en-tête.
- BG-20 Remises au niveau du document = Ce nœud présente deux particularités. 1. Filtrage par pourcentage de TVA. (P-S-I-HEADER_GROUP_LINE_VAT/P-S-CM-HEADER_GROUP_LINE_VAT/P-P-I-HEADER_GROUP_LINE_VAT/P-P-CM-HEADER_GROUP_LINE_VAT) 2. Condition de création. Comme pour le niveau de ligne, ce nœud n'est créé que s'il existe une remise au niveau du document - champ : Montant de la remise sur facture > 0. (CHECK_P-S-I-HEADER_INVOICE-DISCOUNT/CHECK_P-S-CM-HEADER_INVOICE-DISCOUNT/CHECK_P-P-I-HEADER_INVOICE-DISCOUNT/CHECK_P-P-CM-HEADER_INVOICE-DISCOUNT)
- BG-20-1 Indicateur de remise, valeur = Défini sur « false » pour les remises (P-S-I-LINE_ALLOWANCE-CHARGE-INDICATOR/P-S-CM-LINE_ALLOWANCE-CHARGE-INDICATOR/P-P-I-LINE_ALLOWANCE-CHARGE-INDICATOR/P-P-CM-LINE_ALLOWANCE-CHARGE-INDICATOR)
- BT-93 Montant de base de la remise au niveau du document = En filtrant sur les pourcentages de TVA, nous accédons directement aux lignes afin de pouvoir renvoyer le montant de la ligne (P-S-I-LINE_INVOICE-DISCOUNT-BASIS-AMOUNT/P-S-I-LINE_INVOICE-DISCOUNT-BASIS-AMOUNT/P-P-I-LINE_INVOICE-DISCOUNT-BASIS-AMOUNT/P-P-CM-LINE_INVOICE-DISCOUNT-BASIS-AMOUNT)
- BT-92 Montant de la remise au niveau du document = Le montant de la remise sur facture est renvoyé dans ce nœud. (P-S-I-LINE_INVOICE-DISCOUNT/P-S-CM-LINE_INVOICE-DISCOUNT/P-P-I-LINE_INVOICE-DISCOUNT/P-P-CM-LINE_INVOICE-DISCOUNT)
- BT-97 Motif de la remise au niveau du document = Comme pour le nœud BT-139, il s'agit d'une valeur statique.
- BT-95-0 Type de taxe (code) = Il s'agit d'une valeur statique « VAT ». Ce nœud est utilisé dans tous les schémas XSD.
- BT-95 Code de la catégorie de TVA de la déduction au niveau du document = Dans ce nœud, nous renvoyons la catégorie de taxe correspondante issue de la configuration de la matrice de comptabilisation de la TVA. Cela est rendu possible grâce au mappage de données en filtrant via les deux champs « Groupe comptabilisation marché TVA » et « Groupe comptabilisation produit TVA ».
- BT-96 Taux de TVA pour la remise au niveau du document = Le taux de pourcentage de TVA est renvoyé dans ce nœud.
- BT-106 Somme des montants nets de tous les articles de la facture = En raison de la gestion des remises, nous avons dû étendre ce nœud standard. Nous utilisons désormais un mappage de données qui nous permet de passer de l'en-tête aux lignes afin de calculer la somme de tous les montants et des montants de remise sur facture à partir de là. (P-S-I-HEADER_LINETOTALAMOUNT/P-S-CM-HEADER_LINETOTALAMOUNT/P-P-I-HEADER_LINETOTALAMOUNT/P-P-CM-HEADER_LINETOTALAMOUNT)
- BT-108 Somme des suppléments au niveau du document = Ce champ est actuellement encore statique et renseigné avec 0. Dans l'un des prochains fichiers de configuration XSD, un ajout sera effectué pour la norme BC.
- BT-107 Somme des remises au niveau du document = Le champ « Montant de la remise sur facture » est utilisé ici pour refléter la remise au niveau du document. (P-S-I-HEADER_ALLOWANCE-TOTAL-AMOUNT/P-S-CM-HEADER_ALLOWANCE-TOTAL-AMOUNT/P-P-I-HEADER_ALLOWANCE-TOTAL-AMOUNT/P-P-CM-HEADER_ALLOWANCE-TOTAL-AMOUNT)
- BT-109 Montant total de la facture hors TVA = Ce nœud est renseigné avec le montant net de la facture ; nous utilisons pour cela le champ « Montant ». (P-S-I-HEADER_TAX-BASIS-TOTAL-AMOUNT/P-S-CM-HEADER_TAX-BASIS-TOTAL-AMOUNT/P-P-I-HEADER_TAX-BASIS-TOTAL-AMOUNT/P-P-CM-HEADER_TAX-BASIS-TOTAL-AMOUNT)
- BT-111 Montant total de la taxe dans la devise de comptabilisation = La taxe est spécifiée dans ce nœud. Pour ce faire, nous prenons le champ « Montant TTC » et nous le soustrayons du champ « Montant ». (P-S-I-HEADER_CALCULATETAXTOTALVATAMOUNT/P-S-CM-HEADER_CALCULATETAXTOTALVATAMOUNT/P-P-I-HEADER_CALCULATETAXTOTALVATAMOUNT/P-P-CM-HEADER_CALCULATETAXTOTALVATAMOUNT)
- BT-112 Montant total de la facture TTC = Ce nœud est renseigné avec le montant brut, via le champ « Montant TTC ». (P-S-I-HEADER_GRANDTOTALAMOUNT/P-S-CM-HEADER_GRANDTOTALAMOUNT/P-P-I-HEADER_GRANDTOTALAMOUNT/P-P-CM-HEADER_GRANDTOTALAMOUNT)
- BT-115 Montant dû = Ce nœud est renseigné avec le montant brut, via le champ « Montant TTC ». (P-S-I-HEADER_GRANDTOTALAMOUNT/P-S-CM-HEADER_GRANDTOTALAMOUNT/P-P-I-HEADER_GRANDTOTALAMOUNT/P-P-CM-HEADER_GRANDTOTALAMOUNT)
Les mêmes ajustements ont été effectués pour le format XRechnung avec un petit ajout :
- BT-101 Pourcentage de supplément au niveau du document = Ce nœud requiert le pourcentage de remise au niveau du document. Cela n'a malheureusement pas été simple car nous ne disposons pas de champ correspondant dans BC, ce qui nous a contraints à créer un mappage de données en calculant cette valeur. (P-S-I-LINE_INVOICE-DISCOUNT-PERCENTAGE/P-S-CM-LINE_INVOICE-DISCOUNT-PERCENTAGE/P-P-I-LINE_INVOICE-DISCOUNT-PERCENTAGE/P-P-CM-LINE_INVOICE-DISCOUNT-PERCENTAGE)