Pour qui
Pour celles et ceux qui écrivent peu de factures et n’ont pas de logiciel de facturation qui produit Factur-X : artisans, indépendants, petites associations. Une Factur-X est un PDF lisible dans lequel est intégré un fichier XML avec les mêmes données, structurées selon la norme européenne EN 16931. C’est l’un des trois formats du socle de la réforme de la facturation électronique, avec UBL et CII.
Important : entre entreprises françaises, une facture électronique doit passer par une plateforme agréée. Un document envoyé par e-mail ne remplit plus l’obligation, selon impots.gouv.fr. Les petites et micro-entreprises ont jusqu’au 1er septembre 2027 pour émettre leurs factures électroniquement (impots.gouv.fr, page modifiée le 26/05/2026). Cet outil n’est pas une plateforme agréée : il crée le fichier, il ne le transmet pas. Il vous sert à produire une Factur-X propre, par exemple pour la déposer sur votre plateforme ou pour un client qui la demande.
Comment ça marche
- Déposer le PDF. L’outil affiche un aperçu et cherche dans le texte du PDF le numéro, les dates, les adresses, les lignes, les totaux, l’IBAN, le SIREN et le n° de TVA.
- Vérifier le formulaire. Vert : contrôlé par le calcul (IBAN, quantité × prix = montant, totaux concordants). Jaune : proposition à vérifier dans le PDF. Rouge : manque ou incorrect. En cliquant dans un champ, vous voyez sous le champ l’extrait du PDF d’où vient la donnée.
- Choisir le régime de TVA si ce n’est pas le cas normal : franchise en base, autoliquidation, livraison intracommunautaire.
- Créer et valider. L’outil écrit le XML Factur-X, profil EN 16931, et le valide (schéma XML et règles Factur-X). Sans erreur, vous enregistrez le PDF Factur-X – ou le XML seul.
Vous n’avez pas de PDF ? « Remplir sans PDF » ouvre le formulaire vide ; vous obtenez alors un XML seul, que le convertisseur transforme en PDF Factur-X avec une présentation lisible.
Les régimes de TVA proposés
Dans le cas normal, chaque ligne porte son taux : 20 %, 10 %, 5,5 % ou 2,1 %, les taux de métropole de l’article L. 213-151 du code des impositions sur les biens et services (version en vigueur au 1er janvier 2027), tous admis par la règle G1.24 de la DGFiP. Pour les cas sans TVA, l’outil écrit la catégorie de la norme et un code officiel de motif d’exonération (liste VATEX), dont la DGFiP donne la signification dans l’annexe 7 de ses spécifications externes :
- Franchise en base – catégorie E, code
VATEX-FR-FRANCHISE, « France domestic VAT franchise in base » (article 293 B du CGI selon la DGFiP). - Autoliquidation en France – catégorie AE, code
VATEX-FR-AE, « Exempt based on 2 of article 283 of the General Tax Code », réservé à la facturation domestique en France. - Autoliquidation par un client d’un autre pays de l’UE – catégorie AE, code
VATEX-EU-AE(« Reverse charge »). - Livraison intracommunautaire exonérée – catégorie K, code
VATEX-EU-IC(« Intra-community supply »).
L’outil n’ajoute pas de texte de mention légale dans le XML : le code suffit aux règles de la norme, et la mention figure déjà sur votre PDF. Quel régime s’applique à votre activité, l’outil ne le décide pas – c’est votre responsabilité.
En franchise en base, la norme EN 16931 exige pour les lignes exonérées un n° de TVA intracommunautaire ou un identifiant fiscal du vendeur (règle BR-E-02). Si vous n’avez pas de n° de TVA, le formulaire vous demande l’identifiant fiscal (BT-32). Quel identifiant y inscrire, les spécifications de la DGFiP ne le précisent pas ; l’outil ne le devine pas.
Exemple : la facture d’un artisan électricien
Une entreprise fictive a écrit sa facture en PDF : en-tête du vendeur, client sous « Client » avec son SIREN, numéro FA-2026-0117 du 03/11/2026, date de livraison 28/10/2026, trois lignes, et en pied de page RCS, n° de TVA et IBAN. L’outil en reprend 24 données et les trois lignes :
- 100 m de câble R2V à 0,95 € : 100 × 0,95 = 95,00 €, comme dans le PDF – vert.
- 3 heures de pose à 55,00 € : 3 × 55,00 = 165,00 € – vert.
- 1 interrupteur différentiel à 38,00 € – vert.
- Total des lignes 95,00 + 165,00 + 38,00 = 298,00 €, le PDF indique « Total HT 298,00 € ». TVA 20 % sur 298,00 € = 59,60 €, et 298,00 + 59,60 = 357,60 €, le PDF indique « Total TTC 357,60 € ». Les deux totaux sont donc verts.
- L’IBAN a une clé de contrôle correcte – vert. Les SIREN du vendeur (repris de « RCS Exempleville 000 000 000 ») et du client, l’échéance (« à 30 jours, soit le 03/12/2026 ») et les adresses sont jaunes : probables, mais non recalculables.
Un clic sur « Créer et valider la Factur-X » suffit : la validation officielle ne signale aucune erreur, et le PDF Factur-X peut être enregistré. Le XML contient les deux SIREN avec l’identifiant de schéma 0002. Les tests automatiques de l’outil rejouent ce déroulé à chaque modification, ainsi que celui d’une micro-entreprise en franchise en base (« TVA non applicable, art. 293 B du CGI » sur le PDF, montants comme « 2 700,00 € »).
Comment la reconnaissance fonctionne – et où elle échoue
L’outil lit le texte contenu dans le PDF avec sa position sur la page. Il y cherche des libellés comme « Facture n° », « Date de livraison » ou « Total HT » et prend la valeur à côté ou en dessous. Il reconnaît les adresses à la ligne code postal + ville, les lignes de facture aux lignes où quantité × prix donne le montant. Il lit les dates comme 03/11/2026 ou 5 novembre 2026 et les montants comme 2 700,00 €. Ce sont des règles simples, pas une intelligence artificielle : avec une mise en page inhabituelle, une donnée peut atterrir dans le mauvais champ ou manquer. C’est pourquoi tout ce qui ne se recalcule pas est en jaune.
- Factures scannées : elles ne contiennent qu’une image. L’outil n’a pas de reconnaissance de caractères (OCR) ; vous remplissez alors le formulaire à la main.
- Prix TTC : si les lignes sont indiquées TTC, l’outil les convertit en HT et vous le signale. Un écart d’un centime est possible : vérifiez les totaux.
- Ligne manquante : si les lignes reconnues ne donnent pas le total HT du PDF, l’outil le signale. Il manque le plus souvent une ligne ou une remise.
Ce qui se passe techniquement
L’outil reprend votre PDF tel quel comme partie visible et y ajoute :
- le XML comme fichier intégré
factur-x.xml, syntaxe CII, profil EN 16931 ; - le marquage PDF/A-3 – la version d’archivage de PDF qui autorise les fichiers intégrés – avec les métadonnées qui permettent aux logiciels de reconnaître la Factur-X ;
- un profil de couleurs sRGB, exigé par PDF/A, calculé par xmoo.app à partir de la norme IEC 61966-2-1.
Que le PDF final respecte PDF/A dépend aussi du PDF d’origine. L’outil vous avertit de trois choses qu’il ne peut pas réparer : des polices non intégrées, du JavaScript, d’autres pièces jointes. Les tests automatiques contrôlent les PDF produits avec veraPDF ; un PDF créé par « Imprimer en PDF » de Chrome passe sans aucune infraction.
Ce que l’outil ne vérifie pas
- Les règles françaises de la réforme : la validation est celle de Factur-X et de la norme EN 16931. Les règles de gestion de la DGFiP (par exemple le cadre de facturation ou le SIREN dans l’annuaire) ne sont pas contrôlées ; l’outil signale seulement un SIREN manquant (règle G1.63) et un SIREN qui n’a pas 9 chiffres (G1.89). Détails dans la visionneuse.
- Les mentions obligatoires du droit français ne sont pas vérifiées une à une. Une adresse incomplète ou une date de livraison manquante donne une remarque, pas une erreur.
- Factures en euros, profil EN 16931 seulement. Avoirs, remises et frais sur l’ensemble de la facture et autres devises ne sont pas prévus dans le formulaire.
- L’outil vérifie le format, pas le contenu : taux, régime et montants relèvent de vous. Avant l’enregistrement, vous le confirmez.
- L’outil compare seulement les totaux avec le PDF, pas chaque donnée. Les PDF chiffrés et les fichiers de plus de 50 Mo ne peuvent pas être traités ; l’aperçu et la reconnaissance lisent les dix premières pages.
Comment votre facture est protégée
La facture et tout ce que vous saisissez restent dans votre navigateur. Il n’y a pas de téléversement, et rien n’est enregistré chez xmoo.app. Vos coordonnées de vendeur, l’outil ne les enregistre que si vous le demandez, sous forme de fichier sur votre appareil.
Le traitement se fait dans un cadre isolé, avec sa propre origine cloisonnée : cette page affiche de la publicité, mais ses scripts n’ont pas accès à la facture, et ni publicité ni statistiques ne tournent dans le cadre. Une règle de sécurité interdit au cadre d’envoyer quoi que ce soit sur le réseau. Il ne charge que des fichiers fixes de xmoo.app : les bibliothèques PDF et les règles de validation.
Questions fréquentes
Une Factur-X faite ici est-elle une facture électronique au sens de la réforme ?
Le fichier est au format Factur-X, l’un des formats du socle. Pour remplir l’obligation entre entreprises françaises, il doit en plus être transmis par une plateforme agréée, et les règles de gestion de la DGFiP s’appliquent, que l’outil ne vérifie pas.
Ma facture est-elle téléversée ?
Non. Tout se passe dans votre navigateur (voir plus haut).
Puis-je vérifier le résultat moi-même ?
Oui : ouvrez le PDF Factur-X dans la visionneuse, qui affiche le XML intégré et le valide avec les mêmes règles.
Sources
- impots.gouv.fr : Je découvre la facturation électronique (modifiée le 26/05/2026, consultée le 12/11/2026) – calendrier, plateforme agréée, document envoyé par e-mail ; fiche DGFiP 1-f – formats du socle
- DGFiP : spécifications externes de la facturation électronique, version 3.2 du 30/04/2026, annexe 7 « Règles de gestion » v1.9 : règles G1.24, G1.63, G1.89 et onglet « EN16931 Codelists » (signification des codes VATEX), consultées le 12/11/2026
- Taux de TVA : article L. 213-151 du code des impositions sur les biens et services (version en vigueur au 1er janvier 2027) et article 278 du CGI, consultés sur Légifrance le 12/11/2026
- Règles de la norme (BR-E-02, BR-CO-26 …) : EN 16931 Validation Artefacts 1.3.17 de la Commission européenne ; Factur-X 1.09.2 (ZUGFeRD 2.5.2) : paquet d’information du FeRD
- Structure du PDF Factur-X (pièce jointe, métadonnées PDF/A-3) selon la bibliothèque de référence factur-x 7.7 ; contrôle PDF/A dans les tests avec veraPDF 1.30.3
Logiciels utilisés et licences
- pdf.js 6.4.299 affiche l’aperçu et lit le texte du PDF. Copyright Mozilla et les contributeurs, Apache License 2.0. Réempaqueté ici en script classique pour fonctionner sans worker dans le cadre isolé.
- pdf-lib 1.17.1 construit le PDF Factur-X. Copyright Andrew Dillon, licence MIT ; réempaqueté de la même façon.
- Le profil de couleurs sRGB est calculé par xmoo.app et libre.
- SaxonJS 2.7 exécute les règles de validation. Copyright Saxonica Ltd, distribué sans modification selon la licence SaxonJS (qui contient aussi l’exclusion de responsabilité). Contient big.js, copyright Michael Mclaughlin, licence MIT.
- EN 16931 Validation Artefacts 1.3.17, © Union européenne, sous EUPL 1.2 ; Factur-X 1.09.2 / ZUGFeRD 2.5.2 du FeRD et du FNFE-MPE sous Apache License 2.0, en version compilée (SEF), tirés de factur-x d’Alexis de Lattre (Akretion), licence BSD. Détails dans la section licences de la visionneuse.
- Schémas XML UN/CEFACT CII D16B (copyright UN/CEFACT) et schémas Factur-X, distribués sans modification avec leur mention de copyright ; xmllint-wasm 5.3.0 les valide, copyright les auteurs de libxml et libxml.js, licence MIT.