Released 24 September 2026 at Odoo Experience, Brussels. Sources: official release notes (odoo.com/odoo-20-release-notes) and Odoo 20: The Honest Guide by Andrew Law (, updated 26 Sep 2026). Items marked [Reported] come from partners and are not yet confirmed by Odoo.
1. The 60-second version
| 5 big wins | 5 big watch-outs |
|---|---|
| Bank entries must come from bank transactions (no manual JEs to the bank account) | Employees without a login now cost a Light User licence |
| "Avalara Included" US/Canada sales tax for SMBs | Custom plan price increase (~20 % EU, ~30 % US list) |
| COGS corrects itself when costs change after delivery | AI costs twice: Agentic AI on the Custom plan + IAP credits per use |
| Suggested min/max reordering levels from demand history | Built-in AI billed via Odoo; no bring-your-own key [Reported] |
| Native MCP server: connect Claude, ChatGPT etc. to Odoo with your access rights | Customisations need retesting: record rules moved into access rights, tracking values changed, new icons, new PDF engine [Reported] |
2. Functional changes by area
Accounting
- Bank consistency: every bank-account entry originates from a bank transaction; faster statement validation.
- Pay vendor bills from Odoo via payment-initiation (PISP); sign now, pay later (bank/country dependent).
- Bill line prediction (product, account, tax, analytic, even vehicle) from history.
- Duplicate & double-payment protection (red/yellow warnings; the payment wizard subtracts pending payments).
- Reconciliation: split a transaction across accounts, batch validation, rerun auto-reconciliation, reconciliation summary; matching rules with tolerance (amount/%) and order per rule; automatic customer invoice reminders.
- Guided tax returns with automated checks and an auditor agent; loans created from a PDF schedule [Reported].
- Payment statuses renamed: "In Process" → "Paid"; "Paid" → "Reconciled". Mark as Reconciled moved to the action menu.
- Fiscal-position tax enforcement: a default tax not in the fiscal position is removed, even with no replacement.
- Parent accounts replace account groups; depreciation models replace asset models; depreciation by rate.
- CTA line for currency translation; multi-ledger consolidation; withholding tax breakdown on bills.
Inventory accounting (builds on v19's model)
- Accruals (Bills to Receive, Billed Not Received, Invoices To Be Issued, Invoiced Not Delivered) posted directly from the valuation closing report into the inventory valuation account.
- COGS retro-update when a landed cost or bill price arrives after delivery.
- Inter-company resupply with valuation transferred correctly; synced bills auto-match synced POs.
- Landed costs per product on a transfer; subcontracting valued from the vendor pricelist; MO overview shows provisional → real cost.
- Still: no valuation layers, no interim accounts, no JE at receipt/delivery. You must run the close.
Month-end inventory close (do it monthly):
- Accounting > Review > Inventory Valuation → date = period end.
- Post accruals for Bills To Receive (received, not billed).
- Post accruals for Billed Not Received, Invoices To Be Issued, Invoiced Not Delivered.
- If you manufacture, review WIP.
- Generate and post the stock closing entry; explain the Stock Variation balance.
- Compare the inventory account on the balance sheet with the Inventory Stock report. They must match.
Inventory & Purchase
- Suggested min/max for reordering rules (demand history, days of coverage, order frequency).
- Stock aging report (Moves Analysis); inventory at a past date with a precise timestamp.
- Allocate incoming stock from the forecast; vendor quality rate; default Incoterm per vendor; editable expected arrival while keeping the vendor's date; bill-to-PO matching warnings on price/qty.
- Barcode: bulk lot/serial generation, batch receipt suggestions, backorder choice.
- Traceability report upstream/downstream; ShipStation and Sendcloud pickup points.
Manufacturing / PLM / Quality
- Continuous production: record quantities per work order; the next operation starts as soon as some quantity is ready.
- Work-order Gantt & Kanban, split MOs, single Produce button, auto lot/serial on close.
- Flexible consumption forced on all MOs.
- PLM: compare BoMs, product version tracking, ECO cost comparison.
- Quality: admin bypass, failure location from the check.
Sales / CRM / Subscriptions / Rental
- Quote section templates, save any quote as a template, edit margin on a line to recompute the price, description-only lines.
- Payment-based commissions, manager roll-up; periodic pricing rules; price rules per packaging; single-use discount codes; loyalty point expiry.
- CRM: lead distribution "Always / Limited / Out of rotation", D&B lead generation, pipeline switcher, upsell leads to subscriptions.
- Rental: working schedules, unified Prices tab.
POS / eCommerce / Website
- POS: multiple currencies, service fees via presets, product snooze, simpler end-of-session accounting, POS stock without the full Inventory app.
- eCommerce: returns portal (customers print their own label), pay on invoice (B2B), choose a delivery date, AI product editing, auto cross-sell suggestions, automated review requests.
- Website: AI website assistant,
llms.txt, structured data, mega-menu blocks, age verification.
Operations / Services
- Phone system inside Odoo: buy numbers, call flows (menus, queues, hours), transcripts on the record.
- Offline mode across the backend (create/edit/archive/delete; sync later).
- Field Service app discontinued → folded into Planning (live technician map, routing, travel fees).
- Project: create from an opportunity, collaborators vs followers, profitability via new reports.
HR / Payroll
- Pay runs rebuilt; test runs with printed payslips; net-to-gross simulation; % salary raises; choose when payslips are sent.
- Work entries and the Planning-Payroll integration removed.
- Appraisals: 360 feedback to any contact, goal roll-up.
- Attendances: biometric integrations (eSSL, Mantra), check-in photos, overtime analysis.
AI
- Native MCP server (Enterprise): external AI tools act with the user's access rights. Treat tokens like passwords.
- Agents create/update records, read files, run from automated/scheduled actions, show live progress, accept voice.
- "Topics" renamed "Skills"; agent avatars; 30-day conversation storage.
- All AI features need IAP credits (per service, per database, optional auto-recharge).
Technical (tell your developer)
- Python 3.12 / PostgreSQL 16 minimum for self-hosting [Reported].
- XML-RPC/JSON-RPC deprecated in favour of the JSON-2 API [Reported, partners differ].
- Odoo 20 no longer listens on all interfaces by default (Docker gotcha) [Reported].
- IoT Box replaced by "Obox" [Reported].
- OWL 3 front-end; new PDF engine "Paper Muncher" [Reported]; Material Symbols icons.
3. Licensing and pricing (Odoo 20)
| Region | Custom plan change | Light User |
|---|---|---|
| United States | ~+30 % (Custom $37.40 → $49.00/user/month, yearly, first year) | $8.90 |
| Europe | +20 % (Standard stays €20) | €7.90 |
| India & Gulf | Varies by market | ~US$5.90 (₹195 in India) |
| Pakistan & Oman | ~+24 % | varies |
| Latin America | Custom ~$13.40 | ~$2.90 |
Light User = "any user account indicated as active and designated as a Light User, or any active employee record (HR app) not linked to an active non-portal user account."
- Light Users can: profile, time off, expenses, appraisals, attendance, view planning/worksheets, POS session sign-in, barcode scanning in the warehouse, read Knowledge.
- Light Users can't: Sales, Purchase, Projects/timesheets, Accounting, other core apps.
- Example: 10 users + 150 employees (US Standard): Odoo 19 = $249/month → Odoo 20 = $1,495/month (+≈$14,950/year).
What's in Custom but not Standard: Odoo.sh / on-premise, Studio, Agentic AI, multi-company, external API.
4. Should a customer upgrade?
| Situation | Advice |
|---|---|
| Standard plan, few employees without logins, little customisation | Upgrade soon: bank controls, reordering, COGS fix with little downside |
| Custom plan, Studio/custom modules, payroll work entries or Field Service, many HR-only employees | Wait a few months; run the licence numbers; let the first fixes land |
| Either way | Upgrade a copy first, test end to end, budget AI credits before building on agents |
5. Upgrade checklist (print it)
- [ ] Count active employee records without a user; estimate the Light User cost; archive leavers.
- [ ] Confirm plan (Standard/Custom) and regional price with the Odoo account manager.
- [ ] List every Studio change, custom module, custom report and integration.
- [ ] Create a duplicate database and run the upgrade there first (upgrade.odoo.com / Odoo.sh staging).
- [ ] Test a full sales cycle, purchase cycle, bank reconciliation and month-end close on the copy.
- [ ] Print and compare every custom report and invoice layout (new PDF engine).
- [ ] Review fiscal positions and default taxes on products (taxes outside the FP are stripped).
- [ ] Update saved filters/reports using the old payment statuses.
- [ ] Retrain the team to post bank entries only from bank transactions.
- [ ] Check integrations for XML-RPC/JSON-RPC; plan the move to the JSON-2 API.
- [ ] Decide the AI approach: Odoo credits, MCP with your own AI tool, or none for now; give AI a limited-access user.
- [ ] If you use Field Service or payroll work entries, redesign them on Planning / new pay runs.
- [ ] Train users on the new look, renamed statuses and removed features.
- [ ] Schedule production upgrade after the first round of fixes, unless savings are urgent.