Certified Odoo Implementation Partner
Odoo 20 Readiness Checklist: Release Date, Features and Upgrade Planning
Odoo 20 release date, features, AI readiness, upgrade planning, and migration preparation for Canadian businesses.
Solvync built this Canada-focused readiness checklist for growing SMBs, mid-market teams, and complex operations reviewing Odoo 20 features, upgrade timing, migration risk, data cleanup, integrations, testing, training, and cutover planning.
- Odoo Partner
- Ready tier, listed on odoo.com
- Canadian delivery
- Serving Canadian SMBs
- Discovery first
- Timeline confirmed by scope
Odoo released Odoo 20 on September 24, 2026 at Odoo Experience in Brussels. Read the release notes
When is Odoo 20 being released, and should a Canadian business wait?
Odoo released Odoo 20 on September 24, 2026 at Odoo Experience in Brussels, and the release notes are now public. For a business that is new to Odoo, scope a new implementation on Odoo 20 from today. For a business already running Odoo, the next step is compatibility and regression testing on a staging copy before production moves to Odoo 20. The timing of that move should follow current process costs, required capabilities, version support, custom modules, integrations, data, testing, training, and project readiness.
Odoo Experience 2026 Odoo implementation Canada Odoo implementation services Odoo migration
Odoo 20 planning priorities
Odoo 20 release date, features, upgrade, and migration priorities
Use this guide when your team is researching the Odoo 20 release date, features, upgrade checklist, or migration plan. The goal is to decide what can move now, what should wait, and what needs compatibility, data, integration, security, and regression testing before production.
Release date and roadmap
Odoo 20 was released on September 24, 2026, the opening day of Odoo Experience 2026 in Brussels. The Odoo 20 release notes now replace the April roadmap as the reference for what shipped. Your production date is a separate decision, set by compatibility testing before cutover.
Features and AI readiness
Read the Odoo 20 release notes against the modules your team actually uses: Accounting, Inventory, CRM, Sales, Purchasing, Projects, Manufacturing, Website, reporting, automation, and AI-assisted workflows.
Upgrade and migration path
Confirm your current Odoo version, custom modules, third-party apps, integrations, data quality, database size, user roles, testing plan, and fallback process before choosing an Odoo 20 upgrade or fresh migration.
Canada-based implementation
Canadian teams should validate accounting setup, GST/HST workflows, inventory valuation, permissions, reporting, integrations, training, and cutover timing before go-live.
When is Odoo 20 coming out?
Odoo 20 came out on September 24, 2026. Odoo released it on the opening day of Odoo Experience 2026 at Brussels Expo, which ran September 24 to 26, and the Odoo 20 release notes and the 20.0 edition of the official documentation are now public. The technical requirements on this page come from that documentation. For your own business, the date that matters is the production cutover, which comes after module compatibility, staging tests, training, and cutover criteria have been validated.
Odoo also ships between major versions. Odoo Online moved through 19.1 (January), 19.2 (March), 19.3 (May), and 19.4 (July 2026) after Odoo 19, so part of what Odoo 20 brings had already reached Online customers before the launch. Those intermediary versions run on Odoo Online only. Odoo.sh and on-premise databases move between major versions such as 19.0 and 20.0. For most Odoo.sh and self-hosted teams, Odoo 20 is the first time these changes arrive.
The software upgrade is only one part of readiness. The current system, data, workflows, custom modules, integrations, test coverage, training, and cutover dependencies all need review. Starting now creates room to document and validate those dependencies before cutover pressure builds.
This checklist covers technical prerequisites, team training, and go-live timing. Whether you are on Odoo 17, 18, or any 19.x release, use it to figure out where you stand and what has to happen next.
What is confirmed in Odoo 20, and what is still roadmap
Odoo presented its Odoo 20 roadmap at Odoo Partner Days on 2 April 2026 and released Odoo 20 on September 24, 2026. We checked each April item against the Odoo 20 release notes and the 20.0 documentation. Each item below carries an evidence label: Shipped appears in the Odoo 20 release notes, Documented appears in Odoo's 20.0 documentation, and Roadmap was presented in April with no matching entry in either source yet.
Agentic AI, moving into the apps
A correction worth making, because plenty of articles get this wrong: Odoo 19 already has AI agents that take real actions. Odoo's documentation defines agent Tools as "the functions the agent can perform in Odoo," gives "creating a lead" as an example, and states plainly that they "enable real actions." Odoo 19 also has AI server actions, where AI decides which tool to call inside an automation.
What Odoo 20 changes is where the AI works. The Odoo 20 release notes describe AI agents that create and update records from plain instructions or from a PDF, agents that run inside automated and scheduled actions, a connection for outside AI tools through MCP, and voice dictation. Every AI feature consumes In-App Purchase (IAP) credits. Budget for them the way you would for any usage-based service.
Shipped
PostgreSQL 16 and Python 3.12 become the floor
This one is settled, and it is the item most likely to bite you. Odoo's 20.0 install documentation sets the new floor: the PostgreSQL minimum moves from 13 to 16, and the Python minimum moves from 3.10 to 3.12.
If you self-host, this is infrastructure work with its own testing cycle, and it is entirely independent of Odoo. Check what you are on today with psql --version and python3 --version, and treat any gap as a separate project you schedule before the upgrade.
Documented
The XML-RPC clock is running
If anything integrates with your Odoo, read this one twice. Odoo has deprecated the XML-RPC and JSON-RPC APIs at /xmlrpc, /xmlrpc/2, and /jsonrpc. Per Odoo's documentation, the db service was removed in Odoo 20: any script that creates, duplicates, lists, or drops databases over RPC stops working once you upgrade. The common and object services are scheduled for removal in Odoo 22 (fall 2028).
The replacement is the External JSON-2 API at /json/2/<model>/<method>, added in Odoo 19 and authenticated with a bearer API key. Odoo documents removal of the db service in Odoo 20 and schedules the common and object services for removal in Odoo 22. Audit each integration by endpoint and service instead of assuming compatibility. External API access also depends on the selected Odoo plan.
Partly shipped
Read-replica scaling
Read-replica configuration options already exist in Odoo's documentation. The broader scale-out work shown on the April roadmap does not appear in the Odoo 20 release notes. Plan infrastructure from the configuration Odoo documents today.
Relevance depends on measured concurrency, reporting load, hosting design, recovery requirements, and operational risk. Validate the architecture against actual workload evidence rather than company size.
Roadmap
Accounting and finance
Shipped in Odoo 20, per the release notes: reconciliation on any account, switching between tax-included and tax-excluded amounts, parent accounts that replace account groups, multiple identifiers per partner, and inventory valuation without installing the Inventory app. Two changes affect daily work. Entries on a bank account must now originate from bank transactions, and payment statuses were renamed: "In Process" becomes "Paid", and "Paid" becomes "Reconciled". Update any reports, filters, and training material that rely on the old labels.
Two April items have no matching release-note entry yet: single-signature SEPA or bank batch payments, and the AI accounting audit. Broader predictive budgeting and direct government reporting remain partner wishlist items. We are keeping all of these off the plan until Odoo documents them.
Shipped
Mobile, Owl 3, and unified resourcing
Unified resourcing shipped. In Odoo 20, Field Service lives inside the Planning app, where field shifts carry worksheets and customer signatures, and itineraries can be planned on a map. If your team uses Field Service today, plan training for the new location of those screens.
Odoo 20 also adds an offline mode for short interruptions: users can reopen records they viewed recently and queue edits until the connection returns. Odoo documents it for brief outages only, which makes it a continuity aid for crews working in poor coverage. Owl 3 does not appear in the 20.0 documentation. Custom JavaScript widgets still need a test pass on every major upgrade and belong in your estimate from day one.
Shipped
Canadian localization in Odoo 20
The Odoo 20 release notes add batch customer payments through CPA 005 pre-authorized debit (PAD) files, so a receivables team can collect from many customers in one bank file. Odoo 19 already paid vendor bills through CPA005 EFT files. Canadian companies also get more detailed expense accounts and localized asset models.
Payroll is unchanged. Odoo's 20.0 payroll documentation lists no Canadian payroll localization, so plan Canadian payroll through a separate payroll provider that posts into Odoo accounting.
Shipped
Moving to Odoo 20 from your current version
Odoo 20 changes the plan differently depending on where you start. Odoo provides standard support for each major version for three years, and its published support table sets the dates below.
Already on Odoo 17
Odoo lists September 2026 as the planned end of standard support for Odoo 17.0, so the Odoo 20 release puts Odoo 17 databases on the clock. On Odoo Enterprise, one upgrade request can take a database from 17 to 20, with Odoo's upgrade platform moving it through each major version on the way. Budget more testing than a single-version upgrade, since three versions of change land at once.
Already on Odoo 18 or 19
Odoo lists planned standard support for Odoo 18.0 until September 2027 and for Odoo 19.0 until September 2028, which leaves time to do this properly. Start with a staging upgrade, the PostgreSQL 16 and Python 3.12 check if you self-host, an audit of integrations that call the removed db service, and a retest of custom access rules against Odoo 20's simplified access rights.
On Odoo Online
Databases on Odoo Online 19.1 to 19.4 already carry part of what Odoo 20 brings, which makes the jump smaller. Confirm your exact version, then test key workflows on a duplicate database before production moves to Odoo 20.
New to Odoo
Scope a new implementation on Odoo 20 from today. Starting on the current major version gives you the longest standard support runway and keeps an upgrade project out of your first year. Confirm that every app and third-party module in scope has an Odoo 20 release before you commit to a go-live date.
The checklist: 5 phases to get ready
Sequence these phases from the current version, hosting model, custom code, integrations, data readiness, testing needs, and target cutover window. Infrastructure and compatibility work should begin early enough to allow a separate rehearsal and rollback plan.
Five phases. One clean Odoo 20 cutover.
Odoo 20 is out, and these phases now run against the released version. You don't need to do everything at once. Start Phase 1 this month and the rest will sequence themselves.
Discover
Figure out where you stand
You can't plan an upgrade without knowing what you're working with. This phase is about getting an honest picture of your current setup, including the parts nobody documented.
Stack
- Check your exact Odoo version. The major number alone hides too much. Are you on 17.0, 18.0, 19.0, or one of the Odoo Online releases from 19.1 to 19.4? Online databases on those releases already carry part of what Odoo 20 brings. Odoo.sh and on-premise databases run major versions only and meet those changes for the first time in Odoo 20. Each starting point has a different upgrade path, and jumping multiple versions (say, 17 to 20) is doable with more planning and testing than a single-version hop.
- List every installed module. Include core, OCA, marketplace, and custom modules. Third-party modules can block an upgrade when a compatible release, maintainer, dependency path, or test result is unavailable.
- Document your custom code. Inventory Python overrides, JavaScript widgets, QWeb report templates, and API integrations. Undocumented custom code can materially increase review and test effort. Flag JavaScript separately, because custom front-end widgets are the code most likely to need porting between major versions.
- Map every integration, then check how it authenticates. Payment gateways, shipping carriers, eCommerce platforms, banking feeds, EDI connections, custom APIs. For each one, find out whether it talks to Odoo over XML-RPC or JSON-RPC, because those endpoints are formally deprecated and Odoo has now published removal dates. Anything using the db service is already out of road in Odoo 20.
- Record database and filestore size. Run SELECT pg_size_pretty(pg_database_size('your_db')) in PostgreSQL and measure the filestore separately. Use timed staging rehearsals, backup and restore tests, hosting limits, and the approved downtime window to estimate cutover duration.
- Review your server specs. Write down your CPU, RAM, storage, PostgreSQL version, and Python version now so you have a baseline. Those last two decide how much work Phase 2 is, since Odoo 20 raises both minimums.
Get your tech stack ready
This phase validates infrastructure, supported versions, module compatibility, integrations, and the staging path before production planning begins.
Data
- Confirm the supported upgrade path. A direct multi-version upgrade may be possible, but it needs more compatibility, migration, and regression testing than a single-version path. Compare a direct route with an intermediate upgrade using Odoo's current upgrade guidance, hosting model, custom modules, integrations, and staging evidence.
- Move PostgreSQL to 16. This is settled. Odoo's 20.0 install documentation records the change: the minimum goes from PostgreSQL 13 to 16. Run psql --version to check where you are. A major PostgreSQL upgrade deserves its own change window, its own dump-and-restore rehearsal, and its own rollback plan, all separate from the Odoo upgrade.
- Move Python to 3.12. Also settled and also documented: Odoo 20 raises the minimum from Python 3.10 to 3.12. Check with python3 --version. On older LTS distributions this can mean a base image change or an OS upgrade. That is exactly the kind of surprise you want to find in July, because finding it in October is how cutover dates slip.
- Inventory anything speaking XML-RPC, then plan its exit. Odoo's documentation is now explicit. The db service is removed in Odoo 20. The common and object services are scheduled for removal in Odoo 22 (fall 2028). The replacement is the External JSON-2 API at /json/2/<model>/<method>, using a bearer API key. You do not need to rewrite everything this year, though you do need to know what breaks in 20 and what has a 2028 deadline. Note that external API access needs the Custom plan, since One App Free and Standard exclude it.
- Contact your third-party module vendors now. Ask every OCA module maintainer and marketplace app vendor whether an Odoo 20 version is published and tested, and when it will be if it is not. If something critical has no Odoo 20 release yet, plan around it before you set a cutover date.
- Build a staging environment. Clone your production system completely: same version, same modules, same data volume, same integrations. This is your test bed for everything that follows.
- Run the upgrade script on staging. As soon as Odoo's official upgrade platform offers Odoo 20 as a target for your database, request a test upgrade of a production copy into staging. Write down every error and warning.
- Port your custom modules. Expect changes in ORM methods, the web framework, and QWeb templates. Estimate the work only after inventorying each module, dependency, test path, maintainer, and JavaScript surface; custom widgets can materially change the effort.
- Test every integration against staging. Run each API connection against your Odoo 20 staging instance. Watch for authentication changes, the deprecated RPC endpoints above, and anything that quietly depends on the removed db service.
Clean your data
Odoo 20's AI features only work well with clean data. Garbage in, garbage out applies doubly when the system is making decisions on its own.
Team
- Merge duplicate records. Duplicate contacts, products, and vendors confuse AI agents because the system can't tell which record is the real one. Clean these up before the upgrade starts.
- Standardize your naming. Product names, customer categories, warehouse locations, chart of accounts. If your team has been naming things inconsistently for years, now is the time to fix it. AI pattern recognition breaks when "Widget A" and "widget-a" and "Widget Type A" are all the same product.
- Archive old records. Products you stopped selling two years ago, contacts who never responded, completed projects from 2023. Archiving reduces your database size (faster upgrades) and keeps the AI focused on current data.
- Verify your financials. Run a trial balance. Make sure open invoices match bank statements. Check your chart of accounts for orphaned entries. Anything Odoo 20's AI agents read or report on is only as reliable as the historical data behind it.
- Back everything up. Full database backup including filestore, stored offsite. Test restoring it. This is non-negotiable before any upgrade work starts.
- Document custom fields and relations. Every custom field, computed field, and relational override needs to be checked against Odoo 20's updated data model. If you don't have a list, make one now.
Prepare your team
Odoo 20 pushes AI into the apps your team already uses every day, which changes how they work. The training question here goes beyond where the new buttons are. Your team has to decide when to trust the system to act on its own, and that is a habit worth building before go-live.
Go-live
- Pick one upgrade champion. One person who owns the project from start to finish. They coordinate between departments, track progress on this checklist, and are the main contact for your Odoo partner.
- Document how people actually use Odoo today. Not the process documentation from your original implementation. How your team actually works. This becomes your baseline for measuring what Odoo 20's AI can take off their plates.
- Identify what the AI should handle. Go through your workflows and flag the repetitive stuff: PO generation, lead assignment, inventory reordering, invoice matching, customer follow-ups. These are candidates for Odoo 20's agentic AI.
- Schedule training time. Set the training plan by role, workflow risk, permissions, and acceptance criteria. The focus should include when to trust AI-assisted actions, when to override them, and how exceptions are reviewed.
- Tell everyone what's happening. Share the upgrade timeline with affected owners. Include expected downtime, workflow changes, acceptance responsibilities, and the named support and escalation route for the approved stabilization period.
- Write a rollback plan. Define what would trigger a rollback to the previous version. Include the procedure, who's responsible, and how you'd communicate it. You probably won't need it, but having it written down means you won't panic if something goes sideways.
Plan the actual go-live
Everything above is preparation. This is the part where you pick a date and commit. Don't rush it. A delayed upgrade beats a botched one every time.
- Aim for Q4 2026 or Q1 2027. Odoo 20 is out, and production should move only after compatibility evidence exists. Use Q4 2026 or Q1 2027 as planning windows, then choose the actual go-live date after staging, module checks, user acceptance testing, and cutover rehearsal.
- Choose a controlled cutover window. Avoid close cycles, filing deadlines, peak demand, or other business-critical periods. Select the date from rehearsed duration, rollback criteria, staff availability, reconciliation needs, and the approved support plan.
- Keep the old system accessible for an agreed verification period. Where licensing and policy allow it, use read-only access so the team can cross-reference source records while reconciliation and exception checks are completed.
- Define what "success" looks like before you start. Confirm access, core workflows, financial reconciliation, integration results, record counts, agreed exceptions, rollback criteria, and sign-off. Test all of this on staging before touching production.
- Budget time for feature adoption after go-live. The upgrade is step one. Set an adoption period based on the features enabled, affected roles, controls, training results, and support plan.
Upgrade or start fresh?
Not every business should upgrade their existing system. Sometimes starting over delivers more value.
Upgrade if
You're on Odoo 17, 18, or 19. Your custom modules are documented and maintained. Your data is reasonably clean. Your team knows the system. You want to keep your existing configurations, reports, and permissions. Budget or timeline is tight.
Start fresh if
You're three or more versions behind (Odoo 14, 15, or 16). Your system has accumulated years of abandoned customizations. Your business model has changed fundamentally since the original implementation. You want to redesign workflows around Odoo 20's AI from scratch.
Timeline at a glance
Through June 2026
Assess your current system. Clean your data. Get to a current Odoo 19 release if you're behind. Contact third-party module vendors about their Odoo 20 plans. If none of this has happened yet, do it now, since every later step depends on it.
Foundation
July and August 2026
Set up staging. Audit your PostgreSQL and Python versions against the 16 and 3.12 minimums, and schedule those upgrades separately. Inventory your XML-RPC integrations. Port custom modules, JavaScript first. If this slipped, run it now against the released Odoo 20.
Preparation
September 24 to 26, 2026
Odoo released Odoo 20 at Odoo Experience in Brussels on September 24. Read the release notes against the April roadmap to see which items shipped, then finalize your upgrade plan and schedule the production cutover.
You are here
Q4 2026 into Q1 2027
Schedule production only after compatibility testing, user acceptance, reconciliation, rollback criteria, and support ownership are approved. Use a verification or parallel-operation period only when the documented risk profile and system constraints justify it.
How Solvync runs upgrade projects
We use the same SYNC Framework for upgrades that we use for fresh implementations.
Related planning guides: Odoo implementation, Odoo customization, Odoo ERP in Canada, and Odoo implementation cost in Canada.
Scope
We audit the Odoo environment, map modules and customizations, document known risks and dependencies, and prepare a scope-based timeline and estimate with stated assumptions and exclusions.
Yield
We design the upgrade path: what to migrate, what to rebuild, which custom modules to port. Then we set up staging and start testing before anything touches production.
Navigate
We run the production upgrade during the approved window, validate the agreed data and workflows, train affected users, and provide the stabilization coverage documented in the engagement.
Cultivate
After you're stable, we help you actually use Odoo 20's new capabilities: configuring AI agents and automated actions, setting up reporting, building the automation that makes the upgrade worth it.
Get started
We help teams prepare Odoo upgrades before cutover pressure builds. Early review makes room for module checks, integration testing, data validation, training, and a practical cutover plan. If you want help figuring out where your system stands and what has to happen next, book a free readiness assessment. We'll look at your setup and build an upgrade plan that actually fits your timeline.
Ready to Transform Your Business with Odoo?
Book a free 30-minute business audit. No commitment, just clarity on how Odoo ERP fits your operations. Or review Solvync's Canadian Odoo migration planning guide.
Our Odoo ERP Services
End-to-end support for every stage of your ERP journey
Common Questions
Common questions about Odoo 20
Odoo 20 was released on September 24, 2026, the opening day of Odoo Experience 2026 in Brussels. The release notes and the 20.0 documentation are now public. If you already run Odoo, plan a post-release validation window for patches, module compatibility, testing, training, and production cutover before moving production.
Odoo Online uses rolling releases between annual major versions. Online databases moved through 19.1, 19.2, 19.3, and 19.4 before Odoo 20. Those intermediary versions exist on Odoo Online only. Odoo.sh and on-premise databases run major versions such as 19.0 and 20.0. Confirm the exact deployed version and hosting model before deciding what to test.
Yes, on Odoo Enterprise you submit one upgrade request naming Odoo 20 as the target version, and Odoo's upgrade platform moves the database through each intermediate major version itself. The Odoo Enterprise Subscription Agreement, section 4.3, states that a customer may convert a database from any version of the Software to a more recent Covered Version. The larger the gap, the more there is to test, so review custom modules, third-party apps, integrations, database size, accounting data and inventory workflows in a staging environment before committing. Odoo Community has no access to that platform and upgrades through OpenUpgrade one major version at a time.
Odoo 20 upgrade cost depends on current version, database size, custom modules, third-party apps, integrations, accounting and inventory complexity, testing depth, and training needs. Solvync scopes upgrade cost after a readiness review instead of quoting from version number alone.
Not automatically. Third-party modules need an Odoo 20-compatible release from their maintainers or a tested migration path. Before go-live, verify module availability, replace unmaintained apps where needed, and test workflows in staging with real data.
It depends on which service the integration calls. Odoo removed the db service in Odoo 20, so scripts that create, duplicate, list, or drop databases over XML-RPC or JSON-RPC stop working after the upgrade. The common and object services stay available until their scheduled removal in Odoo 22 and Odoo Online 21.1. External JSON-2 is the replacement. Inventory each integration by endpoint and service, confirm the hosting version and selected plan, and test the JSON-2 migration path before production moves.
Agentic AI in Odoo 20 means AI agents that act inside your database. Per the Odoo 20 release notes, agents can create and update records from plain instructions or PDFs, run inside automated and scheduled actions, connect to outside AI tools through MCP, and accept voice dictation. AI features consume IAP credits. Readiness depends on clean master data, role permissions, auditability, workflow design, and team training.
Timeline depends on version gap, custom code, integrations, data volume, and testing. A focused single-version upgrade can be planned in weeks, while multi-version or highly customized environments need more time for staging, validation, user acceptance testing, and cutover planning.
Odoo 20 was released on September 24, 2026. If you are new to Odoo, scope your implementation on Odoo 20 from today, after confirming that every app and third-party module in scope has an Odoo 20 release. If you already use Odoo, test the upgrade on a staging copy and move production to Odoo 20 once compatibility testing passes.
Odoo's support policy lists September 2026 as the planned end of standard support for Odoo 17.0, the same month Odoo 20 was released. Odoo provides standard support for each major version for three years, with extended support available for an extra fee. Odoo 17 databases should plan an upgrade to Odoo 19 or Odoo 20 now.
Field Service moved into the Planning app in Odoo 20. Field shifts, worksheets, customer signatures, and itinerary planning are now documented under Planning. Update training material and user menus before the upgrade.
No. Odoo's 20.0 payroll documentation lists no Canadian payroll localization. Canadian businesses on Odoo 20 should plan payroll through a separate Canadian payroll provider that posts results into Odoo accounting.
Yes. Solvync is a Canada-based Certified Odoo Implementation Partner in Calgary serving growing SMBs, mid-market teams, and complex operations with Odoo 20 readiness assessments, upgrade and migration planning, staging tests, data validation, user training, and cutover support.

Explore more from Solvync
Services, guides and locations related to this page.
- Clarify the need
- Control the scope
- Plan the next step
Ready to Replace Your Spreadsheets?
Bring one workflow, the current systems, and the outcome you need. Leave with a fit verdict, the first-phase boundary, key risks, and the evidence still needed before a quote.
