OdooWiki OCA HUB

OCA/sale-workflow

OCA community repository with 338 Odoo modules confirmed in the OdooWiki catalogue (versions 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0). Reviewed on 2026-11-03.

Open on GitHub

Confirmed modules per version

12.0
98 modules
13.0
107 modules
14.0
152 modules
15.0
117 modules
16.0
154 modules
17.0
100 modules
18.0
178 modules
19.0
106 modules
20.0
1 module

Modules in the repository

  • sale_order_mass_action

    Lets salespeople confirm several quotations at once from the Sales list. Select the quotations, open the Mass Action window, tick the confirmation box and click Apply.

  • sale_order_minimum_amount

    Set a minimum sales order amount per company; sales users cannot confirm orders at or below that amount, while sales managers are exempt.

  • sale_order_note_template

    Lets you save reusable Terms and Conditions templates and drop them into a sale order with one click. The terms field on the sale order is now rich text instead of plain text.

  • sale_order_ordered_weight

    Adds an 'Ordered Weight' total to sale orders and their lines, calculated from product weights and quantities, and lets you show line and order weights on the printed quotation/sale order.

  • sale_order_partner_no_autofollow

    Adds a setting in Odoo Sales settings to stop the customer from being added automatically as a follower on sales orders. When enabled, customers no longer receive notifications about the order's messages.

  • sale_order_partner_restrict

    Lets you control which customers can be picked on a sales order: all partners, only parent companies, or parents plus their contacts. The setting is configured per company in Sales settings.

  • sale_order_payment_terms_from_invoice_address

    Adds a setting in Sales that makes the payment terms on a sale order come from the invoice address instead of the customer. When enabled, changing the invoice address updates the order's payment terms automatically.

  • Price recalculation in sales ordersOdoo 12, 13, 14, 15, 16, 17, 18, 19
    sale_order_price_recalculation

    Adds two buttons on draft or sent sales orders: one to recalculate line prices from the current pricelist, and one to reset line descriptions from the product information.

  • sale_order_pricelist_tracking

    This module makes Odoo record every manual change of the pricelist on a sales order in the order's chatter, so you can see who changed it and when.

  • Sale Order PriorityOdoo 12, 13, 14, 15, 16, 17, 18, 19
    sale_order_priority

    Adds a priority level to sale orders and their lines. The order priority is the highest priority among its lines, and setting the order priority updates all its lines; confirmed orders pass this priority to the delivery picking.

  • Sale Order Product AssortmentOdoo 12, 13, 14, 15, 16, 17, 18
    sale_order_product_assortment

    Restricts the products that can be added to a sale order based on the customer's product assortment. When a customer has an allowed product list, only those products can be selected on the order lines.

  • sale_order_product_assortment_availability_inline

    Shows the available stock directly on the product field of sale order lines when a product assortment is set for the customer, so salespeople see availability while picking allowed products.

  • sale_order_product_assortment_quick

    This bridge module makes the quick product search in a sale order respect the allowed product list set for that customer or order. It installs automatically when both related modules are present.

  • sale_order_product_availability_inline

    Shows each product's available quantity directly in its name inside the product drop-down on sales order lines, so salespeople see stock before choosing an item.

  • sale_order_product_picker

    Adds a visual product picker tab to sale orders so salespeople can quickly add, update or remove order lines by clicking product cards, with filters for availability, attributes, categories and last sales.

  • Sale Order Product RecommendationOdoo 12, 13, 15, 16, 17, 18, 19
    sale_order_product_recommendation

    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.

  • sale_order_product_recommendation_elaboration

    When you use the product recommendation wizard on a sale order, this module also carries over the elaborations and elaboration notes from the customer's previous orders, so you can accept or adjust them before adding the products.

  • sale_order_product_recommendation_packaging_default

    When using the recommended products wizard on a sale order, you can now choose a sales packaging and the number of packages for each recommended line, and that packaging information is carried over to the sale order line.

  • sale_order_product_recommendation_quick_add

    Adds a "Quick Add Recommended Products" button on the sale order form that instantly inserts the recommended products, without opening the recommendation wizard.

  • sale_order_product_recommendation_secondary_unit

    Adds a secondary unit of measure column to the product recommendation wizard in sales orders, so users can order recommended products in a second unit (e.g. boxes) alongside the main unit.

  • Sale Order Qty change no recomputeOdoo 12, 13, 14, 15, 16, 17, 18
    sale_order_qty_change_no_recompute

    Stops Odoo from recalculating the discount and pricelist item on a sales order line when only the quantity or unit of measure is changed, so negotiated prices stay as agreed.

  • sale_order_recurrence

    Lets salespeople duplicate a sale order into a series of future quotations at regular weekly or monthly intervals, useful for repeat customers who order the same products on a schedule.

  • sale_order_rename

    Lets users edit the Quotation / Sale Order reference number directly on the sales order form while the document is still in Draft state, and enforces that this reference stays unique per company.

  • Sale Order Report Without PriceOdoo 14, 15, 16, 17, 18, 19
    sale_order_report_without_price

    Adds a new print option on quotations and sales orders that produces the same document but with all prices, discounts, taxes and totals hidden.

  • sale_order_requested_delivery

    Adds requested delivery start and end dates to sales orders and their lines, so you can record when the customer wants the goods delivered and Odoo warns you if the period is impossible.

  • sale_order_restrict_cancel_existing_invoice

    Prevents users from cancelling a sale order when a confirmed (posted) customer invoice is linked to it, showing a clear error message instead.

  • sale_order_restrict_copy_archived_product

    Prevents users from duplicating a sales order when any of its lines use an archived product, showing an error message listing the archived products.

  • Sale order revisionsOdoo 12, 13, 14, 15, 16, 17, 18, 19
    sale_order_revision

    Keep track of revised quotations: create a new revision of a cancelled or sent quotation, browse previous revisions from the order form, and jump back to the current one.

  • sale_order_safe_commitment_date

    This module prevents salespeople from promising a delivery date earlier than the date Odoo expects the products to be ready. It adds a warning on the sales order and automatically adjusts the promised date when the order is confirmed.

  • sale_order_search_line

    Adds a 'Sales Line' search field to the Sales Orders search view, so users can find sale orders by the description of their order lines.

  • Sale Order Secondary UnitOdoo 12, 13, 14, 15, 16, 17, 18, 19
    sale_order_secondary_unit

    Sell products in a second unit of measure on sale orders. Set a default secondary unit per product, enter quantities in that unit, and see it on quotations and sales orders.

  • sale_order_show_currency_rate

    Adds an informative exchange rate box to the sale order PDF report and a new setting to choose a reference currency for that box.

  • sale_order_show_full_address

    On sales orders, the Invoice Address and Delivery Address fields now display the full address instead of just the contact name, matching how the customer address is already shown.

  • sale_order_split_strategy

    Define split strategies that let you move selected lines of a draft sales order into a new sales order, based on a saved line filter. Choose how split errors are reported at company level.

  • Sale Order TagsOdoo 12, 13, 14, 16, 18, 19
    sale_order_tag

    Adds a new tagging system to Sales Orders, separate from CRM opportunity tags. Users can create tags, assign them to sales orders, and filter orders by tag.

  • sale_order_team_from_product

    Automatically sets the Sales Team on quotations based on the Sales Team assigned to the products in the order. Two new options in Sales settings let you turn this on and decide whether to keep a team already set on the quotation.

  • sale_order_transmit_method

    Shows the customer's preferred transmission method (email, post, portal, etc.) on the sale order and automatically copies it to the invoice created from that order.

  • Sale Order TypeOdoo 12, 13, 14, 15, 16, 17, 18, 19, 20
    sale_order_type

    Create sale order types (lines of business) that automatically fill in the warehouse, journal, payment terms, pricelist, shipping policy, salesperson and more on quotations, invoices and deliveries. Assign a default type per customer and see the type on…

  • sale_order_type_confirm_message

    Adds an optional confirmation message to sale order types. When a sale order of such a type is confirmed, a popup shows the message and the user must click Confirm before the order is validated.

  • sale_order_type_quotation_number

    Lets you assign a specific quotation numbering sequence to each sale order type, so quotations are numbered according to the type of sale. It also adds a button on quotations to update the number when the type changes.

  • sale_order_warehouse_header

    Shows the warehouse field directly in the header of the sales order form, making it easier to see and change, and adds warehouse filtering and grouping to the sales order search view.

  • sale_order_warehouse_location

    Lets you tag each warehouse with the countries and states it serves, so Odoo automatically picks the right warehouse on a sales order when the delivery address matches.

  • Sale Order Warn MessageOdoo 13, 14, 15, 16, 17, 18
    sale_order_warn_message

    Shows a warning banner on sale orders when the customer has a sales warning configured, so the warning is always visible and not only when the customer is changed.

  • sale_order_weight

    Adds a Weight column to the sale order PDF report and shows the total weight of the order, calculated from each product's weight and ordered quantity.

  • sale_packaging_default

    Makes selling by packaging easier: the packaging fields are shown before the quantity, a default sales packaging is filled in automatically, and you can make packaging mandatory before confirming an order.

  • sale_partner_address_restrict

    Adds a company setting that limits the invoice and delivery addresses selectable on a sales order to contacts belonging to the chosen customer, and adds a 'Dropship Address' flag on delivery contacts.

  • sale_partner_approval

    Adds a 'Can Sell To' flag on contacts and a 'Approved for Sales' flag on partner stages, so only approved customers can be selected on sales orders. Two optional blocking rules can stop sales orders that use non-approved customers or invoice addresses.

  • sale_partner_delay

    Adds a customer-specific delivery lead time on contacts, which is automatically added to the product's delivery lead time on sale order lines.

  • sale_partner_delivery_window

    This module lets you set preferred delivery time windows for customers and automatically schedules their delivery orders within those windows. It also warns you when a manually entered delivery date falls outside the customer's preferred windows.

  • Default sales incoterm per partnerOdoo 12, 13, 14, 15, 16, 17, 18, 19
    sale_partner_incoterm

    Lets you save a preferred incoterm (and incoterm address) on each customer, so new quotations automatically pick it up instead of being filled in by hand.

  • sale_partner_order_template

    Lets you set a default quotation template on a customer, so new quotations for that customer automatically start from that template.

  • sale_partner_pricelist

    Lets you define which pricelists a customer is allowed to use, and restricts the pricelist choice on their sales orders to that list. The feature is switched on per company in Sales settings.

  • sale_partner_primeship

    Sell time-limited "primeship" memberships to customers: confirming a sale order with a primeship product automatically creates a membership period for the customer, and Odoo tracks when it is active or expired.

  • sale_partner_sale_contact

    Adds a 'Sale Contact' field to quotations, sale orders and invoices so you can name the person who handles the deal while the company stays the customer. The contact can also be shown on the PDF reports and gives that person portal access to the documents.

  • sale_partner_sale_contact_on_project

    When a sale order creates a project through a service product, the sale contact person recorded on the order is automatically copied onto the new project, and that contact is shown on the project form.

  • sale_partner_sale_contact_website_sale

    When a contact person of a company confirms a website order, the order is automatically reassigned to the company, while the person who ordered is kept as the sale contact and the chosen addresses, fiscal position and payment terms are preserved.

  • Sale Partner Selectable OptionOdoo 13, 15, 16, 17, 18, 19
    sale_partner_selectable_option

    Adds a "Selectable in sale orders" checkbox on contacts so you can control which customers appear when choosing a partner on a sales order.

  • sale_partner_shipping_default_partner_invoice

    Lets you set a default invoice address on a contact, so that when that contact is used as the shipping address on a sales order, Odoo automatically fills in the matching invoice address.

  • sale_partner_shipping_invoice_domain

    On a sales order, the shipping and invoicing address fields now only offer contacts that belong to the customer's company, instead of every contact in the database.

  • sale_partner_utm_source

    Automatically fills the UTM Source on new quotations from the customer's source, and lets you see and group sales orders and invoices by UTM Source.

Data imported from GitHub: every listed version is confirmed (branch, module directory and installable manifest checked on the review date). Active support and OCA certification are not assessed.