Financial TimesAmericas' Fastest-Growing 2025
Certified PartnerOdoo Gold · Adobe Solution · Shopify Plus partnershipsOdoo Gold · Adobe · Shopify Plus partnerSee all
One business dayA senior architect replies to every inquiry · +1 (631) 897-7276Architect reply within one business dayLet's talkCall us
Inc. Regionals 2025Fastest-growing private companies in AmericaInc. Regionals 2025 honoreeSee awards
Americas' Fastest-Growing Companies 2025Recognized by the Financial TimesFT Fastest-Growing Companies 2025See the rankingRanking
4.8 / 5 on Clutch265 verified client reviews4.8/5 on Clutch · 265 reviewsRead the reviews
4.8 · 265 Clutch reviews
US United States

Odoo 18 to Odoo 19 migration: what changes and how we move you

Odoo 19 arrived in September 2025 and reworked how taxes, product units, receipts and employee records behave. Brainvire inventories your Odoo 18, makes each module installable on 19, then proves it on a copy before a date is agreed.

OdooGold Partner
2,000+Brands served
95%Client retention
14+Years of experience
What it is

Moving a live database from Odoo 18.0 to Odoo 19.0. Odoo’s own upgrade platform performs the technical conversion of the standard modules and data. Making custom modules work on 19 is the customer’s or partner’s responsibility, and that is where the real work sits.

Who it is for

Teams running Odoo 18.0 in production, especially those carrying custom modules, Studio changes or third-party apps nobody has inventoried since they were built.

Typical timeline

Brainvire plans a straight version upgrade at 3 to 8 weeks, assuming a code freeze and one full rehearsal. These are our own planning figures, not Odoo published ones. Where new scope travels with the upgrade, our implementation bands apply instead.

Typical team

A technical consultant who ports the modules, a functional consultant who owns the test script, a solution architect on the upgrade posture, and your application owner as counterpart.

/ Before the next version lands

Why does the Odoo 18 upgrade keep getting postponed?

Four reasons we hear, and none of them is the upgrade itself.

Support

The window on 18 is published, not negotiable

Odoo supports each major version for three years and prints the end date. On Odoo Online the upgrade is mandatory on a schedule and runs automatically once the deadline passes.

Unknowns

Nobody has listed what sits above the standard

Studio changes, custom modules, third-party apps, things edited in place. Odoo will not upgrade a database with custom modules until a version of them exists for the target release.

Redundancy

Odoo 19 may already ship what you paid to build

A year-end statements pack printed in one action, duplicate bill detection at two warning levels, a Gantt view for manufacturing orders. Odoo’s guidance is to challenge every customization against what 19 added.

Rehearsal

The only test on the calendar is go-live

Without an upgraded test database and a run through the real flows, the first time anyone sees Odoo 19 holding your data is the morning it has to work.

Odoo Gold PartnerBest Partner North America 2025 FinalistOutstanding Customer SatisfactionOdoo 19

Trusted by enterprise Odoo teams worldwide

Bay Alarm MedicalTentAndTableFood Bank SingaporeAmerican Tire DepotEden TextileCadarPuma EnergySuper Asia FoodsUltimate ToysAjmal PerfumesPan HomeNike

/ Version to version

What actually changed between Odoo 18 and Odoo 19?

Twelve changes that alter how a working Odoo 18 database behaves on 19, each taken from Odoo’s own Odoo 19 release notes. Entries Odoo marks as available from an earlier version are left out; the third column is our reading, not theirs. More on what is new in Odoo 19.

AreaWhat Odoo 19 changedWhat it means for your upgrade
AIAn AI application: agents built from topics and sources, AI fields, and Ask AI, which turns a natural-language query into an Odoo domainOptional, and configuration work rather than a switch. Planned after the upgrade, not inside it
Fiscal positionsTax mappings were removed from fiscal positions. Each tax now declares the position it applies in and which taxes it replacesTax determination is re-tested first if you run several regimes. Most often the row that moves a date
Units and packagingsProduct units and product packagings merge into one model, and unit of measure categories were removedProduct data is reviewed before the upgrade, not after
ReceiptsPurchase and sales receipts were merged with invoices and bills. Sales receipts are switched on in the settingsFilters, reports and automations pointing at the old receipt models are rebuilt
ExpensesExpense reports were removed. Several expenses are now submitted, approved and posted together from the list viewAny approval flow or report built on the expense report object gets redesigned, not patched
Turning AI onAPI keys are required for Odoo.sh and on-premise databases to use AI features; Odoo Online users may add their own but need not. Gemini and OpenAI are the supported providers, and Odoo’s own edition comparison marks AI for Enterprise and crosses it for CommunityIf you self-host, upgrading does not switch AI on. Provider choice belongs in your security review, because your data leaves Odoo
EmployeesEmployees and contracts were merged and a versioning mechanism introduced, remote work is enabled by default, and certifications gained their own tab on the employee formHR customizations and payroll integrations that read the contract model need the closest look on this list
PayrollBatches were renamed Pay Runs with a guided interface, an employee’s net salary can split across several bank accounts, and one master payroll report covers all localizationsPayroll output leaves the building, so it is tested against a real period rather than a sample record
ReplenishmentReordering rules gained a horizon setting, 365 days by default, and a deadline field. Default virtual locations that were not needed were removed and location configuration simplifiedReplenishment behaves differently with a horizon in place, so it is re-checked against your real demand history
ManufacturingA Gantt view for manufacturing orders, several serial or lot numbers from a single order, a default batch size on bills of materials, and manual consumption removed from BoM configurationBills of materials are reviewed first: some planning customizations can be retired rather than ported forward
Accounting controlsA default Annual Statements composite report prints the balance sheet, profit and loss and trial balances together, and duplicate bill detection now warns at two levels and excludes duplicates from automatic postingControls finance teams often built by hand are standard now. Cheaper to delete than to carry across
Studio and platformStudio opens from any view, sets fixed list column widths, adds button tooltips and updates HTML fields in actions. Browsed data and translations are cached, and the search bar renders before the data loadsReport and view code can sometimes be retired in favor of Studio, which the upgrade service carries while Studio stays installed

/ Responsibilities

Who does what in an Odoo 18 to 19 upgrade?

The boundaries are published, not negotiable. All of it is stated in Odoo’s upgrade documentation and its guide to upgrading a customized database. We name them here so nobody finds the boundary in week five.

OdooRuns the upgrade

Odoo converts the standard database

Odoo’s upgrade platform performs the technical conversion of standard modules and data. Its Enterprise agreement covers standard applications, Studio customizations while Studio stays installed and subscribed, and developments under a maintenance of customizations subscription. Brainvire does not perform this step.

Where it leads: What Odoo 19 actually changedTalk it through →
BrainvirePorts the code

Your custom modules are our job

That same agreement expressly excludes additional modules without a maintenance contract, built in-house or by third parties, including Odoo partners. So we do it: each module made installable on an empty Odoo 19 database first, then on the upgraded copy.

Where it leads: How we build upgrade-safe codeTalk it through →
Nobody, by defaultOutside the SLA

Three things no upgrade includes

Odoo lists what its upgrade service does not cover: cleaning pre-existing data and configurations while upgrading, upgrading additional modules without a maintenance contract, and training people on the new version. It also will not switch editions or change hosting type.

Where it leads: Training on the new versionTalk it through →
Both of usProves it works

Testing is shared, and it is the point

Odoo is explicit: if a change in a new version breaks a customization, making it compatible is the responsibility of whoever maintains that module. We test on a copy against your real flows, and what fails is fixed before a date is agreed.

Where it leads: Book an upgrade rehearsalTalk it through →

/ Delivery

How does an 18 to 19 upgrade actually run?

Odoo publishes a six-step path for a customized database; we run it as four stages. Brainvire plans a straight version upgrade at 3 to 8 weeks. With new scope, our implementation bands apply instead:

01020304

Freeze and challenge

Development stops: anything built during the upgrade has to be upgraded and tested again. Every customization is argued against what Odoo 19 does as standard, and the redundant ones retired here.

Request an upgraded test database

Odoo delivers a converted copy. How you request it depends on hosting: the Upgrade platform, the Odoo Online database manager, your Odoo.sh project, or the command line on-premise.

Make every module installable on 19

Each module goes on an empty Odoo 19 database first, so tracebacks come from the module rather than your data, then on the upgraded copy. Renamed models and fields need upgrade scripts.

Test, rehearse, cut over

Your flows run end to end on the upgraded copy, including integrations, server actions and exports. If time has passed we request a fresh copy, rehearse the day before, then take production down in the quietest window you have.

/ Scope

What makes an 18 to 19 upgrade bigger or smaller?

Four things decide it, and only one of them is Odoo. Two databases on the same version, size and hosting can sit weeks apart on this list.

Custom modules

How many, and how they were built

Odoo names what breaks first: invalid dependencies, changed assets, references to fields, models or views that no longer exist, xpaths that moved. A module that extends by inheritance moves forward; one that edited a standard file has to be found.

Studio and config

What was changed without code

Studio work is carried by the upgrade service while Studio stays installed and the subscription is active. Configuration, saved filters, mail templates and translations are still re-checked by hand.

Integrations

What talks to the database

EDI feeds, APIs, connectors and scheduled jobs sit on Odoo’s own do-not-forget-to-test list, alongside automated actions, data exports and server actions run from list selections.

Hosting

Where the database lives

Odoo Online, Odoo.sh and on-premise each request the upgrade differently and each carries its own obligation to move. On Odoo.sh the upgraded copy is restored and your modules updated on every commit.

/ Version moves, on the record

Have we moved a customized Odoo database before?

Three version-to-version moves, each with the case study behind it. We claim no delivered Odoo 19 upgrade here, because no published Brainvire case study reports one yet.

/ The timing decision

Should you upgrade to Odoo 19 now, or wait?

Both are real answers, and we size both before you decide. Dates come from Odoo’s published standard and extended support table, which marks future end dates as planned; the obligation to move comes from its upgrade documentation, which differs per hosting type. Move now if your customization surface is light; wait if the module list needs a project of its own.

CriterionUpgrade to Odoo 19 nowWait
Support runway Odoo publishesOdoo 19.0 was released September 2025, with standard support listed to September 2028 and marked plannedOdoo 18.0 is listed to September 2027, also planned, and that window only narrows
Who picks the dateYou do, inside your own release calendarOn Odoo Online a major upgrade is mandatory every two years and runs automatically if no action is taken before the due date
Version gap for your custom codeOne major version. Odoo notes that the smaller the gap, the easier the upgrade should beTwo versions once the next release lands, absorbed in one test cycle
Release notes to absorbThe Odoo 19 release notes, one setThose plus the next release’s, arriving together
What arrives on day oneThe AI application, the reworked fiscal positions, merged units and packagings, and the rest of the 19 listThe same list later, with more standard change to work through in one pass
What comes afterNothing further until the next major version, on a support window Odoo publishes to 2028The same project, later, against a shorter runway on the version you are still running

/ Questions we are asked

Odoo 18 to 19 migration FAQs.

What is an Odoo 18 to 19 migration?

It is a version upgrade: a live Odoo 18.0 database moved onto Odoo 19.0. Odoo's own upgrade platform converts the standard modules and data. The work that takes the time sits above that line, in making every custom module installable on 19 and proving your flows still run on a test copy.

What changed in Odoo 19?

Odoo 19 added an AI application, removed tax mappings from fiscal positions so each tax declares where it applies, merged product units with packagings, merged purchase and sales receipts into invoices and bills, removed expense reports, merged employees with contracts under a versioning mechanism, and renamed payroll batches to Pay Runs.

Who runs the upgrade, Odoo or Brainvire?

Odoo does. Its upgrade platform performs the technical conversion of standard modules and data to the target version, and Brainvire does not perform that step. Odoo's service level agreement covers standard applications, Studio customizations while Studio stays installed and subscribed, and developments under a maintenance of customizations subscription. The rest is ours.

Will our custom modules run on Odoo 19?

Only after somebody ports them. Odoo warns that a database with custom modules cannot be upgraded until a version of those modules exists for the target release, and its service level agreement excludes the upgrade of additional modules not covered by a maintenance contract that are created in-house or by third parties, including Odoo partners. We install each one on an empty Odoo 19 first, then on the upgraded copy.

How long does an 18 to 19 upgrade take?

Brainvire sizes a straight version upgrade at three to eight weeks. That band is ours, not something Odoo publishes, and it assumes development is frozen and one full rehearsal happens before go-live. If new scope rides along with the upgrade, our implementation bands apply instead: eight to twelve weeks small, twelve to twenty-four mid-market.

How long is Odoo 18 supported?

Odoo gives every major version three years of standard support, meaning helpdesk support, bug fixing and security updates. Its published support table lists Odoo 18.0 as released in October 2024 with standard support ending September 2027, and Odoo 19.0 as released in September 2025 with standard support ending September 2028. Both end dates are marked planned.

Is upgrading to Odoo 19 mandatory?

That depends on where the database is hosted. Odoo states that on Odoo Online a major-version upgrade is mandatory every two years and is carried out automatically if no action is taken before the due date. Odoo.sh allows two further years after the initial three. On-premise databases may stay put indefinitely, which Odoo does not recommend.

Do Odoo 19's AI features work as soon as we upgrade?

No. Odoo documents that API keys are required for Odoo.sh and on-premise databases to use AI features, while Odoo Online users may add their own but are not required to. Odoo supports Gemini and OpenAI as providers, and its own edition comparison marks AI as an Enterprise feature rather than a Community one.

Can Odoo 19 AI change data in our database?

Not on its own. Odoo documents that the standard Ask AI agent cannot make changes to the database: it can open views and display reports, but it cannot create leads or alter data. An agent with no topics assigned can only provide information. Anything that writes is an agent somebody configured deliberately, with tools attached.

How is an Odoo 19 upgrade tested before go-live?

Against a neutralized copy of your own data. Odoo disables scheduled actions on a test database, archives the outgoing mail servers, resets payment providers and delivery carriers to test, and switches off bank synchronization. We work through your real flows on that copy, including integrations and exports, then rehearse the full upgrade the day before.

Will there be downtime during the upgrade?

Yes, and anyone promising otherwise is guessing. Odoo states that the production database is unavailable for as long as the upgrade takes, which is why the move is scheduled for your quietest window. On Odoo.sh the platform reverts automatically if the upgrade fails and keeps a backup taken beforehand. On Odoo Online a finished upgrade cannot be undone.

What sits outside Odoo's upgrade service?

Three things, in Odoo's own words: cleaning up pre-existing data and configurations while upgrading, upgrading additional modules without a maintenance contract whether built in-house or by a third party including Odoo partners, and training people on the new version's features and workflows. An upgrade also will not switch editions or change hosting type.

/ Next step

Let’s find out what is really sitting on top of your Odoo 18.

  • A senior architect replies within one business day
  • Your details are never shared or sold
  • An NDA can be signed before we hear any detail

US +1 (631) 897-7276 · Gulf +971-54-737-4253 · Singapore +65-9086-0319 · India +91-22-6116-3300.

Fox SportsSouthwestNikeDisneyMcAfeeUnder ArmourSesame WorkshopInsomnia CookiesPan Emirates Home

Trusted by 2,000+ brands worldwide

“Brainvire has helped our business grow. We feel like it’s a true partnership. They’re always present. It’s been seven great years, looking forward to more.”
Mr. Kevin ClorCIO - Tent and Table

Book a working session

Tell us which Odoo version you run and what has been built on top of it.

    Ten characters minimum. An NDA can be signed before we hear any detail.