OdooWiki OCA HUB

Sale delivery State

sale_delivery_state folder_open OCA/sale-workflow open_in_new
Product License: AGPL-3

This odoo module add delivery state on the sale order.

Delivery state is computed based on qty_delivered field on sale order lines.

This is usefull for other modules to provide the state of delivery. The state of the sale order can be forced to fully delivered in case some quantities were cancelled by the customer and you consider you have nothing more to deliver.

Sale order lines can have products or services, as long as the field qty_delivered is set, it will trigger the computation of delivery state.

Sale order lines with the Skip Delivery State field set to True will be ignored when computing the delivery state. This field is automatically set depending on the field Sales > Configuration > Quotations & Orders > Skip Service products for Sale Delivery State. If set to True, the field Skip Delivery State in sale order lines containing service products will be automatically set to True, but it can manually changed.

This module also works with delivery.carrier fees that are added as a sale order line. Thoses line are special as they will never be considered delivered. Delivery fees lines are ignored in the computation of the delivery state.

When the 'sale_stock' module is installed, the glue module 'sale_stock_delivery_state' should also be installed; this module is designed to override the compute method of the delivery status field from 'sale_stock'.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Adds a delivery status to sale orders (Not Delivered, Started, Partially Delivered, Fully Delivered) based on delivered quantities, with a button to force an order as fully delivered.

This module gives each sale order a delivery status that is calculated automatically from the delivered quantities on its lines. The status appears in the shipping section of the sale order form (only once the order is confirmed) and can be added as an optional column in the sale order list, shown as a coloured badge.

The four possible values are: - Not Delivered: nothing has been delivered yet - Started: a delivery has been validated but no quantity is recorded yet - Partially Delivered: at least one line has some delivered quantity - Fully Delivered: every line has reached its ordered quantity

Draft and cancelled orders show no status. Delivery cost lines are ignored in the calculation.

On a confirmed and locked order, a "Force delivery done" button lets you mark the order as fully delivered, for example when the customer cancelled part of the quantities. An "Unforce delivery done" button reverses this.

In Settings, under Sales, a new option lets you skip service products: when enabled, new order lines with a service product are automatically flagged with "Skip Delivery State" and are left out of the calculation. This flag is also available as an optional column in the order lines.

In the sale order search view you get a "Pending Deliveries" filter and a "Delivery Status" grouping. When the module is installed, existing orders are recalculated in batches.

Depends on

sale
Models and fields (4)
  • sale.order · extends an existing modeldelivery_status, force_delivery_state
  • res.company · extends an existing modelskip_service_sale_delivery_state (Skip Service products for Sale Delivery State)
  • sale.order.line · extends an existing modelskip_sale_delivery_state (Skip Delivery State)
  • res.config.settings · extends an existing modelskip_service_sale_delivery_state (Skip Service products for Sale Delivery State)

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: 8 confirmed, 1 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
  • Go to Sales > Configuration > Quotations & Orders.
  • Check the Skip Service products for Sale Delivery State checkbox to automatically set the field Skip Delivery State in sale order lines to True when the line contains a service product.

No verified information in OCA: Installation, Usage.

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.