Retour au catalogue des erreurs
BR-FREXT-22BT-129
input

Une ligne DETAIL n'a pas de quantité facturée

Dans le profil étendu, une ligne de sous-type DETAIL — ou sans sous-type — doit porter une quantité facturée (BT-129).

Seul l’émetteur détient cette valeur : Factlint la signale et ne la fabrique jamais. Testez votre facture pour savoir si elle est concernée.

Le message que votre validateur affiche

Recopié tel quel de l’artefact scellé : c’est la phrase exacte que le contrôle imprime quand cette règle échoue.

[BR-FREXT-22]-Each Invoice line (BG-25) shall have an Invoiced quantity (BT-129), if the "Subtype of invoice line item" (EXT-FR-FE-163 / BT-X-8) has the value "DETAIL" or is not specified..

Cité de schematron-fnfe 1.4.0.03, sous licence Apache-2.0.

Requêtes fréquentes autour de ce code

Ces formulations reprennent les recherches réelles d’un intégrateur : code, syntaxe, règle, champ métier et correction.

BR-FREXT-22 Une ligne DETAIL n'a pas de quantité facturéeBR-FREXT-22 Pack Schematron FNFEBR-FREXT-22 BT-129[BR-FREXT-22]-Each Invoice line (BG-25) shall have an Invoiced quantity (BT-129), if the "Subtype of invoice line item" (EXT-FR-FE-163 / BT-X-8) has the value "DETAIL" or is not specified..BR-FREXT-22 correction

Tester votre fichier avec cette erreur en tête

Déposez la facture concernée : le rapport dira si ce code apparaît, où il apparaît dans le document, et si Factlint peut seulement le signaler ou aussi le corriger.

Pour automatiser ce contrôle dans une chaîne ERP, appelez l’API de validation et reliez chaque code rendu à sa fiche publique.

Pourquoi cette erreur se produit

La norme européenne exige une quantité sur chaque ligne ; le profil étendu en dispense les lignes structurantes, et la reporte sur celles qui facturent. Une ligne DETAIL sans quantité n'a pas de prix unitaire vérifiable. Elle ne s'applique qu'aux documents qui déclarent le profil EXTENDED-CTC-FR — la feuille du profil remplace le pack CEN et ajoute ses propres règles de lignes hiérarchisées.

Comment la corriger

Renseignez la quantité, ou donnez à la ligne le sous-type GROUP si elle ne fait que structurer. Factlint ne devine pas une quantité.

Sévérité rendue par le référentiel

Bloquante depuis le 1er septembre 2026 : le socle courant, `fr-2026-09`, scelle l'artefact FNFE 1.4.0.03 en mode fatal, et c'est lui que le moteur épinglé applique par défaut. Une facture émise en août 2026 est jugée contre `fr-2026-08`, où la même règle sort en avertissement — ce qui écarte déjà le verdict « conforme ». L'API rend la sévérité du ruleset épinglé pour la facture jugée.

Exemple de correction XML

AVANT (invalide)
<cac:InvoiceLine><cbc:ID>2</cbc:ID><cbc:LineExtensionAmount currencyID="EUR">124.17</cbc:LineExtensionAmount>…
APRÈS (conforme)
<cac:InvoiceLine><cbc:ID>2</cbc:ID><cbc:InvoicedQuantity unitCode="EA">1</cbc:InvoicedQuantity><cbc:LineExtensionAmount currencyID="EUR">124.17</cbc:LineExtensionAmount>…