Tous les guides

Installer un module depuis la marketplace

Ce que fait réellement la marketplace quand vous installez - elle commite le module dans votre dépôt - et les cinq vérifications qu'elle effectue avant d'écrire quoi que ce soit.

Vérifié le 18 octobre 2026

La marketplace n'installe rien dans votre Odoo. Elle commite le source du module dans votre dépôt, et à partir de là le module emprunte exactement le même chemin que le code que vous avez écrit vous-même.

Cette phrase à elle seule évite la plupart des malentendus. Un module pris sur la marketplace devient une partie de votre branche, est construit dans votre image et déployé comme tout le reste — c'est précisément ce qui le rend reproductible, restaurable et relisible.

Parcourir, et posséder

Le catalogue liste ce qui est publié. Prendre un module donne à votre équipe un droit d'usage, et c'est ce droit qui débloque la suite.

Un module gratuit s'obtient en un clic, et couvre toutes les versions d'Odoo qu'il publie — celles d'aujourd'hui comme les suivantes.

Un module payant s'achète pour une version d'Odoo, avec le portefeuille de votre équipe. Avant le clic, la fiche affiche le montant qui sera débité, dans votre devise, et votre solde. S'il manque de l'argent, Recharger ouvre la page Facturation avec le montant prérempli (mobile money avec Campay) ; un bouton vous ramène ensuite au module pour terminer l'achat. Une autre version d'Odoo s'achète à part.

Une fois le module obtenu, sa carte porte la mention Dans vos modules, et sa fiche remplace Obtenir maintenant par ce que vous pouvez en faire : Utiliser dans un environnement et Télécharger.

Recherche, catégorie, version d'Odoo, prix et tri vivent dans l'adresse de la page : ouvrir un module puis revenir en arrière vous ramène à la même liste, au même endroit.

Le catalogue de la marketplace avec une fiche de module : son nom, son nom technique, son auteur, sa note et son nombre de téléchargements — les équipes qui l'ont obtenu.
Le catalogue est l'endroit où l'on choisit. Rien ici ne touche à un environnement.

L'assistant d'import s'ouvre depuis la fiche d'un module que vous possédez, ou depuis Modules achetés — jamais pour un module que vous n'avez pas obtenu. Le serveur vérifie le droit avant toute chose : un module que vous ne possédez pas ne peut donc pas atteindre la première étape.

Toute cette zone est protégée par marketplace.install.

Quatre étapes, et aucune n'écrit

Utiliser dans un environnement ouvre un assistant : l'environnement, puis la version, puis un aperçu, puis l'import lui-même.

L'assistant d'import : les modules de la fiche à installer, dont un non installable, le chemin cible pré-rempli à marketplace/acme_margin_report, et le mode d'import réglé sur commit direct.
Le chemin cible est un champ, pas une règle figée - mais sa valeur par défaut est la convention qu'il vaut mieux garder.

Une fiche peut contenir plusieurs modules Odoo. L'assistant les liste alors sous Modules à installer ; ceux qui ne peuvent pas être installés sont marqués non installable et ne peuvent pas être cochés. Les modules non cochés sont tout de même écrits dans votre dépôt — ils ne sont simplement ni suivis ni installés.

Les deux premières listes sont calculées par le serveur, et non filtrées dans le navigateur :

  • Les environnements — uniquement ceux qui peuvent réellement recevoir ce module.
  • Les versions — uniquement celles compatibles avec l'environnement choisi.

Si l'une des deux listes est vide, c'est la réponse, et elle est plus utile que ne l'aurait été une erreur.

Ce qui est vérifié avant la moindre écriture

Cinq conditions, chacune refusée avec sa propre raison :

ConditionPourquoi elle existe
Vous détenez un droit d'usageOn n'importe que ce que son équipe possède.
Ce droit couvre la version d'Odoo de l'environnementUn module gratuit les couvre toutes ; un module payant, seulement celles achetées.
L'environnement est actifOn ne construit pas sur un environnement arrêté.
L'environnement a un dépôtSans dépôt, il n'y a nulle part où commiter.
La version Odoo de la version égale celle de l'environnementPas « compatible avec » : égale. Un module 19.0 ne va pas dans un environnement 18.0.

La dernière est plus stricte que ce que l'on attend en général, et c'est pour cela que la liste des versions peut revenir vide pour un module que vous possédez pourtant.

L'aperçu est le dernier écran avant l'écriture

Prévisualiser l'import exécute un essai à blanc et vous renvoie exactement ce qui se passerait : la branche sur laquelle il commiterait, le chemin que le module occuperait, et la version Odoo retenue.

L'aperçu d'import : la branche main, le chemin cible marketplace/acme_margin_report et la version Odoo, au-dessus du bouton qui lance l'import.
Un import écrit dans le dépôt de quelqu'un. L'écran qui le précède doit dire sur quelle branche, et où.

Lisez la branche. L'assistant utilise la branche de l'environnement : importer dans un environnement de staging commite donc sur la branche de staging — ce qui est en général voulu, et parfois une surprise.

Si le module est déjà présent, l'aperçu le dit et propose les choix qui ont un sens dans ce cas, au lieu d'échouer.

Le chemin par défaut est marketplace/<nom_technique>. Vous pouvez le changer, mais garder les modules de la marketplace sous un seul répertoire est ce qui vous permettra, six mois plus tard, de distinguer le code que vous avez écrit de celui que vous avez pris.

Après l'import : la route ordinaire

Ce que fait la confirmation dépend du mode d'import.

Commit direct écrit un commit sur la branche de l'environnement. Ensuite, sans que vous ayez à le demander :

  1. L'import enregistre le commit qu'il a créé.
  2. Un build est demandé automatiquement pour ce commit.
  3. Le module apparaît dans l'onglet Modules de l'environnement — en Déploiement requis, parce qu'il est dans votre branche et pas encore dans l'image en service.

Créer une pull request commite plutôt le module sur une branche de travail et ouvre une pull request vers la branche de l'environnement. Rien n'est construit à ce stade, et c'est tout l'intérêt : le code n'est pas sur la branche de l'environnement tant que personne ne l'a fusionné. La fusion est un push ordinaire, et la route ci-dessous part de là.

À partir de là, c'est la boucle que décrivent les autres guides : déployer le build pour mettre le module dans l'image, puis l'installer dans Odoo. Le guide sur le déploiement depuis Git couvre le premier point, celui sur les modules couvre le second.

Un module de la marketplace n'a ensuite plus rien de particulier. C'est du code dans votre dépôt.

Quand ça refuse

Les refus qu'il vaut la peine de reconnaître :

  • Le chemin cible existe déjà — l'import s'arrête au lieu d'écraser du code déjà présent. Choisissez un autre chemin, ou traitez d'abord la copie existante.
  • Aucun dépôt lié — connectez-en un à l'environnement d'abord.
  • Identifiants Git — la plateforme a besoin d'un accès en écriture pour commiter ou ouvrir une pull request ; un jeton révoqué se manifeste ici.
  • Votre achat ne couvre pas cette version d'Odoo — un module payant ne s'utilise que pour les versions d'Odoo achetées ; achetez celle-ci depuis la fiche du module.

Un module que son éditeur a retiré du catalogue ne s'obtient plus. Si votre équipe l'avait déjà obtenu, vous le gardez : sa fiche reste ouverte pour vous, et l'import comme le téléchargement continuent de fonctionner.