Aller au contenu principal
VeriFactu

La bibliothèque cryptography n'est pas disponible dans VeriFactu pour Odoo : checklist

Le message Python cryptography library not available. Install it: pip install cryptography apparaît quand le module n'arrive pas à charger cette bibliothèque Python au moment du chiffrement. La solution est de l'installer avec la commande donnée par le message lui-même, puis de refaire l'action ; cette checklist vous guide pas à pas.

FlexigoTech · Responsable : Víctor Gómez · Mis à jour le 5 novembre 2026

L'essentiel

Module
VeriFactu
Versions
Odoo 17, 18, 19 et 20
Vérifié
dans le code du module, version 20.0 · dans les sources citées à la fin
Lecture
4 min

Quand il apparaît exactement et ce qu'il signifie

Le message apparaît quand le module essaie de charger, depuis la bibliothèque cryptography, la partie qui chiffre avec AES-GCM et que Python ne peut pas l'importer. C'est la première chose que fait la méthode qui chiffre des données dans le modèle de certificats de VeriFactu España: AEAT RRSIF Compliance : avant d'obtenir la clé et avant de chiffrer quoi que ce soit. Cela signifie que la bibliothèque est absente ou ne peut pas être chargée dans ce Python. L'action s'arrête.

Un chemin qui mène au message est le bouton Configure. Ce bouton est toujours visible, dans Odoo 17, 18, 19 et 20, et le message figure dans le code publié de ces quatre versions. Le module est publié sur Odoo Apps pour 17, 18, 19 et 20.

Schéma réalisé avec du code, pas une capture d'Odoo : le menu des certificats, le bouton Configure et le message sur la bibliothèque cryptography
Schéma réalisé avec du code à partir du code publié du module (Odoo 17, 18, 19 et 20). Il montre, de haut en bas, le menu, le bouton et le message, avec les libellés en anglais du code d'origine.

Ce que fait le module quand la bibliothèque est bien là

Savoir ce qui vient ensuite aide à comprendre pourquoi le message apparaît si tôt. Avec la bibliothèque disponible, la méthode obtient la clé de chiffrement, génère une valeur aléatoire (le vecteur d'initialisation) et chiffre les données avec AES-256-GCM. Elle renvoie trois choses : le texte chiffré, ce vecteur et l'étiquette d'authentification.

La clé est calculée à partir d'un secret de l'instance. Dans les enregistrements marqués avec la clé par entreprise, l'identifiant de l'entreprise entre dans le calcul. Rien de tout cela n'a lieu tant que la bibliothèque manque, car le message est lancé avant.

Checklist pour le résoudre

En voyant le message

  • Vérifiez que le texte est le bon : Python cryptography library not available. Install it: pip install cryptography. Si le texte est différent, ce n'est pas cette erreur.
  • Notez ce que vous faisiez. Si vous veniez de cliquer sur Configure, c'est le chemin qui mène au message.
  • Notez aussi la version d'Odoo (17, 18, 19 ou 20). Le message figure dans le code des quatre, il ne donne donc aucun indice en soi.
  • L'action s'est arrêtée : vous devrez la refaire une fois le problème résolu.
Schéma réalisé avec du code, pas une capture d'Odoo : le même message en anglais et en catalan
Schéma réalisé avec du code à partir des traductions publiées du module : en anglais, Python cryptography library not available. Install it: pip install cryptography ; en catalan, La biblioteca cryptography de Python no està disponible. Instal·leu-la amb: pip install cryptography.

Installer la bibliothèque

  • Installez la bibliothèque avec la commande donnée par le message : pip install cryptography.
  • Faites-le pour le Python à partir duquel votre Odoo s'exécute, car c'est dans ce processus que le module essaie de la charger.
  • Si le serveur est géré par une autre personne ou par un hébergeur, transmettez-lui le message entier et la commande. Il saura ainsi quoi installer et pourquoi.
  • Vérifiez la sortie de pip install cryptography : si elle s'est terminée par une erreur, la bibliothèque n'a pas été installée.

Vérifier que c'est résolu

  • Refaites l'action qui échouait, par exemple cliquer sur Configure.
  • Confirmez que le message n'apparaît plus. Si le module dépasse ce point, la méthode poursuit avec la clé et le chiffrement décrits plus haut.
  • Si vous avez plusieurs versions d'Odoo en service (17, 18, 19 ou 20), refaites la vérification dans chacune, car le message figure dans le code des quatre.

Où se trouvent les fiches de certificats

Les fiches de certificats s'ouvrent depuis Verifactu / SIF › Configuration › Certificates. Chaque niveau du menu demande une autorisation, et si vous ne l'avez pas, vous ne voyez pas ce niveau :

  • Le niveau Configuration demande SIF Manager.
  • Le niveau Verifactu / SIF demande Accountant, Asesoría Operator, Auditor (read-only), Privacy Officer ou SIF Manager.
  • Si vous ne voyez pas le niveau Configuration, demandez qu'on vous accorde l'autorisation SIF Manager.

Si le message est toujours là

  • Relisez le texte : c'est toujours celui de la bibliothèque cryptography, pas un autre.
  • Vérifiez que l'installation a été faite dans le Python de votre Odoo et pas dans un autre du même serveur.
  • Si le message persiste, notez le bouton sur lequel vous avez cliqué et la version d'Odoo (17, 18, 19 ou 20) avant de demander de l'aide.

Comment FlexigoTech peut vous aider

Si le serveur n'est pas le vôtre ou si vous préférez que nous le vérifiions, FlexigoTech met en place Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure.

À lire aussi

Ce que VeriFactu España ajoute à la facture Odoo et quand il intervientChamps que VeriFactu España ajoute à la facture Odoo, quand il crée l'enregistrement à la validation et comment vérifier qu'il est intervenu, pas à pas.«Only a SIF Manager can retry AEAT submissions.» : quand il apparaît et que faireQue signifie l'avertissement «Only a SIF Manager can retry AEAT submissions.» dans VeriFactu pour Odoo : quand il apparaît et comment le résoudre.Ce que fait le bouton Generate Export de VeriFactu España dans OdooCe que fait le bouton Generate Export de VeriFactu España dans Odoo : qui le voit, ce que génère chaque type d'exportation et l'événement consigné.
Vérifié dans le code du module (version 20.0) et dans les sources citées

Sources