Enable Odoo Enterprise
Activate your Odoo Enterprise subscription on environments hosted with OEC.sh.
Overview
Odoo Enterprise is Odoo's paid version with additional features:
- Studio (visual app builder)
- Professional themes
- Advanced inventory features
- Full accounting with bank sync
- HR & appraisals
- Marketing automation
- Mobile apps
- And more...
OEC.sh + Enterprise: OEC.sh hosting is separate from your Odoo Enterprise subscription. You pay OEC.sh for hosting and Odoo SA for the Enterprise license.
PAT required, not OAuth. Odoo Enterprise source lives at the private odoo/enterprise repository on Odoo's GitHub organisation. GitHub OAuth (the "Connect GitHub" button) does not grant third-party apps access to another organisation's private repositories, so OAuth will not work here. You must create a GitHub Personal Access Token (PAT) and use it as the git connection. This guide walks through it.
Prerequisites
Before enabling Enterprise:
- Odoo Enterprise subscription from odoo.com (opens in a new tab)
- Enterprise subscription code (received via email from Odoo)
- Admin access to your OEC.sh environment
- Same Odoo version as your subscription
Step 1: Purchase Enterprise License
If you don't have an Enterprise license:
- Go to odoo.com/pricing-plan (opens in a new tab)
- Choose Self-Hosted as the hosting option (this is the deployment type that lets you run Odoo on your own infrastructure, including OEC.sh). Odoo recently renamed this from "On-Premise" to "Self-Hosted", they refer to the same thing.
- Select your user count and apps
- Complete the purchase
- Receive your subscription code via email
Important: Pick Self-Hosted (formerly "On-Premise"), not Online (SaaS). The Online subscription only works on Odoo's own servers and cannot be used with OEC.sh hosting.
Step 2: Get GitHub Access to Odoo Enterprise
This is the step that breaks most installs. Two substeps, in order.
2a: Link your GitHub user to your Odoo subscription
Odoo only grants access to odoo/enterprise to GitHub usernames you have explicitly linked to an active subscription. Until you do this, no PAT will work — GitHub will return a 404 on the repo because your account cannot see it.
Link the GitHub username
- Log in to your Odoo portal at odoo.com/my/subscription (opens in a new tab)
- Find your active Enterprise subscription
- Under GitHub Users, add the GitHub username you plan to use on OEC.sh
- Save. Odoo grants access to
odoo/enterprisewithin a few minutes
Verify with the 404 test
Open https://github.com/odoo/enterprise (opens in a new tab) from that GitHub account.
- You see the repo → you have access. Move on to 2b.
- You get a 404 → Odoo has not granted access yet. Wait a few minutes and retry. If it still 404s, your GitHub username is not linked to the subscription, or the subscription is not active. Fix that before continuing — no PAT you generate will work until this check passes.
Do not skip the 404 test. Generating a PAT when Odoo has not granted access will result in a PAT that cannot see odoo/enterprise, which then fails at deploy time with "Write access to repository not granted" — a misleading error that is really about read access.
2b: Generate a GitHub Personal Access Token
Once the 404 test passes, generate a PAT that OEC.sh will use to clone odoo/enterprise on each deploy.
Open GitHub Token Settings
- Go to github.com (opens in a new tab) and sign in as the account you linked in 2a
- Click your profile picture (top-right corner)
- Click Settings
- Scroll down in the left sidebar and click Developer settings
- Click Personal access tokens → Tokens (classic)
Why classic, not fine-grained? Fine-grained tokens only cover repositories you own. odoo/enterprise belongs to Odoo's organisation, so only a classic token with the repo scope will work.
Create the Token
- Click Generate new token (classic)
- Fill in:
| Field | Value |
|---|---|
| Note | oec-sh-enterprise |
| Expiration | 90 days (or longer — you'll need to regenerate when it expires) |
- Under Select scopes, tick
repo(Full control of private repositories). Nothing else is required. - Click Generate token
- Copy the token immediately — GitHub only shows it once. It will start with
ghp_. Store it somewhere safe (password manager).
Step 3: Add the PAT as a Git Connection on OEC.sh
Do not use the "Connect GitHub" OAuth button for this step. OAuth does not grant access to odoo/enterprise. It will appear to connect successfully, but the deploy will fail with "Write access to repository not granted" or a 404. You must use the PAT flow below.
Open Git Connections
- Go to Organization Settings in the OEC.sh dashboard
- Click the Git Connections tab
- Click Add Connection
- Choose Personal Access Token as the authentication method (not OAuth)
Paste the token
- Provider: GitHub
- Name the connection (e.g.
GitHub — Enterprise access) - Paste the
ghp_...token from Step 2b - Save
Once saved, the token is encrypted on our side and used automatically every time we clone a repository configured against this connection.
Step 4: Add the Enterprise Repository
Open Addon Repos
- Go to Organization Settings → Addon Repos
- Click Add Repository
Fill in the Odoo Enterprise details
| Field | Value |
|---|---|
| Name | Odoo Enterprise |
| Git provider | GitHub |
| Git connection | the PAT connection you created in Step 3 |
| Git repo URL | https://github.com/odoo/enterprise.git |
| Branch | Your Odoo version (e.g. 19.0, 18.0, 17.0). Required — do not leave the default main, it does not exist on this repo. |
| Is public | OFF |
- Click Save
Authentication is automatic. OEC.sh uses the PAT attached to the git connection — you don't paste the token into the URL or anywhere else.
Step 5: Select the Repository on Your Project
- Open your Project in OEC.sh
- Click the Repositories tab
- Find the newly-created Odoo Enterprise entry under Organization-level addons
- Tick it so it applies to this project
- Save
Step 6: Redeploy
Go to your Environment and click Deploy. The platform will:
- Clone
odoo/enterprise.gitat the branch you picked into/mnt/extra-addons/enterprise/on your server - Restart the Odoo container with the new addons path
- Make Enterprise modules installable from the Apps menu
Wait for the deployment to complete. The UI will flip to the Enterprise theme once web_enterprise is loaded.
Migrating from Odoo SH? If your database came across with Enterprise modules already marked as installed, the Odoo UI will look like Community until this deploy completes. Odoo falls back to Community when it can't find the module code on disk, even though the database records the modules as installed. Completing this guide puts the code where Odoo expects it and the UI flips automatically.
Step 7: Activate the Enterprise Subscription Code
Access Odoo Settings
- Log in to your Odoo instance as admin
- Go to Settings → General Settings
- Scroll to Odoo Enterprise Subscription
Enter Subscription Code
- Click Enter Subscription Code or Renew Subscription
- Enter your Enterprise subscription code
- Click Link Subscription
Verify Activation
After linking:
- The Enterprise badge should appear
- Enterprise apps become available in the Apps menu
- "Enterprise Edition" shows in the footer
Database UUID: Odoo links your subscription to your database UUID. If you clone or restore, you may need to re-link the subscription on the new database.
Step 8: Install Enterprise Apps
With Enterprise activated:
- Go to Apps
- Remove the "Apps" filter (search field)
- Search for Enterprise apps:
- Studio
- Social Marketing
- Marketing Automation
- Appraisals
- Fleet
- Helpdesk
- Quality
- And more...
- Click Install on desired apps
Verifying Your License
Check in Odoo
Go to Settings → General Settings → scroll to the subscription section:
| Status | Meaning |
|---|---|
| Linked | Subscription is active and verified |
| Expiring | Subscription needs renewal |
| Expired | No valid subscription, Enterprise features disabled |
Check via Database
In the terminal:
# Connect to database
docker exec -it YOUR_ENV_ID_db psql -U odoo YOUR_DATABASE
# Check subscription
SELECT key, value FROM ir_config_parameter
WHERE key IN ('database.enterprise_code', 'database.expiration_date');Enterprise Features by Module
| Category | Enterprise Features |
|---|---|
| Studio | Visual app builder, custom fields, automation |
| Accounting | Bank synchronization, asset management, budgets |
| Inventory | Barcode, batch picking, wave picking |
| Manufacturing | PLM, quality control, maintenance |
| HR | Appraisals, fleet, referrals |
| Marketing | Social marketing, SMS, automation |
| Services | Helpdesk, FSM, planning |
Multi-Database Licensing
If you have multiple environments:
| Scenario | License Requirement |
|---|---|
| Production + Staging (same org) | Single license covers both |
| Production + Dev (same org) | Single license covers both |
| Different clients | Each client needs own license |
| Clone for testing | No additional license needed |
Production Databases: Odoo counts production databases for licensing. Test/staging databases typically don't count, but verify with Odoo SA for your agreement.
Migrating Enterprise to OEC.sh
If you're migrating from another host (Odoo SH, self-hosted, etc.) with Enterprise already in use:
- Export your database from the old host and import into OEC.sh (Migration Guides)
- Run through Steps 2–6 above to register the Enterprise repo on OEC.sh and deploy it
- Re-link the subscription in Odoo (Step 7) — the database UUID is preserved across migration so the subscription usually recognises it on first link
If the Odoo UI looks like Community after the migration import, that's expected until Steps 2–6 are complete. The database has the modules marked installed, but the Enterprise source code is not yet on your OEC.sh server.
Common Issues
"Repository not found" or "Write access denied" at deploy time
This is almost always a GitHub access problem, not a code problem. Check in this order:
- GitHub user not linked to Odoo subscription. Open
https://github.com/odoo/enterprisefrom your GitHub account. If it's a 404, go back to Step 2a. - PAT is missing the
reposcope. Regenerate the token withrepoticked (Step 2b) and update the git connection on OEC.sh. - You used OAuth instead of a PAT. OAuth does not work for
odoo/enterprise. Create a PAT (Step 2b) and use it as the git connection. - Wrong branch in the addon repo. The default
maindoes not exist onodoo/enterprise. Set the branch to match your Odoo major version (19.0,18.0,17.0, etc.).
"Enterprise features not available" inside Odoo
Causes:
- Enterprise repository not selected on the project
- Subscription code not entered
- Subscription expired
Solutions:
- Verify the repo is ticked on your project's Repositories tab
- Re-enter the subscription code in Settings
- Check expiration date with Odoo
"Module not found" for an Enterprise app
Causes:
- Enterprise repository didn't clone on the last deploy (see the deploy-time errors section above)
- Wrong branch selected — module exists on
19.0but you cloned18.0or vice versa
Solutions:
- Redeploy after fixing the underlying access / branch issue
- Verify the repository branch matches your Odoo version
Subscription Won't Link After Clone
Cause: Database UUID conflicts with the original.
Solution:
-
Connect via
docker execas described in the verification section -
Clear the existing subscription entries:
DELETE FROM ir_config_parameter WHERE key LIKE 'database.enterprise%'; -
Re-enter the subscription code in Odoo's Settings
Removing Enterprise
If you want to revert to Community:
Data Loss Warning: Some Enterprise apps store data in Enterprise-only tables. Removing Enterprise may result in data loss.
- Backup first — Create a full backup
- Uninstall Enterprise apps — Remove Enterprise-only modules from Odoo's Apps menu
- Remove repository — Untick the Odoo Enterprise entry on your project's Repositories tab
- Redeploy — Deploy with only Community modules
Enterprise vs Community
| Feature | Community | Enterprise |
|---|---|---|
| Core apps (CRM, Sales, Inventory) | Yes | Yes |
| Studio | No | Yes |
| Marketing Automation | No | Yes |
| Bank Synchronization | No | Yes |
| Barcode App | No | Yes |
| Quality Management | No | Yes |
| Helpdesk | No | Yes |
| Mobile Apps | Limited | Full |
| Odoo Support | No | Yes |
Support
OEC.sh Support
For hosting, deployment, and git-connection issues:
- Email: support@oec.sh
Odoo Enterprise Support
For licensing, GitHub access, and Enterprise features themselves:
- Portal: odoo.com/my/tickets (opens in a new tab)
- Email: Your assigned Odoo account manager