Ce que signifie la règle
Une facture Peppol ne peut pas contenir d'éléments vides : chaque élément doit avoir une valeur ou des sous-éléments. Une balise vide comme <cbc:Note/> ou <cac:PartyName></cac:PartyName> n'est pas admise.
Pourquoi elle compte
Peppol BIS Billing 3.0 ajoute cette règle à la norme EN 16931 pour que chaque point d'accès et chaque destinataire traite la facture de la même façon. Le point d'accès émetteur ou récepteur rejette une facture qui ne la respecte pas, et elle n'arrive jamais chez l'acheteur.
Comment corriger
Omettez entièrement les champs facultatifs au lieu de les envoyer vides. Dans votre logiciel de facturation, videz les champs inutilisés pour qu'ils ne soient pas exportés, ou demandez à votre éditeur de ne plus écrire de balises vides. Si vous produisez le XML vous-même, n'écrivez un élément que si vous avez une valeur.
Le texte publié de la règle
Document MUST not contain empty elements. Dans Factur-X 1.09 BASIC, Factur-X 1.09 EN 16931, Factur-X 1.09 EXTENDED, ZUGFeRD 2.5 BASIC, ZUGFeRD 2.5 EN 16931, ZUGFeRD 2.5 EXTENDED, la règle s’énonce ainsi :
Document MUST not contain empty elements. (still status warning) Où cette règle s’applique
| Jeu de règles | Version |
|---|---|
| XRechnung 3.0 (UBL) | 3.0.2 |
| XRechnung 3.0 (UBL credit note) | 3.0.2 |
| XRechnung 3.0 (CII) | 3.0.2 |
| Peppol BIS Billing 3.0 (invoice) | 2026.5 |
| Peppol BIS Billing 3.0 (credit note) | 2026.5 |
| Factur-X 1.09 BASIC | 1.0.9-2 |
| Factur-X 1.09 EN 16931 | 1.0.9-2 |
| Factur-X 1.09 EXTENDED | 1.0.9-2 |
| ZUGFeRD 2.5 BASIC | 2.5.2 |
| ZUGFeRD 2.5 EN 16931 | 2.5.2 |
| ZUGFeRD 2.5 EXTENDED | 2.5.2 |
Vérifier votre fichier
Règles liées
- PEPPOL-EN16931-R010 L'adresse électronique de l'acheteur est obligatoire
- PEPPOL-EN16931-R020 L'adresse électronique du vendeur est obligatoire
- PEPPOL-EN16931-R040 Une remise ou des frais en pourcentage doivent tomber juste
- PEPPOL-EN16931-R041 Un pourcentage nécessite une base
- PEPPOL-EN16931-R042 Une base nécessite un pourcentage
- PEPPOL-EN16931-R043 Le ChargeIndicator doit valoir true ou false