BT-149Item price base quantityBT-150Item price base quantity unit of measure code
Texte officiel de la règle
[BR-TMP-3] If BT-149 (Item price base quantity) is present in both GrossPriceProductTradePrice and NetPriceProductTradePrice, the values must be identical. If BT-150 (unit of measure code) is present on the NetPrice path, it must also be present on the GrossPrice path and be identical.
Le texte normatif est en anglais ; il est cité tel quel.
Pourquoi cette erreur apparaît
Cette règle ne s'applique que lorsqu'un autre champ a une certaine valeur (par exemple un code de moyen de paiement ou un type de facture). Votre fichier déclenche la condition mais ne fournit pas les données alors obligatoires, ou fournit des données alors interdites.
Comment corriger
Soit modifiez la valeur déclenchante pour que la condition ne s'applique plus, soit ajoutez/supprimez les éléments dépendants comme le décrit le texte de la règle. Le test XPath ci-dessus montre exactement quelle valeur déclenche la condition.
Ce que le validateur vérifie
Élément vérifié (contexte):
CII
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItemTest (XPath):
not(ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:BasisQuantity and ram:SpecifiedLineTradeAgreement/ram:NetPriceProductTradePrice/ram:BasisQuantity) or (ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:BasisQuantity = ram:SpecifiedLineTradeAgreement/ram:NetPriceProductTradePrice/ram:BasisQuantity and (not(ram:SpecifiedLineTradeAgreement/ram:NetPriceProductTradePrice/ram:BasisQuantity/@unitCode and ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:BasisQuantity/@unitCode) or ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:BasisQuantity/@unitCode = ram:SpecifiedLineTradeAgreement/ram:NetPriceProductTradePrice/ram:BasisQuantity/@unitCode))
Vérifier votre facture
Déposez votre XML ou PDF dans le validateur : chaque règle en échec renvoie vers sa page ici. Gratuit, sans compte, le fichier n'est pas conservé.
La même vérification par API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateRègles liées
BR-TMP-2BT-124 "Emplacement du document externe" doit être une URL absolue au schéma valideBR-TMP-4BT-123 "Description du justificatif" (ram:Name) au plus une fois dans…BR-TMP-5BT-125 "Document joint" (ram:AttachmentBinaryObject) au plus une fois dans…BR-TMP-6Les dates en UBL doivent être transmises au format YYYY-MM-DDBR-TMP-7Les dates UNCEFACT/CII doivent porter l'attribut format="102" et être transmises…
Questions fréquentes
Que signifie BR-TMP-3 ?
BR-TMP-3 est une règle xrechnung : If BT-149 (Item price base quantity) is present in both GrossPriceProductTradePrice and NetPriceProductTradePrice, the values must be identical. If BT-150 (unit of measure code) is present on the NetPrice path, it must also be present on the GrossPrice path and be identical.
Ma facture sera-t-elle rejetée à cause de BR-TMP-3 ?
Oui. BR-TMP-3 est classée « bloquante » ; les validateurs (plateformes agréées, points d'accès Peppol, KoSIT, KSeF) rejettent la facture tant qu'elle n'est pas corrigée.
À quels formats s'applique BR-TMP-3 ?
XRechnung en syntaxe UBL ou CII, y compris les PDF Factur-X / ZUGFeRD au profil XRECHNUNG. Obligatoire pour facturer les administrations publiques allemandes. Syntaxe : CII.
Source: XRechnung 3.0.2, schematron 2.6.0 (KoSIT, September 2026). Catalogue généré à partir des jeux de règles officiels le 2026-10-15.