ediverse Explorer la plateforme

À la une PEPPOL BIS Billing 3.0 L’obligation européenne d’e-invoicing arrive : France sept 2026, Belgique janv 2026, Allemagne 2025.

— 01

Fondamentaux

— 02

Standards

— 03

Messages phares

— 04

Outils

Validateur PEPPOL BIS Billing 3.0 V2

Sur cette page

Validez une facture UBL (Invoice ou CreditNote) contre EN 16931 et les règles métier OpenPEPPOL, sans que la facture quitte votre navigateur.

Collez une facture UBL conforme à PEPPOL BIS Billing 3.0 pour la valider.

Jeu de règles embarqué : 73 règles métier (BR-*, BR-CO-* calculation, PEPPOL-*, UBL-CR-*), 57 Business Terms EN 16931, 83 codes EAS PEPPOL, 1 profil. Sources : docs.peppol.eu, PEPPOL Schematron rules et la norme EN 16931-1:2017.

Comment ça marche

Le validateur applique trois passes :

  1. Bonne formation XML : votre document est passé au DOMParser natif du navigateur. Toute balise mal fermée ou caractère XML invalide est signalé en premier (E_XML_NOT_WELL_FORMED).
  2. Élément racine UBL : la racine doit être <Invoice> ou <CreditNote> dans le namespace UBL 2.1. Sinon : E_NOT_UBL_ROOT.
  3. Règles métier PEPPOL BIS Billing 3.0 : les codes BR-NN et PEPPOL-EN16931-RNNN ci-dessous sont vérifiés contre la structure du document. Chaque diagnostic indique le Business Term EN 16931 concerné (BT-1, BT-24, etc.) et le chemin XPath de l'élément fautif.

Règles implémentées (73)

Le validateur couvre 73 règles, parmi les plus bloquantes en intégration : règles EN 16931 telles que reprises par OpenPeppol, règles propres à Peppol et restrictions de syntaxe UBL. Identifiants et sévérités suivent la release officielle Peppol BIS Billing 3.0 ; les libellés des règles EN 16931 sont ceux du CEN, ceux des règles propres à Peppol sont rédigés par ediverse ; les montants sont comparés comme dans la Schematron (arrondi à deux décimales, puis égalité exacte). La liste est générée depuis le catalogue du validateur : elle correspond exactement à ce que l'outil contrôle.

Règles EN 16931 — présence et valeurs(25)

RègleSévéritéLibellé
BR-01erreurAn Invoice shall have a Specification identifier (BT-24).
BR-02erreurAn Invoice shall have an Invoice number (BT-1).
BR-03erreurAn Invoice shall have an Invoice issue date (BT-2).
BR-04erreurAn Invoice shall have an Invoice type code (BT-3).
BR-05erreurAn Invoice shall have an Invoice currency code (BT-5).
BR-06erreurAn Invoice shall contain the Seller name (BT-27).
BR-07erreurAn Invoice shall contain the Buyer name (BT-44).
BR-08erreurAn Invoice shall contain the Seller postal address.
BR-09erreurThe Seller postal address (BG-5) shall contain a Seller country code (BT-40).
BR-10erreurAn Invoice shall contain the Buyer postal address (BG-8).
BR-11erreurThe Buyer postal address shall contain a Buyer country code (BT-55).
BR-12erreurAn Invoice shall have the Sum of Invoice line net amount (BT-106).
BR-13erreurAn Invoice shall have the Invoice total amount without VAT (BT-109).
BR-14erreurAn Invoice shall have the Invoice total amount with VAT (BT-112).
BR-15erreurAn Invoice shall have the Amount due for payment (BT-115).
BR-16erreurAn Invoice shall have at least one Invoice line (BG-25)
BR-17erreurThe Payee name (BT-59) shall be provided in the Invoice, if the Payee (BG-10) is different from the Seller (BG-4)
BR-18erreurThe Seller tax representative name (BT-62) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11)
BR-19erreurThe Seller tax representative postal address (BG-12) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11).
BR-20erreurThe Seller tax representative postal address (BG-12) shall contain a Tax representative country code (BT-69), if the Seller (BG-4) has a Seller tax representative party (BG-11).
BR-62erreurThe Seller electronic address (BT-34) shall have a Scheme identifier.
BR-63erreurThe Buyer electronic address (BT-49) shall have a Scheme identifier.
BR-CL-01erreurThe document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001.
BR-CL-04erreurInvoice currency code MUST be coded using ISO code list 4217 alpha-3
BR-CL-14erreurCountry codes in an invoice MUST be coded using ISO code list 3166-1

Règles EN 16931 — calculs et décimales(34)

RègleSévéritéLibellé
BR-CO-03erreurValue added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.
BR-CO-10erreurSum of Invoice line net amount (BT-106) = Σ Invoice line net amount (BT-131).
BR-CO-11erreurSum of allowances on document level (BT-107) = Σ Document level allowance amount (BT-92).
BR-CO-12erreurSum of charges on document level (BT-108) = Σ Document level charge amount (BT-99).
BR-CO-13erreurInvoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108).
BR-CO-14erreurInvoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).
BR-CO-15erreurInvoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110).
BR-CO-16erreurAmount due for payment (BT-115) = Invoice total amount with VAT (BT-112) -Paid amount (BT-113) +Rounding amount (BT-114).
BR-CO-17erreurVAT category tax amount (BT-117) = VAT category taxable amount (BT-116) x (VAT category rate (BT-119) / 100), rounded to two decimals.
BR-CO-18erreurAn Invoice shall at least have one VAT breakdown group (BG-23).
BR-CO-19erreurIf Invoicing period (BG-14) is used, the Invoicing period start date (BT-73) or the Invoicing period end date (BT-74) shall be filled, or both.
BR-29erreurIf both Invoicing period start date (BT-73) and Invoicing period end date (BT-74) are given then the Invoicing period end date (BT-74) shall be later or equal to the Invoicing period start date (BT-73).
BR-CO-25erreurIn case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.
BR-DEC-01erreurThe allowed maximum number of decimals for the Document level allowance amount (BT-92) is 2.
BR-DEC-02erreurThe allowed maximum number of decimals for the Document level allowance base amount (BT-93) is 2.
BR-DEC-05erreurThe allowed maximum number of decimals for the Document level charge amount (BT-99) is 2.
BR-DEC-06erreurThe allowed maximum number of decimals for the Document level charge base amount (BT-100) is 2.
BR-DEC-09erreurThe allowed maximum number of decimals for the Sum of Invoice line net amount (BT-106) is 2.
BR-DEC-10erreurThe allowed maximum number of decimals for the Sum of allowanced on document level (BT-107) is 2.
BR-DEC-11erreurThe allowed maximum number of decimals for the Sum of charges on document level (BT-108) is 2.
BR-DEC-12erreurThe allowed maximum number of decimals for the Invoice total amount without VAT (BT-109) is 2.
BR-DEC-13erreurThe allowed maximum number of decimals for the Invoice total VAT amount (BT-110) is 2.
BR-DEC-14erreurThe allowed maximum number of decimals for the Invoice total amount with VAT (BT-112) is 2.
BR-DEC-15erreurThe allowed maximum number of decimals for the Invoice total VAT amount in accounting currency (BT-111) is 2.
BR-DEC-16erreurThe allowed maximum number of decimals for the Paid amount (BT-113) is 2.
BR-DEC-17erreurThe allowed maximum number of decimals for the Rounding amount (BT-114) is 2.
BR-DEC-18erreurThe allowed maximum number of decimals for the Amount due for payment (BT-115) is 2.
BR-DEC-19erreurThe allowed maximum number of decimals for the VAT category taxable amount (BT-116) is 2.
BR-DEC-20erreurThe allowed maximum number of decimals for the VAT category tax amount (BT-117) is 2.
BR-DEC-23erreurThe allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2.
BR-DEC-24erreurThe allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2.
BR-DEC-25erreurThe allowed maximum number of decimals for the Invoice line allowance base amount (BT-137) is 2.
BR-DEC-27erreurThe allowed maximum number of decimals for the Invoice line charge amount (BT-141) is 2.
BR-DEC-28erreurThe allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2.

Règles OpenPeppol (PEPPOL-EN16931-R*)(8)

RègleSévéritéLibellé
PEPPOL-EN16931-R001erreurThe business process identifier (BT-23, ProfileID) is missing.
PEPPOL-EN16931-R002erreurOnly one document-level note (BT-22) is accepted, except when seller and buyer are both German.
PEPPOL-EN16931-R003erreurNeither a buyer reference (BT-10) nor a purchase order reference (BT-13) is given; one of them is required.
PEPPOL-EN16931-R004erreurThe specification identifier (BT-24) does not begin with the Peppol BIS Billing 3.0 value 'urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0', or does not follow the identifier format rules (it contains '::').
PEPPOL-EN16931-R008erreurThe document contains an empty element; Peppol rejects empty elements.
PEPPOL-EN16931-R010erreurThe buyer electronic address (BT-49, EndpointID) is missing.
PEPPOL-EN16931-R020erreurThe seller electronic address (BT-34, EndpointID) is missing.
PEPPOL-EN16931-CL008erreurThe electronic address scheme (schemeID) is not in the Electronic Address Scheme (EAS) code list.

Restrictions de syntaxe UBL (UBL-CR / UBL-DT)(6)

RègleSévéritéLibellé
UBL-CR-002avertissementA UBL invoice should not include the UBLVersionID or it should be 2.1
UBL-CR-003avertissementA UBL invoice should not include the ProfileExecutionID
UBL-CR-004avertissementA UBL invoice should not include the CopyIndicator
UBL-CR-005avertissementA UBL invoice should not include the UUID
UBL-CR-006avertissementA UBL invoice should not include the IssueTime
UBL-DT-01erreurAmounts shall be decimal up to two fraction digits

Confidentialité

Limites

Le validateur n'est pas — encore — un remplaçant 1-pour-1 du Schematron officiel. Ce qui n'est pas couvert en MVP :

  • Les règles VAT complètes (BR-AE-*, BR-E-*, BR-IC-*, BR-O-*, BR-S-*, BR-Z-*) qui valident la cohérence entre catégorie de TVA, exonération, taux et pays.
  • La validation XSD UBL 2.1 stricte (cardinalités enfants, types XSD) — nous nous concentrons sur les Business Terms.
  • La résolution des références entre lignes, AllowanceCharge, et TaxTotal.
  • Les règles de codelist de second rang : UnitOfMeasure, PaymentMeansCode UNTDID 4461, catégories de TVA UNTDID 5305.
  • Les références DocumentReference et leurs MIME types (BG-24).

Pour un pipeline de production, exécuter le Schematron officiel PEPPOL-EN16931-UBL.sch reste recommandé.

Documentation associée

  • PEPPOL — la vue d'ensemble du réseau, du modèle à quatre coins et du calendrier des mandats 2026.
  • EN 16931 — le modèle sémantique européen des éléments cœur d'une facture.
  • Validateur cXML — même approche pour les documents Ariba / SAP Business Network.