Aller au contenu
Azinove, Accueil
Toutes les analyses

Module Odoo sur mesure : quand le développer et comment le spécifier

Configuration, Studio, Apps Store ou module sur mesure : une grille pour décider, les règles d’un bon module Odoo, sa spécification et son coût à chaque version.

AZINOVE SAS
Équipe AZINOVE SAS
Module Odoo sur mesure : décider, spécifier, maintenir — AZINOVE SAS

Un module Odoo sur mesure se justifie quand une règle métier, une intégration ou un document ne peut être obtenu ni par la configuration, ni par Odoo Studio, ni par un module existant, et que l’écart vaut un coût de maintenance à chaque version. L’ordre de décision reste donc : standard, Studio, module existant, puis développement spécifique. Voici la grille pour trancher, les critères d’un module bien construit et la façon de le spécifier.

Quatre façons d’adapter Odoo, de la plus légère à la plus engageante

Les quatre leviers d’Odoo diffèrent moins par ce qu’ils savent faire que par l’hébergement qu’ils imposent et par la personne qui les adapte à chaque version.

  • La configuration standard : paramètres, étapes, séquences, modèles d’e-mail, droits d’accès.
  • Odoo Studio : l’outil sans code pour ajouter champs, vues, modèles, automatisations, webhooks, rapports PDF, règles d’approbation et de sécurité. Réservé à l’édition Enterprise, il fait passer une base du plan Standard au plan Personnalisé.
  • Un module existant, issu de l’Odoo Apps Store ou de l’Odoo Community Association (OCA), association à but non lucratif basée en Suisse qui diffuse des milliers de modules sous licence libre.
  • Un module sur mesure : du code Python, XML et JavaScript (framework OWL) écrit pour votre entreprise.
Les quatre leviers pour adapter Odoo (documentation et tarifs Odoo, octobre 2026)
LevierHébergement possibleQui l’adapte à chaque version
Configuration standardOdoo Online, Odoo.sh ou vos serveursOdoo, via le service de mise à niveau (édition Enterprise)
Odoo StudioTous hébergements, en édition Enterprise et plan PersonnaliséOdoo, tant que Studio reste installé et l’abonnement actif
Module de l’Apps Store ou de l’OCAOdoo.sh ou vos serveurs ; pas Odoo Online (hors modules de données sans Python)Son éditeur ou ses mainteneurs, version par version
Module sur mesureOdoo.sh ou vos serveurs ; pas Odoo OnlineVous ou votre prestataire, sauf abonnement de maintenance des personnalisations souscrit auprès d’Odoo

La grille de décision : cinq questions, dans cet ordre

On ne passe à la question suivante que si la réponse à la précédente est non.

  1. Le standard le fait-il déjà, autrement ? Adapter un processus se paie une fois ; adapter le logiciel, à chaque version. Le guide de mise à niveau d’Odoo conseille d’ailleurs de supprimer tout développement qui fait doublon avec le standard.
  2. Studio suffit-il ? Un champ, une vue, une automatisation simple, une mise en page de rapport : Studio le fait sans code, et Odoo le maintient. Mais une automatisation qui embarque toujours plus de code Python devient du développement sans dépôt ni tests : sa place est dans un module.
  3. Un module existant couvre-t-il l’essentiel ? Vérifiez qu’il existe pour votre version d’Odoo, sa licence, sa dernière mise à jour, ses avis et ses dépendances. Sur l’Apps Store, chaque version d’un module payant est vendue séparément depuis Odoo 13, et le support relève de l’éditeur, pas d’Odoo.
  4. L’écart est-il durable et propre à votre activité ? Une règle de tarification qui fait votre différence, oui. Un rapport demandé une fois par un seul service, rarement.
  5. Qui maintiendra le code, avec quel budget ? Sans réponse écrite, ne lancez pas le développement.

Le choix engage aussi l’hébergement : selon la documentation d’Odoo, Odoo Online n’accepte ni modules sur mesure ni modules de l’Apps Store. Dès le premier module de code, la base passe sur Odoo.sh ou sur vos serveurs, ce qui relève, en Enterprise, du plan Personnalisé. Ce tri se fait au cadrage, besoin par besoin, avec votre intégrateur Odoo en France.

Les cas où un module sur mesure se justifie

Des règles métier que le standard ne sait pas exprimer

Un prix qui dépend de critères propres à votre métier, un contrôle qui bloque une commande tant qu’une condition manque, un statut de plus dans un flux d’intervention. Le module ajoute champs, méthodes et contrôles aux modèles existants.

Des échanges avec d’autres logiciels

Quand Odoo appelle un autre système (transporteur, plateforme, outil métier), le connecteur s’écrit dans un module, et Odoo ne compte pas ces appels comme de l’« API externe ». Quand l’autre logiciel lit ou écrit dans Odoo, il passe par l’API externe, réservée au plan Personnalisé.

L’API JSON-2, apparue avec Odoo 19, remplace les API XML-RPC et JSON-RPC, désormais dépréciées : Odoo annonce le retrait de leurs services principaux dans Odoo 22 (automne 2028) et Odoo Online 21.1 (hiver 2027). Un nouveau connecteur a intérêt à partir sur JSON-2.

Des documents et des rapports

L’éditeur de rapports PDF de Studio couvre la mise en page courante. Un module devient utile quand le document dépend d’une logique : modèles différents selon le client ou le pays, calculs absents des données, fichier d’échange au format imposé par un donneur d’ordre.

Un portail client ou fournisseur

Le portail d’Odoo donne déjà à vos clients accès aux documents des applications installées (devis, commandes, factures). Exposer d’autres données ou un parcours propre à votre activité demande un module (contrôleurs, gabarits, droits d’accès), dans la limite que rappellent les règles de l’Apps Store : un utilisateur portail peut interagir avec un devis ou une commande, pas modifier la comptabilité ou les RH.

Notre page développement Odoo sur mesure détaille ce qu’un tel projet livre.

À quoi reconnaître un module Odoo bien construit

Pas besoin de lire le Python pour juger un module : demandez à voir ces points, ou faites-les auditer.

  • Il hérite, il ne modifie pas. L’ORM d’Odoo prévoit l’extension : un module ajoute des champs et surcharge des méthodes d’un modèle existant (_inherit), et modifie les vues par héritage. Aucun fichier d’Odoo ou d’un module tiers n’est retouché : toute retouche serait écrasée à la mise à jour suivante.
  • Il surcharge peu, et proprement. Les règles de codage d’Odoo demandent des méthodes courtes, qui prolongent la méthode d’origine plutôt que de la réécrire, et proscrivent la validation manuelle des transactions (cr.commit()) hors cas exceptionnels.
  • Il est testé. Odoo fournit tests Python, tests JavaScript et « tours » simulant un parcours utilisateur ; sur Odoo.sh, les branches de développement exécutent les tests unitaires par défaut.
  • Il est déclaré correctement. Le manifeste liste toutes les dépendances, indique une licence et une version préfixée par celle d’Odoo (par exemple 20.0.1.0.0).
  • Il est documenté : ce qu’il change, sa configuration, ses limites, et pourquoi le standard ne suffisait pas.
  • Il est conçu pour durer : peu de dépendances, des extensions de vues qui ciblent des éléments nommés plutôt qu’une position, des paramètres plutôt que des valeurs codées en dur. La documentation d’Odoo cite justement, parmi les erreurs typiques de mise à niveau, les dépendances invalides, les champs ou vues renommés, les XPath qui ne trouvent plus leur cible et les méthodes supprimées.

Rédiger la spécification d’un module sur mesure

Une bonne spécification décrit le besoin et les règles, pas la solution technique ; elle sert ensuite de base à la recette.

  1. Le contexte : version d’Odoo, édition, hébergement, applications et modules déjà en place.
  2. Le problème : qui le rencontre, à quelle fréquence, sur quel volume, et ce que coûte le contournement actuel.
  3. Le processus cible, étape par étape, avec les rôles et les droits de chacun.
  4. Les règles de gestion, une par ligne, chacune avec un exemple chiffré et ses cas limites (avoir, annulation, multi-société, devise).
  5. Les données : champs à créer, origine, qui les saisit, qui les voit, ce qui doit être repris de l’existant.
  6. Les écrans et documents : une capture annotée vaut mieux qu’un long paragraphe.
  7. Les échanges avec d’autres systèmes : sens, fréquence, format, comportement en cas d’erreur ou d’indisponibilité.
  8. Les critères d’acceptation, écrits comme des scénarios : « étant donné…, quand…, alors… ». Ils deviennent les tests automatisés du module.
  9. Le hors périmètre, et la trace de la décision : pourquoi la configuration, Studio et les modules existants ont été écartés.

Maintenance : ce que coûte un module à chaque version

Odoo publie une version majeure par an (Odoo 19 en septembre 2025, Odoo 20 en septembre 2026), et le support standard de chacune dure trois ans : celui d’Odoo 17 a pris fin en septembre 2026. Un module sur mesure doit donc être porté régulièrement, et la base ne peut pas être mise à niveau tant qu’une version compatible de chaque module n’existe pas.

Ce portage n’est pas couvert par défaut : le service de mise à niveau de l’abonnement Enterprise couvre le standard et les personnalisations Studio, pas les modules développés en interne ou par des tiers, partenaires Odoo compris, sauf abonnement de maintenance des personnalisations. Le contrat d’abonnement Enterprise (version 13 du 24 septembre 2026) facture cette maintenance chaque mois par tranche de 100 lignes de code. Chaque ligne a donc un coût récurrent : raison de plus pour ne développer que l’écart réel avec le standard.

Les ruptures sont réelles : Odoo 20 a par exemple remplacé les règles d’enregistrement par un domaine porté par chaque droit d’accès, et supprimé les valeurs de suivi stockées. Prévoyez au contrat qui réalise le portage, dans quel délai après la sortie d’une version et comment il est chiffré ; les tests automatisés accélèrent sa vérification.

Propriété du code : ce qu’il faut écrire au contrat

Commander un logiciel ne rend pas propriétaire du code. Bpifrance Création le rappelle : le donneur d’ordre ne devient pas automatiquement titulaire des droits, et un contrat de cession doit être annexé au contrat de développement (le code écrit par vos salariés dans leurs fonctions, lui, appartient à l’entreprise). Faites préciser :

  • la cession des droits, ou la licence accordée, et son étendue, à valider avec votre conseil juridique ;
  • le dépôt de code : sur Odoo.sh, le projet est relié à un dépôt GitHub, qui doit appartenir à votre organisation, et non au prestataire ;
  • une licence inscrite au manifeste et compatible avec celles des dépendances (LGPL-3 pour Odoo Community, licence Odoo Enterprise pour les modules Enterprise) ;
  • aucune clé d’activation, pratique que l’Apps Store interdit d’ailleurs aux modules qu’il publie ;
  • la livraison des tests et de la documentation, pour qu’un autre prestataire puisse reprendre le module.

Questions fréquentes

Peut-on installer un module sur mesure sur Odoo Online ?

Non. Odoo Online n’accepte ni modules sur mesure ni modules tiers, hormis des modules de données sans Python. Il faut passer sur Odoo.sh ou sur vos serveurs ; une base en version intermédiaire (19.1 à 19.4, par exemple) doit d’abord rejoindre la version majeure suivante.

Odoo Studio est-il disponible en Community ?

Non, Studio est réservé à l’édition Enterprise. En Community, toute adaptation au-delà de la configuration passe par du code, et le service de mise à niveau d’Odoo n’est pas inclus.

Qui assure le support d’un module de l’Apps Store ?

Son éditeur, via le canal de support ouvert depuis la commande ; Odoo indique ne pas relire chaque module publié. Testez un module payant dès l’achat : le délai de deux semaines de la politique de remboursement ne vaut que sur ce canal.

Un module sur mesure fonctionne-t-il en Community et en Enterprise ?

Cela dépend de ses dépendances : un module qui étend une application réservée à Enterprise, comme la Paie ou les Abonnements, ne fonctionne qu’en Enterprise ; s’il ne dépend que d’applications Community, il fonctionne dans les deux.

Par où commencer

Listez vos besoins d’adaptation et classez chacun dans l’une des quatre lignes du tableau. Ce qui reste en « module sur mesure » mérite une spécification ; le reste se règle souvent en atelier.

C’est ainsi que travaille AZINOVE SAS, partenaire officiel Odoo à Strasbourg : ateliers sur site en Alsace, à distance en Île-de-France et ailleurs en France, et un développement limité à l’écart avec le standard. Pour la suite, voyez notre page sur le développement spécifique Odoo, ou contactez-nous pour un échange de 30 minutes sur votre liste de besoins.

Sources

  1. Odoo — Tarifs : plans Standard et Personnalisé, FAQ (page consultée en octobre 2026) — https://www.odoo.com/fr_FR/pricing
  2. Odoo — Comparaison des éditions Community et Enterprise (page consultée en octobre 2026) — https://www.odoo.com/fr_FR/page/editions
  3. Odoo — Documentation 20.0, Studio — https://www.odoo.com/documentation/20.0/applications/studio.html
  4. Odoo — Documentation 20.0, Studio : Automation rules — https://www.odoo.com/documentation/20.0/applications/studio/automated_actions.html
  5. Odoo — Documentation 20.0, Odoo Online — https://www.odoo.com/documentation/20.0/administration/odoo_online.html
  6. Odoo — Documentation 20.0, Hosting (changer d’hébergement) — https://www.odoo.com/documentation/20.0/administration/hosting.html
  7. Odoo Apps — FAQ (acheteurs et éditeurs de modules) — https://apps.odoo.com/apps/faq
  8. Odoo Apps — Vendor Guidelines — https://apps.odoo.com/apps/vendor-guidelines
  9. Odoo Community Association — About — https://odoo-community.org/about
  10. Odoo — Documentation 20.0, Standard and extended support (calendrier des versions) — https://www.odoo.com/documentation/20.0/administration/standard_extended_support.html
  11. Odoo — Documentation 20.0, Upgrade (service-level agreement) — https://www.odoo.com/documentation/20.0/administration/upgrade.html
  12. Odoo — Documentation 20.0, Upgrade a customized database — https://www.odoo.com/documentation/20.0/developer/howtos/upgrade_custom_db.html
  13. Odoo SA — Odoo Enterprise Subscription Agreement, version 13 (24 sept. 2026) — https://www.odoo.com/documentation/20.0/legal/terms/enterprise.html
  14. Odoo — Odoo 20 Release Notes (septembre 2026) — https://www.odoo.com/odoo-20-release-notes
  15. Odoo — Documentation 20.0, ORM API : Inheritance and extension — https://www.odoo.com/documentation/20.0/developer/reference/backend/orm.html
  16. Odoo — Documentation 20.0, Coding guidelines — https://www.odoo.com/documentation/20.0/contributing/development/coding_guidelines.html
  17. Odoo — Documentation 20.0, Testing Odoo — https://www.odoo.com/documentation/20.0/developer/reference/backend/testing.html
  18. Odoo — Documentation 20.0, Odoo.sh : Branches — https://www.odoo.com/documentation/20.0/administration/odoo_sh/getting_started/branches.html
  19. Odoo — Documentation 20.0, Odoo.sh : Create a project — https://www.odoo.com/documentation/20.0/administration/odoo_sh/getting_started/create.html
  20. Odoo — Documentation 20.0, External JSON-2 API — https://www.odoo.com/documentation/20.0/developer/reference/external_api.html
  21. Odoo — Documentation 20.0, External RPC API (avis de dépréciation) — https://www.odoo.com/documentation/20.0/developer/reference/external_rpc_api.html
  22. Odoo — Documentation 20.0, Licenses — https://www.odoo.com/documentation/20.0/legal/licenses.html
  23. Bpifrance Création — Protection juridique d’un logiciel (juin 2026) — https://bpifrance-creation.fr/encyclopedie/trouver-proteger-tester-son-idee/proteger-son-idee/protection-juridique-dun-logiciel
Partager cette analyse
6 min de lecture

42 % des PME européennes utilisent déjà l’IA : pourquoi l’expérimentation ne suffit plus

Selon un Eurobaromètre publié le 14 octobre 2026, 42 % des PME et mid-caps européennes utilisent déjà l’IA ou la gestion algorithmique — surtout en mode limité ou expérimental. Le sujet n’est plus « faut-il tester », mais comment sortir du POC générique pour un système métier gouverné.

Lire l’analyse
11 min de lecture

Facturation électronique Odoo : plateforme agréée, Factur-X et checklist PME

Réception obligatoire depuis le 1er septembre 2026, émission des PME en 2027 : ce que fait Odoo, plateforme agréée, ce qu’il faut vérifier et la checklist.

Lire l’analyse
7 min de lecture

IA en entreprise : avant ChatGPT ou Copilot, passez par le CSE

Les juges suspendent désormais les outils d’IA déployés sans consultation du CSE, ChatGPT compris. Pour une PME ou une ETI, la question n’est plus « faut-il consulter ? » mais « quand, et sur quel périmètre ? ».

Lire l’analyse