Guides

UBL ou CII : lequel produire ?

La spécification de votre plateforme parle d'UBL, de CII, ou des deux. Ce sont deux façons d'écrire en XML la même facture : voici ce qui les distingue, laquelle produire, et comment vérifier l'une comme l'autre avant de l'émettre.

Deux syntaxes pour une même norme

La norme européenne EN 16931 définit le modèle d'une facture : quelles informations elle porte, et quelles cohérences elles respectent. Elle admet deux syntaxes XML pour l'écrire :

  • CII (Cross Industry Invoice, publié par l'UN/CEFACT), de racine rsm:CrossIndustryInvoice. C'est la syntaxe que Factur-X embarque dans un PDF/A-3 ; un CII se dépose aussi seul, en XML nu.
  • UBL (Universal Business Language 2.1, publié par l'OASIS), de racine Invoice pour une facture et CreditNote pour un avoir. C'est la syntaxe qu'emploie Peppol BIS, le format de facture du réseau Peppol. Un UBL est toujours un XML nu : il n'a pas d'enveloppe PDF.

Les deux portent les mêmes informations sous des noms de balise différents. Pour tout savoir du format hybride, lisez Qu'est-ce que Factur-X ?

L'identifiant de spécification décide du contrôle

Chaque facture déclare la spécification qu'elle suit : c'est l'identifiant de spécification, le terme BT-24 de la norme. En CII, il se déclare dans ram:GuidelineSpecifiedDocumentContextParameter/ram:ID ; en UBL, dans cbc:CustomizationID, directement sous la racine.

Sa valeur indique au destinataire quel jeu de règles appliquer : urn:cen.eu:en16931:2017 pour le socle européen, une forme plus longue pour un profil étendu ou national. Recopiez-la telle que la spécification applicable l'écrit : une valeur approchante désigne une autre spécification, ou aucune.

Lequel produire

La réforme française reconnaît trois formats : le CII, l'UBL, et un format mixte qui associe un XML CII à un PDF/A-3 — c'est Factur-X. Vous en produisez un seul, et le choix dépend de ce que lisent vos destinataires :

  • Vos clients veulent aussi un document lisible. Produisez un Factur-X : le PDF s'ouvre comme n'importe quelle facture, et le CII embarqué sert les systèmes.
  • La chaîne en aval ne lit que du XML. Produisez un CII ou un UBL nu, dans la syntaxe que cette chaîne attend.

Vérifiez ensuite auprès de votre plateforme lequel des trois formats elle accepte : c'est sa spécification qui fait foi, pas ce guide. Si la place de la plateforme dans le circuit n'est pas claire pour vous, lisez Facture électronique : rendez votre facturation maison conforme.

Ce que le validateur juge en UBL

En UBL, le validateur juge les factures et les avoirs qui déclarent l'une de ces deux spécifications :

  • EN 16931, le socle européen ;
  • EXTENDED-CTC-FR, le profil étendu de la réforme française.

Peppol BIS n'est pas pris en charge : un UBL qui déclare l'identifiant de spécification de Peppol est non conforme, car le flux 2 n'admet pas cet identifiant ; son contenu n'est pas jugé. Les profils propres à Factur-X — MINIMUM, BASIC WL, BASIC — n'existent qu'en CII. Un UBL joint à un PDF n'est pas vérifié : déposez le fichier UBL seul.

Valider l'un comme l'autre avant de l'émettre

Un UBL est jugé comme un CII, au même niveau d'exigence : le schéma XML, les règles de la norme EN 16931, les contrôles de la réforme française, et ses règles officielles du flux 2 (CTC-FR), sur toute facture. La seule différence tient au conteneur : un Factur-X passe en plus le contrôle de son PDF/A-3, qu'un XML nu n'a pas.

Chaque anomalie est expliquée en français : le code de la règle, l'endroit exact dans le fichier, et une piste de correction. Chaque code publié a sa page parmi les codes d'erreur du validateur. Déposez votre fichier dans le validateur, tel que votre système le produit. Sans compte.

Portée de cette page

Cette page décrit deux syntaxes et ce que le validateur en juge ; elle ne juge aucun document. Une précision honnête : valide-facture.fr n'est pas une Plateforme Agréée et ne transmet rien. Corrigez ce qu'il signale avant d'émettre : c'est une aide au diagnostic, qui ne se substitue pas à la décision de votre plateforme.

Guides