Skip to main content
Complete 15-Step Migration Guide

Migrate from Odoo.sh to OEC.sh

Zero-downtime migration with complete data preservation. Keep all your customizations, filestore, and configurations. Save up to 70% on hosting costs. See our detailed OEC.sh vs Odoo.sh comparison to understand why businesses are switching.

15
Detailed Steps
1-4 hrs
Typical Duration
$0
Migration Fee
100%
Data Preserved

Pre-Migration Checklist

Complete these preparations before starting your migration. Learn more about backups in our backup and recovery guide.

1

Review current Odoo.sh subscription

Check your billing cycle and plan details. Note the renewal date to avoid paying for an extra month after migration.

2

Create a complete database backup

Generate a fresh backup from your Odoo.sh dashboard. This ensures you have the most recent copy of all business data.

3

Download your filestore

Export all attachments, documents, product images, and uploaded files from your Odoo.sh environment.

4

Document all custom modules

List every custom module installed, including OCA modules, third-party addons, and any proprietary code.

5

Record your exact Odoo version

Note the precise Odoo version (e.g., 17.0.20240315) to ensure perfect compatibility on OEC.sh.

6

Inventory external integrations

Document all API connections, payment gateways, shipping providers, and third-party services.

7

Note scheduled actions and cron jobs

List all automated tasks, their schedules, and any custom scheduled actions that need recreation.

8

Export email templates and reports

Backup any customized email templates, QWeb reports, and document layouts.

15-Step Migration Guide

Follow these steps to migrate your Odoo deployment from Odoo.sh to OEC.sh

Preparation
Export from Odoo.sh
Import to OEC.sh
Verification
DNS Switchover
1
Preparation

Create Your OEC.sh Account

Sign up for a free OEC.sh account at oec.sh. No credit card required. You will gain immediate access to the dashboard where you can manage all your Odoo deployments.

Estimated time: 2 minutes

Tip: Use your work email to get access to team collaboration features.

2
Preparation

Connect Your Cloud Provider

Link your preferred cloud provider account (AWS, DigitalOcean, Hetzner, OVH, etc.) to OEC.sh. We support 14+ providers, so choose one that matches your budget and compliance requirements.

Estimated time: 5 minutes

Tip: Hetzner offers the best value for most businesses, while AWS is ideal for enterprise compliance needs.

3
Preparation

Provision Your Server

Create a new server in your chosen cloud provider through OEC.sh. Select a server size that matches or exceeds your current Odoo.sh resources. OEC.sh will automatically install Docker, configure security, and set up monitoring.

Estimated time: 5-10 minutes

Tip: Start with a slightly larger server than needed - you can always downsize later.

4
Export from Odoo.sh

Create Fresh Backup on Odoo.sh

Navigate to your Odoo.sh project dashboard, go to the Backups section, and create a new backup. Wait for it to complete before downloading. This ensures you capture the most recent data.

Estimated time: 5-15 minutes

Important: Do not skip this step. Use a fresh backup, not an old one, to minimize data loss.

5
Export from Odoo.sh

Download Database Backup

Download the complete database backup from Odoo.sh. The backup includes your PostgreSQL database with all transactions, configurations, and user data. For large databases, use a download manager to handle interruptions.

Estimated time: 10-30 minutes

Tip: Download during off-peak hours for better speeds and to capture the most recent transactions.

6
Export from Odoo.sh

Download Filestore

Download your complete filestore containing all attachments, product images, documents, and uploaded files. On Odoo.sh, this is typically bundled with the database backup, but verify completeness.

Estimated time: 10-60 minutes

Tip: Compare filestore size with your Odoo.sh usage statistics to ensure nothing is missing.

7
Export from Odoo.sh

Clone Custom Module Repositories

If your custom modules are in Odoo.sh private repositories, clone them to your own GitHub or GitLab account. Ensure you have access to all dependencies and OCA modules your project uses.

Estimated time: 10-20 minutes

Important: Odoo.sh private repos become inaccessible after subscription ends. Clone everything before canceling.

8
Import to OEC.sh

Create Odoo Project in OEC.sh

In OEC.sh, create a new project matching your current Odoo version exactly. Select the same major and minor version running on Odoo.sh. Configure worker count, memory limits, and other settings based on your current usage.

Estimated time: 5 minutes

Important: Version must match exactly. Migrating between Odoo versions should be done as a separate step after the platform migration.

9
Import to OEC.sh

Upload Database to OEC.sh

Use the OEC.sh database import wizard to upload your backup. Our system automatically detects the backup format (ZIP, SQL, or dump) and handles the import process. For databases over 10GB, contact support for assisted import.

Estimated time: 15-60 minutes

Tip: Large databases (50GB+) may take 30-60 minutes. You will receive a notification upon completion.

10
Import to OEC.sh

Upload Filestore

Transfer your filestore to the new environment. OEC.sh supports direct upload through the dashboard, SFTP transfer, or secure rsync for larger filestores. Ensure the filestore directory structure is preserved.

Estimated time: 15-60 minutes

Tip: For filestores over 20GB, use SFTP or rsync for faster and more reliable transfers.

11
Import to OEC.sh

Configure Custom Module Repository

Connect your GitHub or GitLab repository containing custom modules to your OEC.sh project. Configure the branch, addons path, and any build commands. OEC.sh automatically installs modules from your repository on each deployment.

Estimated time: 10 minutes

Tip: Use branch-based deployments to test changes in staging before production.

12
Verification

Verify Module Installation

Check that all custom modules are properly installed and loaded. Review the Odoo logs for any import errors or missing dependencies. Install any required Python packages through the OEC.sh configuration.

Estimated time: 15-30 minutes

Important: Module compatibility issues are the most common migration problem. Test each custom module thoroughly.

13
Verification

Test All Business Processes

Perform comprehensive testing of all critical business workflows: sales orders, invoicing, inventory, accounting reports, email sending, and any custom processes. Verify that scheduled actions run correctly.

Estimated time: 1-2 hours

Important: Never skip testing. Run through your most critical business workflows before going live.

14
DNS Switchover

Reduce DNS TTL

Several days before the final switchover, reduce your DNS TTL (Time To Live) to 300 seconds or less. This allows for faster propagation when you switch to OEC.sh and quick rollback if needed.

Estimated time: 5 minutes

Tip: Do this at least 48 hours before migration so the low TTL propagates fully.

15
DNS Switchover

Update DNS and Go Live

Point your domain (e.g., erp.yourcompany.com) to your OEC.sh environment. Update your DNS CNAME or A record to the provided address. OEC.sh automatically provisions SSL certificates via Let's Encrypt once DNS propagates.

Estimated time: 5-30 minutes

Tip: Monitor access logs on both systems during propagation to ensure smooth transition.

What Gets Migrated

Everything transfers seamlessly to your new OEC.sh environment - 100% data preservation guaranteed

Complete Database

All business data including customers, products, sales orders, purchase orders, invoices, payments, journal entries, and every transaction ever recorded.

  • Customer and vendor records
  • Product catalog and variants
  • Sales and purchase history
  • Accounting entries and reports

Filestore and Attachments

Every file uploaded to Odoo including product images, document attachments, email attachments, report PDFs, and user uploads.

  • Product images
  • Document attachments
  • Generated reports
  • Email attachments

Custom Modules

All custom addons, OCA modules, and third-party modules. Your customizations work identically on OEC.sh with proper repository configuration.

  • Custom business logic
  • OCA community modules
  • Third-party addons
  • Inherited views and models

System Configurations

All Odoo settings including company information, currencies, tax configurations, sequences, and system parameters.

  • Company settings
  • Tax configurations
  • Currency rates
  • System parameters

User Accounts and Access

All user accounts with their passwords, access rights, group memberships, and security settings are preserved exactly.

  • User credentials
  • Access rights
  • Group memberships
  • Multi-company access

Historical Data and Audit Trail

Complete history including chatter messages, activity logs, tracking fields, and the full audit trail for compliance.

  • Chatter history
  • Activity logs
  • Field tracking
  • Audit records

Migration Timeline and Downtime

Estimated timelines based on deployment size. Actual times may vary.

Deployment SizeDatabaseUsersTotal TimeDowntime
Small
Typical small business deployment with standard modules and minimal customization.
Under 5GB1-20 users1-2 hours15-30 minutes
Medium
Mid-sized company with multiple custom modules and integrated systems.
5-20GB20-100 users2-4 hours30-60 minutes
Large
Enterprise deployment with extensive customization and large transaction history.
20-100GB100-500 users4-8 hours1-2 hours
Enterprise
Large enterprise with multiple companies, complex integrations, and massive data volumes.
100GB+500+ users1-2 days2-4 hours

Parallel Deployment

Run both Odoo.sh and OEC.sh simultaneously. Test your new environment thoroughly before switching.

Minimal Downtime Window

Only the final database sync and DNS switch require downtime. Schedule during off-peak hours for minimal impact.

Instant Rollback

If any issues arise, simply revert DNS to Odoo.sh. Your original setup remains unchanged until decommissioned.

Zero-Downtime Migration Option

For businesses requiring zero downtime, we offer a synchronized migration approach where both systems run in parallel with real-time data sync. The final cutover happens seamlessly during DNS propagation. Contact our migration team for enterprise-grade migration planning.

White-Glove Migration Service

Let our experts handle your migration from start to finish. We ensure zero data loss and minimal downtime.

  • Dedicated migration specialist
  • Pre-migration assessment call
  • Complete data transfer execution
  • Custom module verification
  • Post-migration validation
  • 7-day support warranty
Migration Assistance Pricing
Free
with Agency plan ($199/mo)
Pro plan customersEmail Support
Free plan customersSelf-Service
View Pricing PlansSchedule Migration Call

Migration FAQ

Common questions about migrating from Odoo.sh to OEC.sh

How long does migration from Odoo.sh take?

Most migrations complete in 2-4 hours of active work. The actual time depends on your database size and complexity. A typical 10GB database with standard customizations takes about 2 hours. Larger databases (50GB+) may take 4-8 hours including thorough testing. The longest part is usually downloading and uploading the filestore, which can be done in parallel with other tasks.

Is there downtime during migration?

With our parallel deployment approach, actual downtime is minimal. You run both Odoo.sh and OEC.sh simultaneously during migration, test thoroughly on OEC.sh, then switch DNS during a brief maintenance window (typically 15-30 minutes). Most businesses schedule this during off-peak hours. The final database sync and DNS switch are the only steps requiring downtime.

What data gets migrated from Odoo.sh?

Everything transfers completely: your full PostgreSQL database with all transactions, the complete filestore with all attachments and images, custom modules, system configurations, user accounts with access rights, email templates, scheduled actions, and complete audit history. Nothing is left behind - your OEC.sh environment is an exact copy of your Odoo.sh deployment.

Can I migrate custom modules from Odoo.sh?

Yes, all custom modules migrate seamlessly. Connect your GitHub or GitLab repository to OEC.sh, and modules are automatically installed on each deployment. If your modules are in Odoo.sh private repositories, you will need to clone them to your own Git repository first. OCA modules and third-party addons work identically on OEC.sh.

Do I keep my custom domain after migrating?

Absolutely. Simply update your DNS records to point to OEC.sh instead of Odoo.sh. We automatically provision SSL certificates via Let's Encrypt within minutes of DNS propagation. Your users will access Odoo at the same URL (e.g., erp.yourcompany.com) with no visible difference except potentially improved performance.

What Odoo versions can be migrated to OEC.sh?

OEC.sh supports all Odoo versions from 14.0 through the latest 18.0 and beyond. We recommend migrating to the same version first, then upgrading versions separately if needed. Both Community and Enterprise editions are supported. Your Enterprise subscription continues to work on OEC.sh - only the hosting changes, not your Odoo license.

Is there a migration service available?

Yes, we offer tiered migration assistance. Free plan customers have access to comprehensive documentation and community support. Pro plan customers receive email support during migration. Agency plan customers get white-glove migration service with a dedicated specialist who handles the entire process. Contact us for complex migrations with special requirements.

What if something goes wrong during migration?

We recommend keeping your Odoo.sh subscription active for at least one week after migration. If any issues arise, you can immediately switch back by reverting your DNS changes. Your original Odoo.sh setup remains completely unchanged until you explicitly decommission it. We also provide rollback capabilities and priority support during migration windows.

How do I backup before migrating from Odoo.sh?

In Odoo.sh, go to your project dashboard, navigate to Backups, and click Create Backup. Wait for the backup to complete, then download both the database and filestore. We recommend creating a fresh backup immediately before migration to capture the most recent data. Store the backup securely as an additional safety measure. For detailed steps, see our backup and recovery guide.

Can I test on staging first before migrating production?

Absolutely, and we strongly recommend it. Create a staging environment on OEC.sh, import your production backup there, and test all business processes thoroughly. Once confident, perform the same steps on your production environment. This approach eliminates surprises and ensures a smooth transition with minimal risk to your business operations.

Ready to Migrate from Odoo.sh?

Join businesses saving thousands per year with OEC.sh. Migration takes 1-4 hours, and our team is here to help. Check our transparent pricing to see how much you can save.

1-4hrs
Typical Migration
$0
Migration Fee
100%
Data Preserved
70%
Cost Savings

Disclaimer

OEC.sh is an independent platform operated by OpenEduCat Inc. We are not affiliated with, endorsed by, or sponsored by Odoo S.A., Odoo.sh or their respective parent companies. All product names, logos, and brands mentioned are property of their respective owners and are used solely for identification and comparison purposes.

Pricing and feature information for third-party services is based on publicly available data and may not reflect current rates, promotional offers, or your specific configuration. Always verify pricing directly with the respective provider before making purchasing decisions.

For complete legal information, see our Legal Notices & Trademark Attributions.