Odoo Enterprise can be run on three hosting solutions, and the Subscription Agreement applies to all of them: it states that, with the Cloud Platform, the Software is hosted and fully managed by Odoo S.A. and accessed remotely, while with Self-Hosting the customer hosts the Software on computer systems of its choice that Odoo S.A. does not control.[1][2] The hosting solution decides which plan, which modules and which support options are available, and also how usage is verified. Catalog proof: Agreement covers self-hosting, Odoo.sh and Odoo Cloud.
Editions
Odoo Online
Odoo Online provides private databases hosted and managed by Odoo that can be used from any web browser with no local installation, for long-term production or for testing, including customisations that do not need custom code.[3] It is incompatible with custom modules and with modules from the Odoo Apps Store.[3] A database can switch pricing plans from the database manager.[3] Moving an on-premise database to Odoo Online requires uninstalling all non-standard apps, taking a dump with filestore and opening a support ticket that includes the subscription number, the URL, hosting region and version, among other items.[4] The pricing page says Odoo Online hosting is free with unmetered storage up to 100 GB.[5] Catalog proof: Odoo Online does not support custom or Apps Store modules.
Odoo.sh
Odoo.sh is the official cloud platform for hosting and managing Odoo applications, with features such as a web shell, module dependencies, continuous integration and SSH access.[6] Odoo’s pricing page offers it with the Custom plan, says that it hosts development, staging and production branches so that custom modules can be developed or used, and states that the cost of Odoo.sh hosting is not included in the plan price.[5] The General Terms of Sale treat Odoo.sh, like Odoo SaaS, as part of the Cloud Platform for monthly subscriptions.[7] Catalog proof: Odoo.sh hosting; Odoo.sh hosting cost is not included in plan prices.
On-premise
On-premise (self-hosting) lets the customer download Odoo Enterprise and host it on its own systems, available with the Custom plan.[5] The customer registers a database by entering the subscription code in the banner in the app dashboard; on success the banner turns green and shows the database expiration date, which is also displayed on the Settings page.[8] Catalog proof: Odoo Custom plan.
Metrics and counting
One database per subscription
The on-premise documentation lists, among the causes of a registration error, that only one database can be linked per subscription, and that no two databases may share a UUID, which the customer can check in its Odoo Contract. A duplicate of a database is the intended way to create a test or development database.[8] A duplicated database can be neutralized, which deactivates planned actions, outgoing emails, bank synchronisation, payment providers, delivery methods, IAP tokens and website visibility; for Odoo.sh, staging and development databases are neutralized.[9] Catalog proof: Only one database can be linked per subscription; Neutralized test databases; Database registered per subscription.
Users on a registered database
If a local database has more users than its subscription provides, a message appears and the customer has 30 days before the database expires; the countdown updates daily. The customer can add users by validating the upsell quotation and paying for them, or deactivate users and reject the quotation. The message disappears a few days after the count is correct. If the database expires before the subscription is renewed, the customer renews through the link in the message or sends a support ticket.[8] This corresponds to the Agreement’s rule that extra Users are charged at the list price at the time of the deviation.[1] Catalog proof: Too many users starts a 30-day expiry countdown.
Weekly validation
The on-premise database must be able to reach Odoo’s subscription validation servers: services.odoo.com on port 80 for Odoo 18.0 and above (services.openerp.com for 17.0 and below), and these ports must stay open after registration because the update notification runs once a week. Where policy forbids outbound port 80, port 443 can be used with a configuration line pointing to the publisher warranty URL.[8] Interfering with the validation code carries an extra fee of 300 per cent of the applicable list price for the actual number of Users and Light Users.[1] Catalog proof: On-premise databases report weekly to subscription servers; Usage verification code must run unmodified.
Virtualization and partitioning
The documents contain no virtualization or partitioning rule. A customer that runs several instances (production, staging, development) on-premise must keep only one database linked to the subscription; copies for other purposes are duplicated and neutralized.[8][9] On Odoo.sh, branches provide development, staging and production databases.[5][9]
Cloud service levels
The Agreement commits Odoo S.A. to provide, for cloud hosting, a choice of multiple hosting regions (at least Europe, America and Asia/Pacific), Tier-III data centres or equivalent with 99.9 per cent network uptime, grade A SSL encryption, automated verified backups replicated in multiple regions and a tested Disaster Recovery Plan.[1] The Cloud Hosting SLA page states a 99.9 per cent monthly uptime target excluding planned maintenance, 14 full backups kept for at least 3 months, and recovery objectives of 24 hours for the recovery point and 6 hours for the recovery time after a single-server disaster; it says the objectives are not legally binding guarantees.[10] The Subscription Agreement refers to the SLA page for details.[1] Catalog proof: Cloud uptime objectives are not legally binding.
Support phases
Each major version is supported in two phases. Standard support covers the first three years after release and is available on Odoo Online, Odoo.sh and on-premise. Extended support begins afterwards, requires an additional fee, and is available only on Odoo.sh (for a limited number of versions) and on-premise (for any version); both phases include helpdesk support, bug fixes and security updates, though during extended support fixes are provided only where technically feasible. Odoo SaaS versions released every two to three months are available only on Odoo Online and are not eligible for extended support.[11] The page says it does not amend the Subscription Agreement.[11] Under the Agreement, a customer on a version older than the Covered Versions pays an extra 25 per cent of the annualized price once a year.[1] Catalog proof: Extended support is available only for an additional fee; Databases on older versions pay 25% of annualized price.
Partners and testing
A customer may use an Odoo Partner as its main contact for bug fixes, support and upgrades. Partners with a Partnership Agreement may use Enterprise Edition in testing or development environments and receive free Odoo.sh access for testing and development, but must not offer services on Enterprise Edition to customers without a subscription and must preserve the integrity of the code that verifies usage.[1][12][13] Catalog proof: Partners may not serve customers without an Enterprise subscription.
Audit considerations
For cloud-hosted databases, Odoo S.A. hosts the database and sees user counts directly; for on-premise databases verification runs through the weekly notification and, on request, through access that the self-hosting customer must grant.[1][8] Evidence for a review includes the registration banner and expiry date, the Odoo Contract page listing databases and UUIDs, the user list of each database, and the list of installed custom modules with their lines of code.[8][1]
Out of scope
This article does not cover installation procedures, packaged installers, upgrade mechanics beyond the support phases, security configuration, or the pricing of Odoo.sh.[8]