Extension Libreoffice Factur-X
Akretion a développé une extension LibreOffice pour générer des factures Factur-X. Cela permet aux TPEs qui génèrent leurs factures dans un tableur de générer des factures électroniques au format Factur-X compatibles Chorus Pro.
La révolution de la facturation électronique est en marche ! A partir du 1er Janvier 2020, toutes les entreprises qui facturent le secteur public (État, collectivités locales, hôpitaux) doivent déposer des factures électroniques sur la plateforme Chorus Pro. Parmi les multiples formats de facture électronique supportés par Chorus Pro, le format Factur-X nous semble le plus adapté aux PMEs. Jusqu'à présent, la seule possibilité pour générer une facture Factur-X était d'équiper son entreprise d'un logiciel de gestion moderne supportant cette norme (Odoo en faisait bien entendu parti grâce à un module communautaire développé par Akretion). Les TPEs qui faisaient leurs factures dans un simple tableur se retrouvaient privées de la possibilité de générer des factures Factur-X. A Akretion, nous pensons que la norme Factur-X a une vocation universelle et que les sociétés qui génèrent leurs factures dans un simple tableur ne devraient pas se retrouver exclues de la révolution Factur-X. C'est la raison pour laquelle nous avons développé une extension LibreOffice opensource permettant de générer une facture Factur-X avec un simple tableur.
Le projet
La génération d'une facture PDF au format Factur-X dans LibreOffice Calc nécessite l'utilisation d'une macro développée en Python. La macro est fournie sous forme d'une extension LibreOffice dénommée « Générateur de factures Factur-X » (fichier factur-x_macro.oxt). Les factures générées sont des factures PDF Factur-X (profil « Minimum ») compatibles avec Chorus Pro. Cette macro permet non seulement de générer des factures, mais aussi des avoirs. Elle est diffusée sous une licence libre (licence GPL) ; vous pouvez donc l'utiliser sans restriction.
Pendant toute la phase de conception de cette extension LibreOffice, nous avons apporté un soin tout particulier à :
- la facilité d'installation : aucune compétence informatique n'est requise,
- le fonctionnement sur tous les systèmes d'exploitation : l'extension a été testée avec succès sur Windows, Mac et Linux,
- le fonctionnement en mode déconnecté : pas besoin de connexion Internet pour générer une facture Factur-X,
- la simplicité et la facilité d'utilisation au quotidien pour générer des factures,
- la traduction en français.
Tutoriel vidéo
Installation sous Windows, Mac ou Linux
Préalable pour Windows et Mac
Pour une expérience optimale, il est conseillé d'utiliser une version de LibreOffice supérieure ou égale à 6.2.0. Si la version de LibreOffice installée sur votre ordinateur est trop ancienne, c'est le moment de télécharger la dernière version sur https://fr.libreoffice.org/download/telecharger-libreoffice/.
Préalable pour Linux Ubuntu ou Debian
Il est nécessaire d'installer le paquet libreoffice-script-provider-python qui n'est pas installé par défaut. Une méthode possible pour installer ce paquet est de taper la commande suivante dans un terminal :
sudo apt install libreoffice-script-provider-python
Préalable pour Fedora, Mageia et Arch Linux
Aucun paquet additionnel n'est nécessaire pour faire marcher l'extension LibreOffice.
Procédure d'installation (Windows, Mac et Linux)
Allez dans le menu "Outils > Options" puis naviguez dans
"LibreOffice > Sécurité" : cliquez sur le bouton Sécurité des
macros et sélectionnez le niveau Moyen.
Téléchargez l'extension LibreOffice factur-x_macro.oxt sur la page de téléchargement du projet Github.
Ouvrez ce fichier avec LibreOffice ; LibreOffice va alors automatiquement lancer le Gestionnaire des extensions et vous proposer d'ajouter cette extension. Un message vous informera qu'il faut redémarrer LibreOffice après l'installation de l'extension.
Si vous utilisez une version de LibreOffice antérieure à la version 6.2.0, vous aurez un message lors de l'installation de l'extension qui vous informera de la nécessité d'installer le « Java Development Kit (JDK) » d'Oracle ; vous pouvez ignorer ce message, Java n'est en réalité pas nécessaire pour utiliser l'extension ! Le message est un bug qui a été corrigé dans LibreOffice 6.2.0.
Utilisation
Principe de fonctionnement
Pour comprendre le fonctionnement de la macro et générer vos premières factures Factur-X, téléchargez l'un des modèles de facture prêt-à-l'emploi:
- facture en français : fichier factur-X_modele_facture_francais.ods
- facture en anglais : fichier factur-X_english_invoice_sample.ods
Ces modèles de facture sont destinés à être personnalisés avec le nom de votre entreprise, ses coordonnées, son logo, etc.
Pour que la macro fonctionne, il est impératif de respecter certaines règles :
- Le tableur doit comporter au moins 2 onglets.
- Le premier onglet contient la facture. C'est cet onglet qui sera exporté en PDF lors de la génération de la facture Factur-X.
- Le 2ème onglet contient les données qui seront utilisées dans le fichier XML embarqué dans le PDF. Les données sont présentes dans la 2e colonne intitulée "Valeurs". La macro va chercher chaque donnée dans une cellule bien précise ; il ne faut donc pas changer l'emplacement des données.
- Dans le 2ème onglet, certaines données sont obligatoires pour la norme Factur-X. Parmi les données facultatives de la norme Factur-X, certaines sont obligatoires pour Chorus Pro. De plus, dans le cas d'une facture pour Chorus Pro, certaines entités publiques imposent la présence d'un "code service" et/ou d'un "numéro d'engagement" (équivalent du numéro de commande dans le secteur privé). La couleur de fond des cellules de données permet de savoir quelles sont les données obligatoires pour Factur-X et Chorus Pro ; référez-vous à la légende en bas du 2ème onglet.
- Dans le 2ème onglet, la 3ème colonne "Type et contraintes" donne le type de champ (texte, date, nombre décimal) et les contraintes à respecter. Il est important que le format de la cellule corresponde au type de champ.
Dans les modèles de facture fournis, toutes les données du 2ème onglet sont reprises automatiquement à partir du 1er onglet (via une simple égalité ou, dans certains cas, via l'utilisation d'une formule), à exception du champ « Code devise » (EUR par défaut). Cela permet d'avoir des données à jour sans recopie manuelle des informations entre le 1er onglet et le 2ème onglet. Cependant, il est conseillé de vérifier rapidement que les données du 2ème onglet sont exactes avant de générer la facture Factur-X.
Générer la facture Factur-X
Pour lancer la macro qui va générer la facture Factur-X, il suffit de cliquer sur le bouton « Générer la facture PDF Factur-X » qui se trouve dans le 2ème onglet en dessous des données, puis de se laisser guider.
Si le bouton ne fonctionne pas, allez dans le menu « Outils > Macro > Exécuter la macro » ; naviguez dans « Mes macros > factur-x_macro.oxt > libreoffice_facturx_macro » ; dans la colonne de droite, sélectionnez la macro "generate_facturx_invoice_v1" et cliquez sur le bouton « Exécuter » puis laissez-vous guider.
Annexes
Si vous souhaitez consulter le fichier XML embarqué dans le PDF Factur-X
Le nom du fichier XML embarqué dans la facture Factur-X est factur-x.xml. Pour le voir ou l'enregistrer, ouvrez la facture PDF Factur-X avec un lecteur PDF supportant la lecture des pièces jointes PDF :
- Acrobat Reader : cliquez sur l'icône représentant un trombone situé sur la barre de gauche.
- Firefox (versions récentes uniquement) : cliquez sur l'icône représentant un trombone situé en haut à gauche.
- SumatraPDF (Windows) : les pièces jointes apparaissent automatiquement sur la partie gauche.
- Evince (Linux/Gnome), dans la liste déroulante en haut à gauche, sélectionnez "Pièces jointes".
- Okular (Linux/KDE), un bandeau bleu apparaît au dessus du document PDF quand il contient des pièces jointes.
A propos de Factur-X
Factur-X est une norme franco-allemande de facture électronique qui repose sur un principe simple : une facture PDF qui embarque un fichier XML au format standard Cross Industry Invoice (CII). Les spécifications de la norme Factur-X sont disponibles sur le site du Forum National de la Facture Électronique (FNFE-MPE). La norme Factur-X comporte 5 profils qui correspondent à 5 niveaux de détails dans les données fournies par le fichier XML : profil Minimum, Basic WL, Basic, EN16931 (profil qui correspond à la norme européenne du même nom) et Extended.
A propos de Chorus Pro
Chorus Pro est la plateforme de facturation électronique de l'administration française. A partir du 1er Janvier 2020, toutes les entreprises qui facturent une entité publique (État, collectivités locales, hôpitaux, etc...), quel que soit leur taille, doivent déposer leur facture sur Chorus Pro. La plateforme Chorus Pro accepte les factures électroniques au format Factur-X (ainsi que d'autres normes de factures électroniques) ; les 5 profils sont acceptés.
Copies d'écran
Copie d'écran du 1er onglet qui contient le visuel de la facture :
e
Copie d'écran du 2ème onglet qui contient les données pour le fichier XML :