- Accueil
- Apps
- SaaS Tools
- Environment Ribbon
Aperçu illustratifA build-to-order Odoo module that overlays a persistent,
color-coded ribbon on every non-production database so your team instantly knows whether they are in staging, dev, UAT, or the live system. ECOSIRE scopes, builds, installs, and supports it across Odoo 17.0, 18.0, and 19.0.
Qu'est-ce que Environment Ribbon ?
A build-to-order Odoo module that overlays a persistent, color-coded ribbon on every non-production database so your team instantly knows whether they are in staging, dev, UAT, or the live system. ECOSIRE scopes, builds, installs, and supports it across Odoo 17.0, 18.0, and 19.0. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Fonctionnalités clés
Fait sur commande, clé en main
Aucune configuration à faire vous-même — une app fonctionnelle conçue, installée et prise en charge par ECOSIRE.
- 1
Vous commandez
Commencez par un prix de développement unique. Nous cadrons le projet avec vous au lancement.
- 2
Nous développons et installons
ECOSIRE la développe, la configure et l'installe sur votre Odoo.
- 3
Mise en ligne + assistance
Vous êtes en ligne en une semaine ouvrée environ, avec deux semaines d’assistance après la mise en production. Les défauts du code que nous livrons sont corrigés gratuitement.
Spécifications techniques
- Compatibilité Odoo
- Odoo 17, Odoo 18, Odoo 19
- Éditions
- Enterprise et Community
- Licence
- Licence à confirmer
- Version Python requise
- Python 3.10+
- Base de données
- PostgreSQL 12+
À propos de ce produit
Every Odoo team that runs more than one database eventually posts the same invoice twice, edits a real customer in a staging clone, or confirms a test sale order against production — because staging, UAT, dev, and live all look identical in the browser. Odoo core gives you no visual cue about which database you are in: the backend chrome, the menus, and the record forms are byte-for-byte the same across environments. The only signals are the URL and the database name in the login selector, and neither is visible once you are three clicks deep into a form view. It is a small gap that produces expensive, hard-to-reverse mistakes, and it gets worse as your team grows and people keep several tabs open at once.
Environment Ribbon closes that gap by painting an always-visible, color-coded banner across the Odoo web client on any database you designate as non-production. We build a lightweight module whose __manifest__.py depends only on web, with configuration stored in ir.config_parameter (surfaced through res.config.settings) so an administrator sets the ribbon label, color, and corner position per database without touching source. On the client side an OWL component reads those parameters from the session-info payload and injects a fixed-position ribbon into the web client layout — for example amber for staging, red for dev, blue for UAT — with a z-index tuned to sit above dialogs but never intercept clicks (pointer-events: none). Because the flag lives per database rather than in the codebase, the same restored dump can be promoted from staging to production and the ribbon simply disappears once the production database has no override set.
Beyond the base banner we build the guard rails teams actually ask for after the first near-miss. We can gate high-risk operations behind the environment flag — a confirmation interstitial when a user tries to send email, post a journal entry, or run a mass action on a database tagged non-production — and optionally neutralize outbound ir.mail_server and scheduled ir.cron jobs on clones so a staging copy never emails real customers or charges real cards. Ribbon visibility, label text, and the color map can be driven by hostname pattern, by database name regex, or by an explicit ir.config_parameter key, and access to change those settings is locked down with ir.model.access.csv plus a record rule so only administrators can flip an environment's identity. Everything renders server-side-safe and degrades cleanly: if the parameter is unset, no ribbon shows and nothing changes.
Because this is build-to-order, you receive a module built and tested against your exact Odoo version (17.0, 18.0, or 19.0) and edition (Community or Enterprise — the web client injection differs subtly between them, and we account for it), not a generic download you have to adapt. We start with a short scoping call, confirm your environment topology and color conventions, build on a branch, and deliver onto a staging database for UAT before promoting to production with a rollback plan. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); additional environments, host/regex-based auto-detection, outbound-email and cron neutralization on clones, and multi-company or Odoo.sh-specific behavior increase the quoted scope.
Ce que vous obtenez
- Installable module source code built and tested for your exact Odoo major version (17.0, 18.0, or 19.0) and edition
- Installation and configuration on your staging database, including the environment color map and detection strategy
- Technical documentation: manifest dependencies, config parameter keys, detection logic, and how to add a new environment
- User/administrator guide plus a live training session for the team who will manage environment tags
- UAT on a staging database with a documented rollback plan before any production promotion
- Post-go-live support window for defect fixes and configuration adjustments
- Git repository handover with full commit history and tagged release
- Version compatibility notes covering Community vs Enterprise differences and upgrade guidance
Pour qui c'est
Odoo system administrator / DBA
Runs the staging, UAT, and production databases and is tired of colleagues editing the wrong one. Needs an unmistakable, per-database visual flag they can set without deploying code.
Implementation partner / functional consultant
Manages multiple client databases and demo instances in parallel tabs. Wants an instant environment cue so training and configuration work never lands on a live customer system.
Internal ERP / IT team at a scaling company
Supports a growing group of Odoo users across finance, sales, and operations. Needs guard rails so a staging clone cannot email real customers or post real journal entries during testing.
Developer working across Odoo versions
Switches between 17.0/18.0/19.0 branches and restored dumps daily. Wants the ribbon to show the database name, hostname, and version so support triage and reproduction are unambiguous.
Comment Environment Ribbon se compare
| Critère | ÉCOSIRE | Construction personnalisée | Concurrent | Natif Odoo |
|---|---|---|---|---|
| Odoo version & edition fit | Built and tested for your exact 17.0/18.0/19.0 + Community or Enterprise | Whatever your team targets, if they know the injection differences | Generic build; you adapt it to your version/edition | No such feature exists in core |
| Environment detection | Config key, DB-name regex, or hostname pattern — chosen in scoping | Possible but must be designed and built from scratch | Usually a single fixed method | None — only URL and login DB selector |
| Guard rails (email/cron neutralization, action confirms) | Optional and scoped to your risk points | Buildable but rarely prioritized in-house | Typically visual-only ribbon | None |
| Setup effort for you | We install and configure on staging; you set tags in settings | Your developers build, test, and maintain it | Self-install and self-configure | Not applicable |
| Support & accountability | Post-go-live support window + repo handover | Owned entirely by your team | Best-effort, varies by publisher | None |
| Upgrade path across major versions | Version notes + optional upgrade engagement | Your team re-tests each upgrade | Depends on publisher release cadence | Not applicable |
| Total cost of ownership | Fixed quote from $999 indicative; predictable | Developer time to build and maintain indefinitely | Low sticker price, hidden adaptation/maintenance cost | Free but the mistakes it prevents are not |
| Time to value | one working week from confirmed scope, delivered working | Depends on backlog and internal priorities | Immediate if it fits; slow if it needs rework | Never — capability absent |
Foire aux questions sur Environment Ribbon
How long does delivery take?
Because this is built to order, typical delivery is one working week from confirmed scope. Simpler single-environment builds land toward the shorter end; add-ons like host-based auto-detection, outbound-email/cron neutralization, or multi-company behavior extend the timeline. We agree a firm schedule during the scoping call.
Is this an existing app I can download and install right now?
No. This is a productized service — ECOSIRE builds, installs, and supports the module for your specific Odoo version and edition. There is no instant download. You start with a scoping call, we build on a branch, and we deliver onto a staging database for UAT before production.
How does pricing and scoping work?
Pricing starts from $999 (indicative, single-company base scope). The final number is a fixed quote issued after a short scoping call, once we confirm how many environments you run, your detection strategy, whether you need email/cron neutralization, and your Community vs Enterprise edition. Extra integrations and multi-company depth increase the quote.
What about support and updates after go-live?
Every build includes a post-go-live support window for defect fixes and configuration tweaks. Because you receive the git repository, your team can maintain it independently, and we offer ongoing support or a version-upgrade engagement (for example when you move from 18.0 to 19.0) as a separate scope.
Will the ribbon ever show on production or block real users?
No. The ribbon only renders when a non-production override is set for that database, so production shows nothing by default. The banner is `pointer-events: none`, so it is purely visual and never intercepts a click or covers a button.
Does it work with Odoo.sh and multi-database setups?
Yes, with scoping. On Odoo.sh and other multi-database hosts we typically drive the ribbon from the database name or hostname so staging and production branches are flagged automatically. Odoo.sh-specific behavior and multi-company nuances are confirmed during scoping and reflected in the quote.
Which Odoo versions and editions are supported?
We build and test against Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise. The web client injection point differs slightly between editions and versions, which is exactly why we build against your specific target rather than shipping a one-size-fits-all download.
Modules associés

Employee Shift Scheduling & Roster
Build-to-order Odoo module for shift schedules, rosters and shift-change requests — built, installed and supported by ECOSIRE.

End-of-Service / Gratuity Settlement
Automate end-of-service gratuity and final settlements in Odoo with configurable equations per labor law. Built, installed and supported by ECOSIRE.

EU Peppol BIS Universal E-Invoicing
One Odoo connector for every Peppol-eligible EU country — register, send and receive Peppol BIS Billing 3.0 invoices. Built to order.

Event Management
A build-to-order Odoo module that turns event planning, organization, and execution into one governed workflow — from budget and logistics to registration, run-of-show, and post-event ROI. ECOSIRE designs, builds, installs, and supports it for your Odoo 17/18/19 database.
Environment Ribbon
A build-to-order Odoo module that overlays a persistent, color-coded ribbon on every non-production database so your team instantly knows whether they are in staging, dev, UAT, or the live system. ECOSIRE scopes, builds, installs, and supports it across Odoo 17.0, 18.0, and 19.0.
- OWL client-side component injects a fixed-position ribbon into the Odoo web client layout with a tuned `z-index` and `pointer-events: none` so it never blocks clicks
- Per-database configuration via `ir.config_parameter`, surfaced in a `res.config.settings` panel — set label, color, and corner without code changes
- Environment auto-detection strategies: explicit config key, database-name regex, or hostname pattern matching, chosen during scoping
- Configurable color map keyed by environment tag (e.g. amber `staging`, red `dev`, blue `UAT`) with sensible high-contrast defaults