Custom ERP vs Off-the-Shelf ERP: How to Decide
When custom ERP development makes sense, when off-the-shelf ERP is the better choice, and why a hybrid — standard core plus custom domain app — is often the answer.
Service · Ingénierie
Vue d’ensemble
Nos développeurs sont spécialisés dans les plateformes ERP. Ils maîtrisent la comptabilité en partie double, les mouvements de stock et la valorisation, et écrivent un code qui respecte le modèle de données, les contrôles d’accès et le chemin de mise à niveau de la plateforme.
01Le problème
Des modules écrits à la hâte par différents prestataires, jamais testés au-delà du cas nominal, qui cassent dès que les données sortent de l’ordinaire.
Un code qui fonctionnait avec mille enregistrements expire avec un million, parce qu’il boucle au lieu de traiter par lots.
Pas de préproduction, pas de contrôle de version, et aucun moyen de revenir en arrière quand quelque chose casse.
La même règle de prix ou d’affectation implémentée séparément dans l’ERP, la boutique en ligne et un tableur — avec des résultats différents.
02Notre approche
Chaque mission commence par le dépôt de code : tout le spécifique dans Git, une préproduction identique à la production et un processus de déploiement où personne ne modifie de fichiers sur un serveur. Ce socle seul élimine une grande partie des incidents.
Nous avançons ensuite par petits incréments faciles à relire. Chaque modification a un ticket expliquant le besoin métier, une pull request relue par un second développeur et des tests couvrant des cas réalistes : livraisons partielles, retours, multidevise, multisociété, utilisateurs aux droits limités.
03Compétences
De nouveaux objets métier et workflows intégrés à la comptabilité, aux stocks et aux ventes standard.
Points d’accès REST, récepteurs de webhooks et connecteurs vers des systèmes tiers.
Documents PDF, exports Excel, vues SQL de reporting et flux de données pour les outils de BI.
Portails clients, fournisseurs et partenaires, ainsi que des interfaces de back-office propres à chaque rôle.
Traitements en arrière-plan pour les imports, recalculs, notifications et rapprochements.
Profilage et correction des écrans, rapports et traitements par lots trop lents.
04Points techniques
Des branches Git par environnement, des tests automatiques sur chaque pull request et des versions étiquetées.
Lectures et écritures par lots, préchargement, champs calculés stockés quand c’est pertinent, et SQL brut uniquement avec une justification documentée.
Les opérations touchant au stock ou à la comptabilité sont atomiques, idempotentes lorsqu’elles sont relancées et entièrement tracées.
Utilisation des points d’extension publics et refus des API privées qui changent d’une version à l’autre.
05Méthode
Besoin métier, critères d’acceptation et scénarios de test validés avant d’écrire du code.
Approche technique revue sous l’angle du modèle de données, de la sécurité et de l’impact sur les mises à niveau.
Développement dans une branche dédiée avec tests unitaires et d’intégration.
Revue de code, tests automatisés et validation utilisateur en préproduction.
Déploiement via la chaîne de livraison avec notes de version et plan de retour arrière.
06Résultats
Un code testé, relu et déployé via une chaîne contrôlée.
Un code documenté et conventionnel qu’une autre équipe compétente pourrait maintenir.
Un code écrit pour des volumes réels, pas seulement pour des données de test.
Où cela s’applique
Services associés
Analyses
When custom ERP development makes sense, when off-the-shelf ERP is the better choice, and why a hybrid — standard core plus custom domain app — is often the answer.
Odoo 20 removes record rules and merges them into access rights with domains. What changed, how to migrate ir.model.access.csv and ir.rule, and what to test.
What Odoo Studio does well, where it creates trouble, and when to switch to custom module development. A practical decision guide with examples.
FAQ
Principalement Python et le framework Odoo, avec TypeScript/Node.js pour les services d’intégration et les interfaces, et SQL pour le reporting. Nous extrayons aussi des données d’autres plateformes ERP et les intégrons.
Oui. Chaque module a un README décrivant son objectif, son paramétrage et ses dépendances, et la logique importante est documentée dans le code. Nous tenons aussi un registre des personnalisations au niveau du système.
Oui. Nous commençons par un audit du code, mettons en place le contrôle de version et la préproduction s’ils manquent, puis prenons en charge les nouveaux travaux.
Les deux. Les travaux bien spécifiés peuvent être réalisés au forfait. Le développement continu et les travaux au périmètre flou se prêtent mieux à la régie avec un reporting régulier.
Prochaine étape
Décrivez le travail. Nous vous dirons comment nous l’aborderions et ce qu’il faudrait.