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.

Validateur SBDH PEPPOL

Validateur d'enveloppe SBDH (Standard Business Document Header) côté client. Vérifie sender / receiver ICD, document type, process ID PEPPOL BIS 3.0, RFC 3339, présence du payload — sans envoyer la moindre donnée à un serveur.

Collez une enveloppe SBDH (StandardBusinessDocument) pour valider l'en-tête PEPPOL.

Comment ça marche

SBDH (Standard Business Document Header) est l'enveloppe XML normalisée par ISO/IEC 9735 et profilée par UN/CEFACT puis par GS1 XML 3.0 pour encapsuler un document métier (UBL Invoice, UBL CreditNote, EDIFACT INVOIC…) pendant son transport. Sur le réseau OpenPEPPOL, chaque document échangé entre Access Points via AS4 est emballé dans un <StandardBusinessDocument> qui transporte :

  • Les identifiants ISO 6523 du sender et du receiver (ex. 0192:991825827).
  • La nature exacte du payload (Standard URI, TypeVersion, Type local).
  • Un GUID d'instance (InstanceIdentifier) pour la traçabilité.
  • Le BusinessScope DOCUMENTID et PROCESSID PEPPOL.

Le pipeline du validateur :

  1. Parsing XML (DOMParser côté navigateur, fast-xml-parser fallback).
  2. Recherche de la racine StandardBusinessDocument.
  3. Extraction de chaque bloc d'en-tête (Sender, Receiver, DocumentIdentification, BusinessScope).
  4. Application des contrôles ci-dessous.

Règles vérifiées

  • Élément racine : StandardBusinessDocument (préfixe libre). Le namespace canonique est http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader — un namespace différent déclenche un avertissement, pas une erreur.
  • HeaderVersion : doit valoir exactement 1.0 (SBDH 1.3 reste sur le tag 1.0). Toute autre valeur ou absence déclenche une erreur bloquante.
  • Sender / Receiver : au moins un de chaque, avec <Identifier> non vide. Le scheme ICD (préfixe avant le :) est confronté à la liste ISO 6523 ci-dessous ; un ICD non reconnu déclenche un avertissement.
  • DocumentIdentification : les cinq champs Standard, TypeVersion, InstanceIdentifier, Type, CreationDateAndTime sont obligatoires. CreationDateAndTime doit être au format RFC 3339 (YYYY-MM-DDThh:mm:ssZ ou avec offset).
  • BusinessScope : PEPPOL exige deux entrées <Scope> — l'une de type DOCUMENTID, l'autre de type PROCESSID. L'absence de l'une ou de l'autre déclenche un avertissement. Les InstanceIdentifier au format urn:peppol:bis:… sont confrontés à la liste embarquée.
  • Loopback : si Sender et Receiver portent exactement la même valeur, un avertissement est émis (configuration souvent involontaire en intégration).
  • Présence du payload : un élément métier doit suivre le <StandardBusinessDocumentHeader> ; un StandardBusinessDocument sans corps déclenche un avertissement.

Schémas ISO 6523 ICD supportés

La liste suivante couvre les ICD activement utilisés sur le réseau OpenPEPPOL. Le registre OASIS complet contient ~250 codes ; nous en embarquons les 68 principaux pour la reconnaissance et l'étiquetage.

Code ICD Registre / pays
0002 FR SIRENE
0007 SE Organisationsnummer
0009 FR SIRET
0037 LY-FI Finnish OVT
0060 DUNS
0088 GS1 GLN
0090 SST
0096 DK CVR (legacy)
0097 IT Fiscal Code (CF)
0106 EU VIES VAT
0130 DG GROW Directorate
0135 SIA Object Identifier
0142 SECETI
0151 AU Business Number (ABN)
0183 CH UID
0184 DK CVR-P
0190 NL Chamber of Commerce (KVK)
0191 EE Commercial Register
0192 NO Enhetsregisteret
0193 UBL.BE
0195 SG Unique Entity Number (UEN)
0196 IS Kennitala
0198 DK ERST (Erhvervsstyrelsen)
0199 LEI (Legal Entity Identifier)
0200 LV Register
0201 IT IPA Index
0204 DE Leitweg-ID (LWID)
0208 BE CBE (Crossroads Bank for Enterprises)
0209 GS1 Identification Keys
0210 IT Codice Fiscale (CF)
0211 IT Partita IVA (VAT)
0212 SE F-skattebevis
0213 BE Belgian Registration
0218 FI Y-tunnus (Business ID)
0221 JP CGI Corporate Number
0230 CN Unified Social Credit Identifier
9901 DK P-nummer (legacy)
9910 HU VAT
9913 ES VAT
9914 AT VAT
9915 AT Government
9918 IBAN (international bank account)
9920 ES VAT (legacy)
9922 AD VAT
9923 AL VAT
9924 BA VAT
9925 BE VAT
9926 BG VAT
9927 CY VAT
9928 CZ VAT
9929 DE VAT
9930 EE VAT
9931 GR VAT
9932 ES VAT
9933 FI VAT
9934 FR VAT
9935 GB VAT
9936 HR VAT
9937 LU VAT
9938 LV VAT
9939 LT VAT
9940 MT VAT
9941 NL VAT
9942 PT VAT
9943 RO VAT
9944 SE VAT
9945 SI VAT
9946 SK VAT

Identifiants PEPPOL BIS 3.0 reconnus

Le validateur reconnaît les identifiants courants de la suite PEPPOL BIS 3.0 et leur attache un libellé :

  • urn:peppol:bis:billing:3.0:invoice — Invoice.
  • urn:peppol:bis:billing:3.0:creditnote — CreditNote.
  • urn:peppol:bis:ordering:3.0:order — Order.
  • urn:peppol:bis:ordering:3.0:orderresponse — OrderResponse.
  • urn:peppol:bis:despatch:3.0:despatchadvice — DespatchAdvice.
  • urn:peppol:bis:catalogue:3.0:catalogue — Catalogue.
  • urn:peppol:bis:mlr:3.0:mlr — Message Level Response.

Côté process :

  • urn:peppol:bis:billing:3.0 — Process Billing 3.0.
  • urn:peppol:bis:ordering:3.0 — Process Ordering 3.0.
  • urn:peppol:bis:despatch:3.0 — Process Despatch 3.0.

Limites

  • Pas de validation XSD complète de l'enveloppe — uniquement les règles listées ci-dessus. Le schéma officiel StandardBusinessDocumentHeader.xsd est strict sur quelques cardinalités secondaires que nous ne couvrons pas.
  • Pas de validation du payload wrappé. Si le corps est un UBL Invoice, utilisez Validateur UBL 2.1 ou Validateur PEPPOL en aval.
  • Pas de vérification de signature ni de chaîne TLS — l'enveloppe est examinée en clair, sans couche AS4.

Confidentialité

Documentation associée

Dernière mise à jour: 18 mai 2026