Le validateur de factures électroniques reconnaît automatiquement le format de votre fichier. Pour chaque format, nous contrôlons la structure selon le schéma XML officiel. Lorsque des règles métier officielles sont disponibles publiquement, nous les contrôlons également. Vous trouverez ci-dessous les formats de facture électronique par pays et ce qui est contrôlé exactement.
Formats de facture électronique par pays
| Pays | Format | Structure (XSD) | Règles métier |
|---|---|---|---|
| Belgique | Peppol BIS Billing 3.0 (UBL)Le format de l’obligation belge. Peppol BIS ne contient pas de règles belges spécifiques. | Oui | Oui |
| UBL.BE / e-FFFAncienne variante belge : structure uniquement (UBL 2.1). | Oui | Non | |
| Pays-Bas | Peppol BIS Billing 3.0 (UBL)Y compris les règles Peppol néerlandaises. | Oui | Oui |
| SI-UBL 2.0 et NLCIUS (UBL et CII) | Oui | Oui | |
| Energie eFactuurStructure UBL uniquement. | Oui | Non | |
| Allemagne | XRechnung 3.0 (UBL et CII) | Oui | Oui |
| ZUGFeRD / Factur-X (tous les profils)Contrôlé selon la version 2.5.2. ZUGFeRD 2.0 : structure uniquement. | Oui | Oui | |
| Peppol BIS Billing 3.0 (UBL)Y compris les règles Peppol allemandes. | Oui | Oui | |
| France | Factur-X (tous les profils) | Oui | Oui |
| CTC Flux 2 et EXTENDED-CTC-FR (UBL et CII)Le CII est contrôlé selon le schéma CII D22B. | Oui | Oui | |
| CDAR (messages de statut) | Oui | Non | |
| PPF Flux 1 et Flux 10 | Non | Non | |
| Italie | FatturaPA 1.2 (FPA12 et FPR12)Y compris les fichiers signés .p7m. Les contrôles propres au SdI ne sont pas effectués. | Oui | Non |
| Peppol BIS Billing 3.0 (UBL)Y compris les règles Peppol italiennes ; pas les règles AGID complémentaires. | Oui | Oui | |
| Espagne | Facturae 3.0 à 3.2.2La signature et VeriFactu ne sont pas contrôlés. | Oui | Non |
| Pologne | KSeF FA(1), FA(2) et FA(3) | Oui | Non |
| Autriche | ebInterface 3.0 à 6.1 | Oui | Non |
| Peppol BIS Billing 3.0 (UBL) | Oui | Oui | |
| Hongrie | NAV Online Számla 2.0 et 3.0 | Oui | Non |
| Tchéquie | ISDOC 6.0 | Oui | Non |
| Suède | Peppol BIS Billing 3.0 (UBL)Y compris les règles Peppol suédoises. | Oui | Oui |
| Svefaktura 1.0 | Oui | Non | |
| Norvège | EHF Billing 3.0 / Peppol BISY compris les règles Peppol norvégiennes. Autres documents EHF : structure uniquement. | Oui | Oui |
| Danemark | Peppol BIS Billing 3.0 (UBL)Y compris les règles Peppol danoises. | Oui | Oui |
| OIOUBLStructure UBL uniquement. | Oui | Non | |
| Finlande | Finvoice 1.3 à 3.0 | Oui | Non |
| TEAPPSXML 2.7.2 et 3.0 | Oui | Non | |
| Peppol BIS Billing 3.0 (UBL) | Oui | Oui | |
| Grèce | Peppol BIS Billing 3.0 (UBL)Y compris les règles Peppol grecques. myDATA n’est pas pris en charge. | Oui | Oui |
| Islande | Peppol BIS Billing 3.0 (UBL)Y compris les règles Peppol islandaises. | Oui | Oui |
| Portugal | CIUS-PT (UBL)Vous pouvez choisir les règles de base EN 16931 dans la liste ; les règles portugaises ne sont pas incluses. | Oui | En partie |
| Roumanie | CIUS-RO (UBL)Vous pouvez choisir les règles de base EN 16931 dans la liste ; les règles roumaines ne sont pas incluses. | Oui | En partie |
| Croatie | eRačun (UBL)Vous pouvez choisir les règles de base EN 16931 dans la liste ; les règles croates ne sont pas incluses. | Oui | En partie |
| eIzvještavanje (e-reporting) | Oui | Non | |
| Serbie | SEF (UBL), eOtpremnica et ePrijemnica | Oui | Non |
| Turquie | UBL-TR / e-FaturaL’enveloppe (Zarf) n’est pas prise en charge. | Oui | Non |
| Arabie saoudite | ZATCA / FATOORA (UBL)Signature, code QR et règles ZATCA non contrôlés. | Oui | Non |
| Peppol hors d’Europe | Peppol PINT (A-NZ, JP, MY, SG, AE, OM)Structure UBL uniquement. | Oui | Non |
| Autres pays de l’UE | EN 16931 (UBL et CII) | Oui | Oui |
| Peppol BIS Billing 3.0 (UBL) | Oui | Oui |
Non pris en charge : NF-e brésilienne, myDATA grec, VeriFactu, PPF Flux 1 et 10, enveloppes Zarf turques et formats non XML.
Le validateur contrôle la structure selon le schéma officiel et, lorsqu’elles sont disponibles, les règles métier officielles. Le résultat est une aide et non une garantie qu’un destinataire, un Access Point ou une plateforme publique acceptera le document. Les plateformes nationales (comme le SdI, KSeF ou le PPF) et les destinataires peuvent effectuer des contrôles supplémentaires, par exemple sur les signatures, la numérotation ou les enregistrements. Votre fichier est traité uniquement dans votre navigateur.
Un validateur par format de facture électronique
Pour les formats les plus demandés, nous avons une page dédiée, avec le validateur déjà réglé sur le bon pays :
- Validateur Factur-X (France et Allemagne) : PDF avec XML intégré.
- XRechnung validator (Allemagne, en anglais).
- SI-UBL validator (Pays-Bas, en anglais).
- KSeF validator (Pologne, en anglais).
- FatturaPA validator (Italie, en anglais).
- Facturae validator (Espagne, en anglais).
Deux contrôles : structure et règles métier
Chaque fichier passe par deux contrôles. D’abord, nous vérifions qu’il suit la structure du schéma officiel : les bons éléments, dans le bon ordre et avec le bon type de données. Ensuite, nous contrôlons les règles métier, comme les champs obligatoires, les calculs et les listes de codes. Pour Peppol BIS, XRechnung, Factur-X et les règles néerlandaises et françaises, ces règles métier sont publiques. Pour les autres formats, il n’existe pas de jeu de règles public. Dans ce cas, nous contrôlons donc uniquement la structure.
Comment le validateur choisit-il automatiquement les règles ?
Si vous choisissez « Automatique », nous lisons d’abord quelques données de votre fichier. Sur cette base, nous choisissons les règles. Sous le résultat, « Détecté grâce à » indique quelles données ont été décisives. Nous regardons trois éléments :
- Le format : UBL ou CII, ou un PDF avec XML intégré comme Factur-X ou ZUGFeRD.
- L’identifiant de spécification (BT-24) : en UBL le champ
CustomizationID, en CIIGuidelineSpecifiedDocumentContextParameter. Cet identifiant indique les règles que suit l’expéditeur. C’est lui qui pèse le plus. - Le cadre de facturation français : un code de B1 à M9 dans
ProfileIDouBusinessProcessSpecifiedDocumentContextParameter. Ce code renvoie aux règles françaises.
Éléments reconnaissables de l’identifiant de spécification
| Élément de l’identifiant | Règles |
|---|---|
poacc:billing:3.0 | Peppol BIS Billing 3.0 |
poacc:selfbilling:3.0 | Peppol BIS Self-Billing 3.0 |
kosit:xrechnung | XRechnung (Allemagne) |
kosit:extension:xrechnung | XRechnung Extension |
nen.nl:nlcius | SI-UBL 2.0 / NLCIUS (Pays-Bas) |
nen.nl:gaccount | SI-UBL 2.0 avec compte G |
factur-x.eu:1p0 | Factur-X / ZUGFeRD, dans le profil indiqué par l’ID (MINIMUM, BASIC WL, BASIC, EXTENDED) |
cpro.gouv.fr | EN 16931 avec les règles françaises (BR-FR) |
extended-ctc-fr | EXTENDED-CTC-FR (France) |
urn:cen.eu:en16931:2017 | EN 16931, la norme européenne (si rien ne suit) |
Un identifiant de spécification inconnu
Un identifiant de spécification se compose de couches. Chaque couche commence par #compliant# (une restriction de la norme) ou #conformant# (une extension). Si nous ne connaissons pas l’identifiant complet, nous retirons la dernière couche et réessayons. Ainsi, une variante inconnue de XRechnung est tout de même contrôlée avec les règles XRechnung. S’il s’agit d’une extension inconnue, nous signalons que des éléments de cette extension peuvent apparaître comme des erreurs.
Le choix ne convient pas ? Choisissez alors vous-même le pays, ou sélectionnez le jeu de règles exact sous « Avancé ». Une facture ou une note de crédit Peppol est toujours contrôlée avec les règles Peppol de la version en vigueur.
Pourquoi un seul validateur pour des formats de facture électronique de plusieurs pays ?
Les entreprises belges envoient leurs factures via Peppol, au format Peppol BIS Billing 3.0. Pourtant, vous recevez aussi des factures de l’étranger, ou vous envoyez vous-même des factures à des clients en Allemagne, en France ou en Italie. En outre, beaucoup de logiciels utilisent un seul format d’exportation pour tous les pays. Avec ce validateur, vous contrôlez donc chaque fichier au même endroit, sans devoir d’abord savoir de quel format il s’agit.
Ce que le validateur ne contrôle pas
Les plateformes nationales comme le SdI en Italie, KSeF en Pologne ou la PPF en France effectuent des contrôles supplémentaires, par exemple sur les signatures, la numérotation ou les enregistrements. Ces contrôles sortent du cadre de ce validateur. Le résultat est donc une aide et non une garantie qu’un destinataire ou une plateforme acceptera le document. Vous voulez contrôler une facture Peppol belge ? Utilisez alors le validateur de factures électroniques et, en cas d’erreur, lisez l’explication des codes d’erreur Peppol.
Sources
Schémas et règles : OASIS (UBL), UN/CEFACT (CII), CEN (EN 16931), OpenPeppol, KoSIT, FNFE-MPE et les éditeurs nationaux, rassemblés par Philip Helger dans phive-rules (Apache 2.0). Contrôle du schéma XML avec libxml2 (xmllint-wasm, MIT).