Règles métier Peppol BIS Billing 3.0 : guide complet
Comprendre et résoudre les erreurs de validation Peppol BIS Billing 3.0. Règles PEPPOL-EN16931, BR, UBL-CR et comment les corriger dans vos factures UBL.
Validez votre fichier maintenant
Gratuit, instantané et 100 % dans votre navigateur - aucun fichier n'est jamais envoyé.
Qu'est-ce que Peppol BIS Billing 3.0 ?
Peppol BIS Billing 3.0 (Business Interoperability Specification) est la spécification de facturation électronique du réseau Peppol. Elle définit les règles métier (business rules) qui s'appliquent aux factures UBL 2.1 transmises via le réseau Peppol, en plus des contraintes de la norme européenne EN 16931.
Les règles Peppol BIS 3.0 sont organisées en plusieurs séries : les règles BR (business rules de base EN 16931), les règles PEPPOL-EN16931-R (règles Peppol spécifiques), et les règles UBL-CR (contraintes UBL). Chaque règle a un identifiant unique et un niveau de sévérité (fatal ou warning).
Pour les entreprises devant transmettre des factures via Peppol (marchés publics dans de nombreux pays, B2B obligatoire en Belgique, Pays-Bas, etc.), la conformité à BIS Billing 3.0 est obligatoire. Les Access Points Peppol rejettent automatiquement les factures qui ne respectent pas les règles fatales.
Erreurs de règles métier les plus fréquentes
Voici les règles Peppol BIS 3.0 qui génèrent le plus d'erreurs :
PEPPOL-EN16931-R003 : référence acheteur (BT-10) obligatoire
Peppol BIS 3.0 rend la référence acheteur (cbc:BuyerReference ou cac:OrderReference/cbc:ID) obligatoire, même si elle est facultative dans l'EN 16931 de base. La référence acheteur sert à acheminer la facture au sein de l'organisation de l'acheteur. Son absence entraîne un rejet au niveau des points d'accès Peppol.
Le code de moyen de paiement doit provenir du sous-ensemble UNCL4461 autorisé
Alors que l'EN 16931 autorise n'importe quel code de moyen de paiement UNCL4461, Peppol BIS 3.0 restreint les codes autorisés. Les codes valides les plus courants sont 30 (virement), 49 (prélèvement) et 58 (virement SEPA). Le code 1 (par instrument non spécifié par ailleurs) n'est pas accepté.
PEPPOL-EN16931-R010 : adresse électronique de l'acheteur (EndpointID) obligatoire
Peppol BIS 3.0 exige l'adresse électronique de l'acheteur (cbc:EndpointID avec un identifiant de schéma EAS valide) afin que la facture puisse être acheminée vers le destinataire sur le réseau. Un endpoint acheteur manquant ou au schéma incorrect est l'une des causes les plus fréquentes de rejet de facture Peppol.
PEPPOL-EN16931-R004 : CustomizationID doit avoir la valeur Peppol correcte
Le cbc:CustomizationID doit être exactement : urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0. Même des variations mineures (mauvais séparateur, numéro de version) provoquent un échec d'identification du schéma. Cette valeur est sensible à la casse.
PEPPOL-EN16931-R120 : calcul du montant net de la ligne de facture
Le montant net de la ligne de facture (BT-131) doit être égal à la quantité multipliée par le prix net (par quantité de base), plus les frais au niveau de la ligne et moins les remises au niveau de la ligne. Même un écart d'arrondi de 0,01 sur une seule ligne provoque un rejet au point d'accès de l'acheteur.
Comment lire et interpréter les erreurs de validation
Les outils de validation Peppol retournent des erreurs avec un identifiant de règle (ex: PEPPOL-EN16931-R001), un niveau de sévérité (fatal ou warning), un XPath pointant vers l'élément problématique, et un message descriptif. Les erreurs fatales empêchent la transmission via Peppol.
Le XPath est particulièrement utile pour localiser l'erreur dans votre XML. Par exemple, /Invoice/cac:TaxTotal/cac:TaxSubtotal/cbc:TaxAmount pointe vers le montant de TVA dans un sous-total. Utilisez un éditeur XML avec support XPath pour naviguer vers l'élément problématique.
Les warnings ne bloquent pas la transmission mais signalent des pratiques non recommandées. Il est conseillé de les corriger également pour maximiser la compatibilité avec tous les systèmes récepteurs du réseau Peppol.
Bonnes pratiques pour éviter les erreurs Peppol
La première bonne pratique est de valider vos factures avant transmission, à chaque étape du développement. ValidateFin permet une validation gratuite et instantanée contre les règles EN 16931 et Peppol BIS 3.0 dans votre navigateur.
Utilisez des librairies Peppol reconnues pour générer vos factures UBL plutôt que de construire le XML manuellement. Des librairies open source existent pour Java (phase4), .NET (Peppol-dotnet), et Python qui implémentent correctement les règles métier.
Abonnez-vous aux mises à jour Peppol BIS : les règles évoluent régulièrement (nouvelles versions BIS 3.0.x). Les Access Points rejettent parfois des factures valides selon une ancienne version des règles. Vérifiez que votre implémentation cible la version actuelle de BIS 3.0.
Validez vos factures Peppol maintenant
Testez la conformité Peppol BIS 3.0 de vos factures UBL avec ValidateFin gratuitement.
Valider mes factures UBL/PeppolQuestions fréquemment posées
Quelle est la différence entre EN 16931 et Peppol BIS 3.0 ?
EN 16931 est la norme européenne de base définissant le modèle sémantique de la facture électronique. Peppol BIS 3.0 est un profil d'implémentation UBL de EN 16931 avec des règles supplémentaires spécifiques au réseau Peppol. BIS 3.0 est plus restrictif que EN 16931.
Mes factures passent EN 16931 mais échouent Peppol BIS 3.0 - pourquoi ?
Peppol BIS 3.0 ajoute des règles PEPPOL-EN16931-R spécifiques au-delà de EN 16931. Ces règles portent souvent sur des contraintes supplémentaires de calcul, des formats de référence, ou des éléments obligatoires supplémentaires.
Comment obtenir le schematron Peppol BIS 3.0 pour validation locale ?
Oui. La règle Peppol BIS 3.0 PEPPOL-EN16931-R003 rend la référence acheteur (BT-10, mappée sur cbc:BuyerReference ou cac:OrderReference/cbc:ID) obligatoire. Demandez à vos acheteurs leur valeur de référence préférée - il s'agit généralement d'un numéro de bon de commande ou d'un code de centre de coûts utilisé pour l'acheminement interne.
Les règles Peppol sont-elles les mêmes dans tous les pays ?
Les règles de base BIS 3.0 sont communes. Certains pays ajoutent des extensions nationales (ex: Germany B2B extension). Vérifiez avec votre Access Point si des règles nationales supplémentaires s'appliquent.
Comment corriger PEPPOL-EN16931-R004 ?
Oui, Peppol BIS Billing 3.0 couvre les factures (Invoice UBL) et les notes de crédit (Credit Note UBL). Les deux types de documents doivent respecter les mêmes règles métier.
Que signifie une erreur UBL-CR ?
Les règles UBL-CR (UBL Constraint Rules) vérifient que le XML est conforme au schéma UBL 2.1 de OASIS. Elles détectent des éléments absents, mal ordonnés, ou avec des types de données incorrects.
ValidateFin valide-t-il Peppol BIS 3.0 complet ?
ValidateFin valide la conformité UBL/Peppol BIS 3.0 incluant les règles EN 16931, PEPPOL-EN16931-R et UBL-CR. La validation est effectuée côté client dans votre navigateur, sans envoi de données.
Comment tester l'envoi via le réseau Peppol sans production ?
Peppol fournit un réseau de test (Peppol Test Network) accessible via des Access Points de test. La plupart des Access Points proposent un environnement sandbox gratuit ou à coût réduit pour les tests d'intégration.
Les règles Peppol BIS 3.0 couvrent-elles la TVA inversée ?
Oui, les règles BR-AE (reverse charge) définissent comment documenter la TVA inversée dans une facture Peppol. Les codes de catégorie de taxe AE, avec un montant TVA de 0, sont utilisés dans ce cas.
À quelle fréquence les règles Peppol BIS sont-elles mises à jour ?
Peppol publie généralement une ou deux mises à jour par an. Les nouvelles versions sont annoncées sur le site de OpenPeppol avec un délai de transition. Surveillez les annonces de votre Access Point pour les mises à jour importantes.