Odoo 20 Sales: New Features, Improvements & Complete Guide

The Sales module is where most Odoo databases start earning: quotations, orders, deliveries and invoices all begin here. Odoo 20.0 gives it its biggest update in years. It is not one new button. It is a new dashboard, a cleaner quotation form, smarter pricing and sections, better invoicing control, commissions that follow cash, and a new area for services and materials.

Odoo 20 makes sales management simpler with new features and improvements designed around everyday user needs. Sales teams can manage orders, customers, and sales activities more smoothly, while managers get a clearer and more efficient way to oversee their operations. Explore the key sales features in Odoo 20 and see how they can improve your daily workflow.

The overall journey through the new module is simple:

Commission workflow
Dashboard → Quotation → Price and Tax → Confirm → Deliver → Close for Invoicing → Invoice → Commission

Sales Workflow in Odoo 20

Step 1
Open the Sales Dashboard
Step 2
Build the Quotation with the New Line Layout, Sections and Margin
Step 3
Choose Tax Mode and Prepayment
Step 4
Confirm the Order
Step 5
Log Services and Materials, Ship if Needed
Step 6
Close for Invoicing and Invoice
Step 7
Pay Commission When Money Is Received

Business Process at a Glance

Stage Odoo Area What is new in Odoo 20
Overview Sales > Quotations Dashboard with four cards and date filters
Quote Quotation form Line numbers, grouped columns, label, margin on the line, section quantity and templates
Price Quotation form Tax included or excluded per document, prepayment as an amount
Deliver Sales order Ship and send the delivery email without the Inventory app
Service Services & Material Log services, materials and expenses against orders
Invoice Order form Close and reopen an order for invoicing
Account Accrued orders wizard Invoices to be issued and invoiced not delivered
Reward Commissions Commission on money received and team targets for managers

Odoo 19 vs Odoo 20: Everything at a Glance

Area Odoo 19 Odoo 20
Sales overview Reports, plus a separate To Invoice menu Dashboard with To Confirm, To Deliver, To Invoice and To Upsell cards and date filters
To Invoice menu Separate top-level menu Removed. Covered by the dashboard
Order line layout Product, description and quantity in separate columns Grouped columns: Product and description, Quantity, Unit of measure
Line numbers None Numbers on the order, the PDF and the portal (company setting)
Product text on the line Translated product name Editable Label field
Money, number and percentage fields Plain fields Fields with inline labels
Margin A result of the price you typed Type the margin (amount or %) and the sales price updates
Sections Headings only Section quantity and unit. Change it and the lines follow
Reusing a block of lines Copy lines or use a full quotation template Save a section as a template
Stock availability Quantity widget Simple availability indicator at the scheduled date
Tax display Decided at company level Tax included or excluded per document
Prepayment Percentage Amount (the label is now "Prepayment")
Shipping without Inventory Delivery steps and email came with Inventory Ship and send the delivery email without the Inventory app
Closing for invoicing Not available Close the order manually and reopen it
Services and materials Not available New Services & Material menu (needs the setting enabled)
Accruals Basic Accrued orders wizard for invoices to be issued and invoiced not delivered
Commission Tied to the order Can follow the money received
Manager commission Team targets handled outside the plan Manager rolls the team's targets into their own commission
Product on order lines Optional Setting to make the product mandatory
Portal entries Part of the page templates Structured entries: Quotations to review, Your Orders
Access settings ir.model.access.csv ir.access.csv (Access Rights merged with record rules)
Dark mode Not in these areas Dashboard and Services & Material support dark mode
Key takeaway
Odoo 20 keeps the same sales flow (quote, confirm, deliver, invoice) but adds visibility (dashboard, line numbers), control (tax mode, closing for invoicing) and structure (sections, labels, line numbers).

What Is Odoo 20 Sales?

Each stage below is one change, in the order you meet it in daily work, with the Odoo 19 comparison.

Stage 1

New Sales Dashboard

In Odoo 19, a manager had to open reports or the To Invoice menu to see where the business stood. In Odoo 20 the quotation list opens with a dashboard above it, with four cards:

  • To Confirm: quotations waiting for a decision.
  • To Deliver: confirmed orders waiting to be delivered.
  • To Invoice: orders ready to be invoiced.
  • To Upsell: orders where more could be sold.

At the right of the cards, a date filter (for example Last 7 days) sets the period. The Sales Orders and Sales Revenue totals next to it show the change against the previous period. The old To Invoice menu is gone, because the dashboard now does its job. The dashboard also supports dark mode.

(The dashboard replaces the To Invoice menu and shows what needs action)
Stage 2

Payment-Based Sales Commissions

The order lines were redesigned so related information sits together. In Odoo 20 you will see:

  • Line numbers at the start of each line. This is a company setting, and the numbers also appear on the PDF quotation and in the customer portal, so "change line 7" means the same thing to everyone.
  • A Product and description column that groups the product, its description and an editable Label. The label replaces the translated product name of Odoo 19, so you can type exactly the wording the customer should see.
  • A Quantity column and a Unit of measure column, each with the section value underneath for sections.
  • A simple stock availability indicator next to the quantity.

Money, number and percentage fields now show inline labels, so you can tell what a figure is without checking the column header.

(Order lines in Odoo 20: numbered, grouped and labelled)
(The same line numbers on the PDF and in the portal)
Stage 3

Set the Margin on the Line

Salespeople think in margin, not unit prices. In Odoo 19 margin was only a result: you typed a price, looked at the margin and adjusted again. In Odoo 20 you type the margin and the sales price updates.

  • Under the Unit Price you will see M (margin amount) and M% (margin percentage), next to the Unit Cost column. The total margin is shown at the bottom of the order.
  • Type a value in M or in M%. Odoo recalculates the unit price using the cost, quantity and discount.
  • M% is read-only when the product has no cost, and 100% cannot be set when there is a cost. Invoiced lines are locked.
Worked example
A product costs 70 and you sell 10 units, no discount. You want 30%.
Odoo 19: try 90 (22%), then 100 (30%).
Odoo 20: type 30 in M%. The unit price becomes 100, the subtotal 1,000 and the margin 300.
(Type the margin and the unit price follows)
Stage 4

Sections that Carry Quantity, and Section Templates

In Odoo 19 a section was only a heading. In Odoo 20 a section, and a subsection, has its own quantity and unit of measure. Change the section quantity and the lines under it follow. You can also save a section as a template and add it to other quotations.

  • Build a section with its lines. Open the section's action menu (⋮) and choose Save as Template, then give it a clear name.
  • On a new quotation, click Add Section. The list offers New Section and your saved section templates. Pick a template and the section arrives with all its lines.
  • Change the section quantity to scale the whole block, for example five identical workstation packages.
Not new in Odoo 20
Hiding prices inside a quote section was already possible in Odoo 19. Do not present it as an Odoo 20 feature.
(Change the section quantity once and the lines follow)
Stage 5

Tax Mode per Document

In Odoo 19, showing prices with or without tax was a company-level choice. Odoo 20 lets you choose tax included or tax excluded on each document. This suits companies that sell to businesses (without tax) and consumers (with tax) from one database. The order lines follow the mode of the document, so check your quotation PDF to confirm the totals read as you expect. Above the order lines, a Tax Excl. / Tax Incl. switch shows the mode, and each line shows its amount both ways (TE and TI).

Stage 6

Prepayment as an Amount

Prepayment used to be a percentage of the order. In Odoo 20 the field is simply called Prepayment, and you can work with a monetary amount. Type 2,000 instead of working out which percentage that is.

Stage 7

Ship and Send the Delivery Email Without Inventory

A business that uses only Sales and Invoicing can now ship an order straight from the sales order and send the delivery email to the customer, even though the Inventory app is not installed. No warehouses, locations or stock moves are needed. In Odoo 19 these delivery steps came with Inventory.

  • Confirm the sales order as usual.
  • Use the shipping action on the order when the goods leave.
  • The customer receives the delivery email.

When you later need stock levels, warehouses or multi-step delivery, install Inventory. Nothing changes in how your team sells.

Stage 8

Close an Order for Invoicing

Sometimes an order is finished even though some lines were never delivered or invoiced, for example when the customer cancelled part of the work. In Odoo 19 such orders kept showing as "to invoice". Odoo 20 lets you close the order for invoicing manually, whatever the line status says. It is then shown as closed in the list and stops appearing as waiting for an invoice. If you closed it by mistake, you can reopen it. To do it, open the action menu (⋮) next to the order number and choose Close Invoicing.

(Close an order for invoicing, and reopen it if needed)
Stage 9

Services & Material

A new menu, Services & Material, lets teams log service hours, materials and expenses against sales orders. Behind the scenes these are analytic lines linked to the order.

  • Entries can create the matching order lines for you.
  • They can be re-invoiced at cost or at sales price.
  • Services that were already invoiced are protected from changes.
  • The menu (Sales > Orders > Services & Material) appears only after the setting Services & Materials is switched on in the Sales settings under Invoicing, and it supports dark mode.
(Log work and materials against sales orders)
Stage 10

Accruals for Finance

Finance teams need to book what was delivered but not yet invoiced, and what was invoiced but not yet delivered. Odoo 20 includes an accrued orders wizard that calculates quantities as of a chosen date. Product categories get two new accounts for it: invoices to issue and invoiced not delivered.

Stage 11

Commission on Money Received

A big order is not the same as money in the bank. Many companies want to pay commission only when the customer has paid. Odoo 20 can pay commission on the money received, not only on the order. Unpaid invoices earn no commission until money arrives.

  • Open Sales > Commissions > Commission Plans and open or create a plan. In the Achievements Rules tab, pick the rule Type that follows payments (Amount Paid in Full) and set the rate.
  • Sell, confirm and invoice as usual. Register the customer payment on the invoice.
  • Approve the plan (it moves from Draft to Approved). Commission is calculated once the customer's payment is registered, and finance reviews and pays it as usual.
Illustrative example (amounts and rate are examples only)
Order total 10,000, commission rate 5%. The invoice is paid in full.
Commission earned: 5% of 10,000 = 500. Before the payment arrives, no commission is earned.
(Commission follows the payments received)
Stage 12

Manager Commission from Team Targets

Sales managers earn when their team wins. In Odoo 20 a manager can roll the team's targets into their own commission. The manager's plan includes the combined targets of the reps they lead, so the spreadsheet that used to combine them is no longer needed.

  • Open the manager's plan under Sales > Commissions > Commission Plans, choose the Sales team and the Target Frequency (for example Quarterly), and list the reps in the Salespeople tab.
  • In the manager's plan, include the team's targets.
  • Follow team and personal progress together, and review the manager's commission at period end.

For example, three reps each with a target of 100,000 give a combined team target of 300,000. If the manager's plan pays 2% when the team reaches target, a team that hits 300,000 earns the manager 6,000 (all numbers are examples).

Stage 13

Mandatory Product and Settings

A new Sales setting makes the product mandatory on order lines. Use it when free-text lines would cause problems in delivery or reporting.

Two settings from Odoo 19 are no longer in the Sales settings: Default Invoicing Policy and Automatic Invoice. Invoicing behaviour is now handled on the products and lines, so review your products after upgrading.

Stage 14

Redesigned Sales Order Portal

The portal home page now has structured entries for Quotations to review and Your Orders. Line numbers, when enabled for the company, appear for customers too.

Menu and Navigation Changes

Change Odoo 19 Odoo 20
To Invoice Separate top-level menu with sub-items Removed. Use the dashboard
Sales Teams under Orders Present Removed from this place
Services & Material Not present New menu under Orders (needs the setting enabled)
Marketplaces Not present New, currently an empty placeholder menu
Commissions Not present New top-level menu with Commission Plans
Products submenu Nested under Configuration > Products Flatter: Attributes and Pricelists directly under Product
Online Payments Nested menu with providers, methods, tokens and transactions Simplified to a single Payments menu
Activity types and plans In Configuration Removed from the Sales configuration
Configuration and Reporting order Positions 50 and 40 Positions 70 and 60

Fields and Wording that Changed

Item Odoo 19 Odoo 20
Prepayment wording Prepayment percentage Prepayment
Pro forma wording Pro-Forma Invoice Pro Forma Invoice
Product text on the line Translated product name Label
Lead time (customer lead) Decimal number of days Whole number of days

Items that no longer exist on the order, and may affect custom reports or views: the expected date, the duplicate-order indicator, the undiscounted amount, the payment-required flag and the separate tax-total field. If you rely on any of them, ask your developer to check.

Access Rights in the Sales Module

The Sales module now ships its access settings in ir.access.csv instead of ir.model.access.csv, because access rights and record rules are merged into one Access Rights screen. A permission has a group and a restriction has none. Read our https://www.odoo.com/documentation/19.0/applications/general/users/access_rights.html for the full explanation. A new group, Enable Services and Materials in Sales, controls the Services & Material menu.

Use Cases

Morning Check by the Sales Manager

Situation: The manager wants to know what needs action today.

In Odoo 20: Open Quotations and read the four dashboard cards.

Benefit: No report hunting, and no To Invoice menu to open.

Quoting to a Target Margin

Situation: Every quote on a product line needs 25%.

In Odoo 20: Type 25 in M% and the price is calculated.

Benefit: Faster quotes with protected profit.

Selling Bundles

Situation: A customer orders five identical equipment packages.

In Odoo 20: Save the package as a section template and change the section quantity.

Benefit: One edit updates every line.

Business and Consumer Customers

Situation: One database serves companies and private buyers.

In Odoo 20: Set tax excluded for companies and tax included for consumers on each quotation.

Benefit: Prices read the way each customer expects.

Field Services with Materials

Situation: Technicians log hours and materials on site.

In Odoo 20: Use Services & Material and re-invoice at cost or sales price.

Benefit: Everything billable is linked to the order.

Paying Commission on Cash

Situation: Finance wants commission paid only when customers pay.

In Odoo 20: Use commission on money received, and roll team targets into the manager's plan.

Benefit: Commission cost follows cash in, and managers and reps share one number.

Business Benefits

  • Better visibility: the dashboard shows what needs attention.
  • More control: tax mode per document, manual closing for invoicing and a mandatory product setting.
  • Cleaner quotes: line numbers, labels and sections make quotations easier to read and discuss.
  • Faster quoting: margin on the line, section quantity and prepayment as an amount save calculation time.
  • Better finance support: accrual wizards, Services & Material and payment-based commission link work to money.

Checklist: Moving from Odoo 19 to Odoo 20

  • Train the team on the dashboard. Show where the To Invoice menu went.
  • Review your invoicing policy. Default Invoicing Policy and Automatic Invoice are no longer Sales settings. Check each product.
  • Choose a tax mode for your quotation templates and test the PDF.
  • Check prepayment rules. Percentage and amount behave differently from before.
  • Test the online payment flow from quotation to payment. Payment handling was restructured.
  • Test the portal as a customer: Quotations to review, Your Orders and line numbers.
  • Decide whether you need Services & Material, line numbers, mandatory product and payment-based commission, and enable only those.
  • Ask developers about custom reports or views that used fields that no longer exist.
  • Review access rights. See the Access Rights guide.
Note for developers
Several technical changes are not covered here, for example the changed signature of the invoice creation method, renamed onchange and tracking methods, and the split of the analytic code. These belong in a separate technical migration post.

Best Practices

  • Make the dashboard the first screen the team opens.
  • Use sections and section templates for bundles, and keep each section self-contained.
  • Set margin targets as a team rule and keep cost prices up to date.
  • Decide one tax mode policy per customer type and document it.
  • Use the Label field for customer-facing wording instead of editing the product name.
  • Close orders for invoicing deliberately, and note the reason in the chatter.
  • Write the commission policy down before configuring it, and explain it to reps and managers.
  • Test on a copy of your database before upgrading production.

Odoo 20.0 keeps the familiar sales flow and improves every step of it. The dashboard shows what needs action, the quotation form reads better, margin and sections save calculation time, tax mode is set per document, invoicing has more control, and commissions follow the money.

For most teams the change is an improvement they notice on the first day: a dashboard instead of hunting through menus, and a quotation that reads better. Plan a short review of invoicing policy, payment flow and custom reports, and the upgrade will be smooth.

The overall journey is simple:

Dashboard → Quotation → Price and Tax → Confirm → Deliver → Close for Invoicing → Invoice → Commission

FAQ

Odoo 20 introduces several Sales improvements, including a new Sales dashboard, payment-based commissions, sales order line numbering, portal improvements, single-use discount codes, and enhanced sales workflows.

Yes. Odoo 20 adds a Sales dashboard to quotation and sales-order list views, providing sales-performance information and quick-filter options.

Yes. Odoo 20 introduces payment-based sales commissions, allowing commissions to be calculated based on the amount paid.

In the Sales settings, for the company. The numbers then appear on the order, the PDF and the portal.

Yes. Odoo 20 allows users to save quotations or sales orders as quotation templates using the Save as template action.

Yes. Customers can confirm sales orders through online signatures from the customer portal.

Yes. Odoo 20 supports discounts on quotation and sales-order lines, global discounts, and fixed-amount discounts.

Explore Odoo 20 Sales

Discover how Odoo 20 Sales can help streamline quotations, sales orders, pricing, commissions, customer management, and sales workflows.

Get an Odoo Consultation

Get GritXi's Expertise

Sign in to leave a comment
Oct 8, 2026

Odoo 20 Manufacturing: New Features & Improvements

Part 1: Overview Workflow Business Overview Manufacturing businesses need efficient planning, scheduling, and production control to respond quickly to changing shop-floor requirements. Odoo 20.0 Manuf...
Oct 8, 2026

Odoo 20 Knowledge: New Features and Article Management Update

Odoo 20 Knowledge provides a centralized workspace for creating, organizing, managing, and sharing business information. Teams can use Knowledge articles to maintain internal documentation, procedures...
Oct 8, 2026

Odoo 20 Subscriptions: New Features and Updates

Subscription businesses need more than a good offer to keep customers for the long term. Customers are more likely to stay when they continue to receive useful rewards or benefits as part of their sub...