Skip to content
Go To Agency

Agence Odoo : l’intégration, la connexion au site, et ce qui coûte vraiment cher

Nous intégrons Odoo et nous le branchons sur votre site : catalogue, stock, commandes, factures. Nous cadrons surtout ce que les devis passent sous silence, l’arbitrage Community ou Enterprise, les développements spécifiques qui bloquent vos montées de version, et la reprise de données. Agence à Dijon, travail à distance, tout par écrit.

Modules spécifiques versionnés en Git4.9/5 sur 35 avisRéponse écrite sous 24 h ouvrées

Odoo s’installe en une journée et se reprend en six mois

La réponse tient en une phrase : ce qui coûte cher n'est pas Odoo, ce sont les écarts entre Odoo et ce que vous en avez fait.

Trois ans
Support standard d’une version majeure, selon la documentation Odoo
Vos modules
Ce que le service de mise à niveau d’Odoo ne prend pas en charge sans contrat
Custom
Plan requis pour ouvrir l’API externe sur l’offre en ligne d’Odoo

Ce que nous faisons sur un projet Odoo, dans l’ordre

Trancher Community ou Enterprise avant la première ligne de code

Enterprise n’est pas un autre logiciel : c’est une couche de modules sous licence propriétaire posée sur le socle Community, publié lui sous LGPL version 3. La question n’est donc pas de savoir laquelle est meilleure, mais lesquels de ces modules vous utiliserez tous les jours, et ce que vous acceptez de porter vous-même. Nous listons vos besoins module par module, nous marquons ceux qui n’existent que côté Enterprise, puis nous regardons l’hébergement, parce que sur l’offre en ligne d’Odoo le plan souscrit conditionne l’accès à l’API externe, à Odoo.sh et à l’installation sur vos serveurs. Cet arbitrage se pose avant le développement, jamais après.

Écrire les spécifiques de façon à pouvoir monter de version

Un développement spécifique n’est pas un risque en soi : un développement spécifique que plus personne ne sait décrire en est un. Nous les écrivons dans des modules séparés, versionnés dans un dépôt Git, un module par besoin métier, avec le nom du besoin dans le nom du module. Nous étendons les modèles standard plutôt que de les remplacer, nous limitons les héritages de vues à des points d’ancrage stables, et nous ne touchons jamais au code du cœur. Chaque module porte la version d’Odoo visée et la liste de ce qu’il modifie. Le jour de la montée de version, cette liste est la seule chose qui rend un chiffrage possible.

Brancher le site sur Odoo sans double saisie

Catalogue, stock, commandes, factures : pour chaque objet, une seule question compte, qui détient la vérité. Le catalogue descend d’Odoo vers le site, les commandes remontent du site vers Odoo, le stock circule dans un sens qu’il faut décider explicitement, et les factures ne se numérotent qu’à un seul endroit. Viennent ensuite les détails qui font la différence : un identifiant externe stable des deux côtés, des échanges rejouables sans créer de doublon, un journal consultable de ce qui est passé et de ce qui a échoué, une procédure écrite pour rattraper un message perdu. Une synchronisation qu’on ne peut pas rejouer n’est pas une synchronisation.

Reprendre les données avant de reprendre les processus

La reprise n’est pas un import, c’est une décision par table. Clients et fournisseurs demandent un dédoublonnage assumé, avec une règle écrite que quelqu’un valide. Les articles obligent à trancher entre référence interne et code-barres comme clé. La comptabilité ne se reprend pas écriture par écriture mais par balance d’ouverture, à une date arrêtée. Les stocks se reprennent à une date, pas au fil de l’eau. Chaque enregistrement importé reçoit un identifiant externe issu de votre ancien système : c’est ce qui permet de rejouer l’import sans créer de doublon et de rattacher correctement les relations. La reprise tourne à blanc autant de fois que nécessaire avant la bascule.

Ce que nous ouvrons en premier sur une base Odoo existante

La liste des modules
Le premier fichier que nous demandons sur une instance existante
Vos spécifiques
Ce qui décide du prix d’une montée de version, bien avant le volume
L’ID externe
Ce qui casse une reprise de données rejouée une seconde fois
Par écrit
Format de travail, réponse écrite sous 24 heures ouvrées

Trois périmètres, tous chiffrés sur devis

Cadrage et audit Odoo

Sur devis
  • Inventaire des modules et des spécifiques
  • Arbitrage Community ou Enterprise argumenté
  • Plan de reprise des données existantes
  • Chiffrage écrit de la montée de version
Décrire mon projet Odoo par écrit

Intégration Odoo et site web

Sur devis
  • Sens de vérité défini objet par objet
  • Catalogue, stock, commandes, factures
  • Échanges rejouables et sans doublon
  • Journal des erreurs et rattrapage manuel
Décrire mon projet Odoo par écrit

Reprise d’une instance existante

Sur devis
  • Spécifiques remis dans un dépôt Git
  • Environnements de test et de production
  • Montée de version préparée puis rejouée
  • Restauration de sauvegarde vérifiée
Décrire mon projet Odoo par écrit

Odoo depuis Dijon, en travail à distance : les arbitrages qui décident du budget

Odoo est un progiciel de gestion modulaire, et cette modularité fait à la fois sa force et le piège dans lequel tombent les projets. Quatre arbitrages décident du budget réel : Community ou Enterprise, la façon dont les spécifiques sont écrits, la frontière entre le site et l’ERP, et la reprise de données. Le dernier bloc explique les cas où il vaut mieux ne pas nous écrire.

Community, Enterprise, et un modèle tarifaire à vérifier vous-même

Commençons par ce qui n’est pas une opinion. Odoo Community est publié sous LGPL version 3. Odoo Enterprise est publié sous une licence propriétaire, conditionnée à un abonnement actif. Enterprise n’est pas une réécriture du produit : c’est un ensemble de modules supplémentaires posés sur le même socle, ce qui explique que les deux éditions partagent leurs structures de données et l’essentiel de leur code. Côté abonnement, Odoo présente aujourd’hui trois formules sur sa page de tarifs : une formule gratuite limitée à une seule application, Nom officiel de la troisieme formule sur la page de tarifs francaise d'Odoo : « Personnalise » (« Custom » uniquement en anglais et dans la documentation developpeur). 1) localContent.blocks[0].body, premiere occurrence, a publier : « ... une formule Standard qui ouvre toutes les applications sur l'hebergement en ligne d'Odoo, et une formule Personnalise, nommee « Custom » sur la version anglaise de la page et dans la documentation technique. » 2) localContent.blocks[0].body, seconde occurrence, phrase suivante, a publier : « ... parce que la formule Standard n'ouvre ni l'API externe, ni Odoo Studio, ni l'hebergement sur Odoo.sh ou sur vos propres serveurs : sa page de tarifs rattache tout cela a la formule Personnalise. » 3) problem.stats[2].value, remplacer « Custom » par : « Personnalise » (le label « Plan requis pour ouvrir l'API externe sur l'offre en ligne d'Odoo » reste exact) 4) faq[2].answer, remplacer « l'API externe n'est ouverte que sur le plan Custom » par : « l'API externe n'est ouverte que sur le plan Personnalise, appele Custom sur la page de tarifs en anglais » 5) localContent.blocks[2].body (ligne 7636, non signalee par le relecteur), remplacer « l'API externe suppose la formule Custom » par : « l'API externe suppose la formule Personnalise » Le reste des affirmations de la page est confirme et ne doit pas etre touche : Standard = toutes les apps mais hebergement Odoo Online seul ; Personnalise = Odoo Studio, pluri-entreprises, API externe, et choix Odoo Online / Odoo.sh / on-premise.. C’est la troisième qui compte pour un projet d’intégration, parce que la formule Standard n’ouvre ni l’API externe, ni Odoo Studio, ni l’hébergement sur Odoo.sh ou sur vos propres serveurs : sa page de tarifs rattache tout cela à la formule Custom. Nous ne citons volontairement aucun montant ici, et c’est un conseil autant qu’une prudence. Odoo fixe ses tarifs par pays, et le tarif de première année n’est pas celui du renouvellement. Ouvrez la page de tarification officielle depuis la France, lisez la ligne de renouvellement autant que le prix d’appel, et multipliez par le nombre réel d’utilisateurs internes : Odoo considère comme utilisateur payant toute personne qui accède au back-office pour créer, consulter ou modifier des documents, donc ouvrir un tableau de bord depuis le back-office compte, et un comptable externe qui travaille dans votre base compte aussi. Seuls les clients et les fournisseurs qui passent par le portail, en lecture seule, ne sont pas facturés.. Un budget Odoo se calcule sur trois ans, pas sur douze mois. Nous ne revendons pas d’abonnements Odoo : la formule que vous choisissez ne change rien à ce que nous facturons, ce qui rend cet arbitrage plus simple à mener honnêtement.

Les spécifiques décident du prix de vos montées de version

et qu'au-delà, un support étendu est soumis à des frais supplémentaires obligatoires.

Le site et Odoo : décider qui détient la vérité, objet par objet

Une intégration site et ERP ne se conçoit pas comme un tuyau, mais comme un contrat, objet par objet. Le catalogue produit descend en principe d’Odoo vers le site, avec ses variantes, ses prix et ses règles fiscales. Les commandes remontent du site vers Odoo. Le stock est le point délicat : il faut décider si le site affiche une quantité recopiée à intervalles réguliers, ou s’il interroge Odoo au moment d’ajouter au panier. La première option est rapide et provoque de la survente sur les articles à rotation forte. La seconde est juste et rend le site dépendant de la disponibilité d’Odoo. Il n’y a pas de bonne réponse universelle, il y a une réponse par catalogue. A ajouter en fin de paragraphe sur les factures, apres « Un seul systeme numerote, l'autre affiche. » : « À cela s’ajoute une échéance proche. À compter du 1er septembre 2026, toutes les entreprises assujetties à la TVA établies en France doivent être en mesure de recevoir leurs factures électroniques par l’intermédiaire d’une plateforme agréée ; les grandes entreprises et les entreprises de taille intermédiaire doivent aussi les émettre à cette date, les PME, TPE et micro-entreprises à compter du 1er septembre 2027. Deux questions se posent alors dans une intégration site et Odoo, et elles n’ont pas la même réponse. Pour les ventes entre professionnels, laquelle des deux briques dépose la facture sur la plateforme agréée et laquelle se contente de l’afficher. Pour les ventes aux particuliers, qui ne relèvent pas de ce circuit mais du e-reporting, laquelle transmet les données de transaction. » Ce qui change par rapport a la proposition du relecteur : « etablies en France » ajoute ; la phrase finale scindee pour distinguer le B2B (facture via plateforme agreee, art. 289 bis CGI) du B2C (e-reporting), au lieu d'appliquer le circuit facture a toutes les ventes du site. Pas de tiret long, conforme a la convention du repo. La numérotation des factures doit suivre une séquence chronologique continue. L’article 242 nonies A de l’annexe II au code général des impôts impose un numéro unique basé sur une séquence chronologique et continue, et il admet expressément que la numérotation soit établie par séries distinctes lorsque les conditions d’exercice de l’activité de l’assujetti le justifient, l’assujetti devant faire de ces séries un usage conforme à leur justification initiale. Ce que l’administration sanctionne n’est donc pas la pluralité d’émetteurs, c’est la rupture de séquence et le doublon. Émettre depuis la boutique et depuis Odoo en parallèle sans avoir écrit laquelle des deux séries s’applique produit exactement cela. Deux architectures sont conformes, et il faut en choisir une avant la première facture : soit un seul système numérote et l’autre affiche, soit chacun tient sa propre série, avec une justification écrite tirée de vos conditions d’exercice, et sans rupture. Restent les mécanismes qui évitent les incidents. Un identifiant externe stable de chaque côté, pour qu’un message rejoué ne crée pas un second client ni une seconde commande. Un journal des échanges consultable, avec le contenu envoyé et l’erreur reçue, parce qu’une intégration muette est impossible à diagnostiquer. Une file de reprise pour les messages en échec. Et une procédure écrite pour rejouer un échange à la main, que quelqu’un chez vous sait exécuter sans nous. Sur l’offre en ligne d’Odoo, rappelons que l’API externe suppose la formule Custom ; sur une instance Community que vous hébergez, cette restriction commerciale ne s’applique pas.

La reprise de données, et les cas où il ne faut pas nous écrire

Publier le texte propose par le relecteur, tel quel, en remplacement integral de localContent.blocks[3].body (ligne 7640) : La reprise n’est pas un import, c’est une suite de décisions que personne ne veut prendre à votre place. Les clients et les fournisseurs demandent une règle de dédoublonnage écrite et validée par quelqu’un chez vous, parce qu’une fusion ratée se voit sur la facturation. Les articles obligent à trancher la clé : référence interne ou code-barres, et ce que deviennent les inactifs. La comptabilité ne se reprend pas écriture par écriture mais par balance d’ouverture, à une date arrêtée avec votre expert-comptable. Les stocks se reprennent à une date d’inventaire, pas au fil de l’eau. Chaque enregistrement importé reçoit un identifiant externe issu de l’ancien système, ce qui permet de rejouer l’import sans créer de doublon. La reprise tourne à blanc autant de fois que nécessaire avant la bascule, et le coût dépend de l’état des données, pas de leur volume.\n\nQuand ne pas nous écrire, maintenant. Si votre instance tourne, qu’elle est à jour, sans spécifique, et que votre sujet est le volume de visiteurs, un intégrateur Odoo ne changera rien à votre chiffre d’affaires. Si votre gestion tient dans un tableur et deux processus stables, Odoo est plus lourd que ce que vous avez à porter, et le dire coûte moins cher que de le maintenir. Si vous cherchez quelqu’un qui se déplace, qui décroche en cas d’incident ou qui anime un comité de suivi, ce n’est pas nous : nous travaillons depuis Dijon, à distance, uniquement par écrit, avec une réponse sous vingt-quatre heures ouvrées. Et si vous attendez un devis ferme sans donner accès à la base ni à la liste des modules, nous préférons refuser plutôt qu’annoncer un chiffre que l’ouverture de l’instance viendra démentir. Aucune valeur factuelle n'est a corriger dans ce texte : les trois affirmations verifiables (identifiant externe rejouable, balance d'ouverture, cle produit) sont conformes a la documentation Odoo. Recommandation editoriale distincte de la correctness : reformuler la troisieme phrase du second paragraphe, aujourd'hui identique caractere pour caractere a celle de la page agence-prestashop (ligne 7481).

Sur trois éléments, et jamais sur le prix affiché. D’abord la licence : Odoo Community est publié sous LGPL version 3, Odoo Enterprise sous une licence propriétaire liée à un abonnement actif. Ensuite les modules : Enterprise est une couche posée sur le même socle, donc la vraie question est de savoir lesquels de ces modules serviront tous les jours, pas de comparer deux catalogues. Enfin l’hébergement et la maintenance : Community ne coûte rien en licence, mais vous prenez à votre charge les serveurs, les sauvegardes, la sécurité et les montées de version. Ce n’est pas gratuit, c’est facturé ailleurs, sous forme de temps d’administration ou d’infogérance. Si vous n’avez ni équipe technique ni budget dédié à cette exploitation, Community vous coûtera plus cher qu’Enterprise, en incidents plutôt qu’en abonnement.

Ils ne bloquent rien tant qu’ils sont identifiés, versionnés et testables. Le point à connaître est écrit noir sur blanc dans la documentation d’Odoo : le service de mise à niveau porte sur la conversion technique de la base, modules standard et données. La mise à niveau des modules supplémentaires créés en interne ou par un tiers, partenaires Odoo compris, n’y est pas incluse lorsqu’ils ne sont pas couverts par un contrat de maintenance. (Variante acceptable, plus proche de la structure d’Odoo : « La mise à niveau des modules supplémentaires non couverts par un contrat de maintenance et créés en interne ou par un tiers, partenaires Odoo compris, n’y est pas incluse. » Ajout facultatif utile commercialement, également sourcé : « À l’inverse, les personnalisations faites avec Studio restent couvertes tant que Studio est installé et l’abonnement actif, comme les développements couverts par un abonnement de maintenance des personnalisations. ») Et si un changement introduit par une nouvelle version casse une personnalisation, la documentation précise que c’est au mainteneur de ce module de le rendre compatible. Autrement dit, votre facture de montée de version est proportionnelle au volume de spécifique que plus personne ne sait décrire. C’est la raison pour laquelle nous refusons d’écrire du spécifique qui ne vit pas dans un dépôt versionné, et pour laquelle toute reprise commence par en dresser l’inventaire.

Cela dépend de ce que vend le site et de qui le fait vivre. Odoo eCommerce a un avantage décisif : il n’y a rien à synchroniser, la boutique lit la même base que la gestion, donc le stock et les prix ne peuvent pas diverger. Il montre ses limites quand le marketing veut des gabarits sur mesure, un rythme de publication soutenu, des contenus éditoriaux riches, ou l’écosystème d’applications d’acquisition qu’une plateforme dédiée fournit d’office. Une boutique séparée, sur Shopify ou en application maison, rend cette liberté, mais vous héritez d’une synchronisation à écrire, à surveiller et à réparer. Un point de vigilance rarement anticipé : sur l’offre en ligne d’Odoo, l’API externe n’est ouverte que sur le plan Custom. Choisir une boutique séparée n’est donc pas seulement une décision technique, c’est aussi une décision de plan et d’hébergement.

Nous ne la chiffrons pas avant d’avoir vu un export, et personne de sérieux ne le fera. Le coût ne dépend pas du nombre de lignes, il dépend de leur état. Un fichier client rempli de doublons, avec des adresses tassées dans un champ libre, des identifiants réutilisés au fil des années et des codes pays absents, demande un travail que le volume ne permet pas de prédire. Les questions qui font le prix sont toujours les mêmes : à quelle date arrête-t-on l’ancienne comptabilité, reprend-on l’historique complet des commandes ou seulement les en-cours, que deviennent les articles inactifs, quelle règle de dédoublonnage assume-t-on et qui la valide. Envoyez-nous un extrait de vos tables principales et un descriptif du système actuel : vous recevrez une réponse écrite argumentée, plutôt qu’un forfait qui explosera en cours de route.

Tout se traite par écrit, sans exception. Nous sommes à Dijon et nous travaillons à distance : pas de réunion de lancement, pas de visioconférence, pas d’atelier, pas de déplacement. Vous décrivez votre situation par email, nous répondons sous vingt-quatre heures ouvrées avec ce que nous avons compris, ce qui manque pour chiffrer, et les points qui nous inquiètent. Ce format n’est pas une contrainte subie. Sur un projet Odoo, l’essentiel des décisions porte sur des règles de gestion, des champs et des sens de synchronisation : une décision écrite reste consultable quand la personne qui l’a prise a changé de poste, ce qu’un compte rendu de réunion ne garantit jamais. À la fin, vous récupérez un dépôt Git, les modules spécifiques documentés et les scripts de reprise, exploitables par un autre prestataire que nous.

4.9/5 sur 35 avis clientsDécouvrez les avis de nos clients

Décrivez votre instance Odoo, ou le projet que vous hésitez à lancer

Version installée, liste des modules, spécifiques connus, système actuel à reprendre, et ce que le site doit échanger avec Odoo. Envoyez ce que vous avez, même incomplet. Vous recevez sous vingt-quatre heures ouvrées une lecture écrite du périmètre, les arbitrages à trancher, et un avis franc si Odoo n’est pas le bon outil pour vous.

Décrire ma situation par écrit
Devis gratuit
Agence Odoo : intégration et site web | Go To Agency