OdooWiki OCA HUB

Sale Order Product Recommendation

sale_order_product_recommendation folder_open OCA/sale-workflow open_in_new
Sales License: AGPL-3

This module adds a recommended products wizard to current sale order.

It is based on recent delivered products, and allows the salesman to quickly know the most sold products for current customer, which results in an easy to use hint to improve sale.

If you want a better mobile usability, the module is ready to use with the 'web_widget_numeric_step' module. Just install it and you will get a better numeric input experience.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Adds a "Recommended Products" button on sale orders that opens a wizard suggesting products to sell to the customer based on their recent purchase history, which the salesperson can accept into the order.

When working on a sale order, a "Recommended Products" button appears in the form header (hidden when the order is locked or cancelled). Clicking it opens the "Recommended Products for this Customer" wizard.

The wizard looks at the customer's past sales orders within a configurable number of months (default 6) and proposes up to a set number of products (default 15), ranked by how many times they were delivered or by units delivered, product category, product code or product name. You can choose whether to base the history on the customer or on the delivery address, and whether prices come from the pricelist or from the last sale price.

For each suggested product the wizard shows category, code, name, price, times delivered and units delivered. You enter the quantity to include and press "Accept" to add or update the corresponding lines on the sale order; quantities left at zero are skipped (unless the company setting forces zero-quantity lines to be added), and existing lines set back to zero are removed. "Change criteria" clears the list so you can regenerate it.

In Settings, under Sales, a "Sale order recommendations" block lets you set the default price origin, delivery-address usage, months, number of recommendations, whether to include zero-unit products, and an advanced filter (domain) applied to the past order lines used for the suggestions.

Depends on

sale_management
Models and fields (4)
  • res.company · extends an existing modelforce_zero_units_included, sale_line_recommendation_domain
  • res.config.settings · extends an existing modeldefault_months (Default sale recommendation months), default_line_amount (Default sale number of recommendations), force_zero_units_included, default_use_delivery_address (Use delivery address), sale_line_recommendation_domain, default_sale_recommendation_price_origin (Price origin)
  • sale.order.recommendation · new modelmonths, line_ids, order_id, line_amount (Number of recommendations), use_delivery_address (Use delivery address), recommendations_order, sale_recommendation_price_origin (Product price origin)
  • sale.order.recommendation.line · new modelimage_128, wizard_id, partner_id, price_unit, product_id, currency_id, sale_uom_id (Unit of Measure), pricelist_id, product_name, sale_line_id, units_included, times_delivered, units_delivered, product_is_favorite, product_default_code, product_uom_readonly, product_categ_complete_name (Product category)

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 7 confirmed, 2 with no information of 9 versions.

Sources · Odoo 13.0

Confirmed on 2026-11-03 in branch 13.0 of OCA/sale-workflow.

terminal Installation and usage

OCA documentation · Odoo 19.0

To configure this module you need to:

In sale order product recommendation you can display the product price unit from list price or from last sale order price. To set the default value follow the next steps

  • Go to Sales \> Configuration \> Settings \> Sale order recommendations.
  • Assign the desired value to Product recommendation price origin field.
  • Press Save button to store the change.

In sale order product recommendation you can compute the recommendations using the Delivery Address instead of the Customer. To set this option by default follow the next steps

  • Go to Sales \> Configuration \> Settings \> Sale order recommendations.
  • Assign the desired value to Use delivery address field.
  • Press Save button to store the change.

You can define other default values like as:

  • Months backwards to generate recommendations.
  • Number of recommendations to display.

You can force the addition of all the products recommended in the sale order. You can then edit the desired quantities directly in the sale order.

  • Go to Sales \> Configuration \> Settings \> Sale order recommendations.
  • Select Force zero units included

You can add a filter domain to exclude or include additional recommended products.

  • Go to Sales \> Configuration \> Settings \> Sale order recommendations.
  • Add a filter in section Sale order product recommendation domain Example: [("product_type", "!=" "service")]

To use this module, you need to:

  • Create a new sale order.
  • Assign its customer.
  • Press Recommended Products button.
  • Configure the recommendations parameters.
  • Press Get recommendations button.
  • Add products into the opened wizard.
  • If you don't change quantities, the line will not be updated.
  • Press Accept.

No verified information in OCA: Installation.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.