OdooWiki OCA HUB

Stock Picking: group by partner and carrier

stock_picking_group_by_partner_by_carrier folder_open OCA/stock-logistics-workflow open_in_new
Warehouse License: AGPL-3

This module can be used if your customers expect that several different orders they passed will be shipped in a single delivery order.

With this module installed, when a sale order is confirmed, the stock moves for the lines of the sale order can be placed in an existing delivery order that shares the same delivery address and carrier (or lack thereof).

Sale orders with a Shipping Policy set to 'When all products are ready' always get their own shipping.

When the delivery slip is printed, the list of pending quantities to deliver is shown at the end, grouped by order.

The grouping can also be applied in case of external resupply. Moves at the destination of the same delivery address defined on the resupply stock rule will be grouped in a same delivery order.

Note: The grouping is currently not propagated to the pulled internal moves if you don't use the module stock_available_to_promise_release in the stock-logistics-workflow repository.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Groups the deliveries of several sales orders into a single transfer when they share the same customer and carrier, and lets you merge existing transfers manually. The delivery slip also shows what is still pending to deliver, order by order.

When a sale order is confirmed, its stock moves can be placed in an existing delivery transfer instead of creating a new one, as long as the customer and the carrier are the same. This is controlled per operation type with the 'Group pickings' option, and there is an extra option to also group orders whose shipping policy is 'When all products are ready'. On the customer form you can tick 'Do not group deliveries' to exclude a specific customer, and the same options are available on the warehouse.

A 'Merge transfers' action is available on selected transfers. It opens a wizard showing which transfers can be merged, grouped by customer and carrier, and which are discarded (cancelled, done, already printed or not groupable). Confirming merges the moves into grouped transfers; transfers left empty are cancelled.

The delivery slip is adapted: when a transfer covers several orders, the lines are separated by order, and a 'Remaining to deliver' table lists, per order, the quantities still pending. The customer reference is only shown in the header when there is a single one.

Rules on stock rules include an option to propagate the original procurement group, which helps avoid merging pulled moves and allows cancelling one sale order without affecting others.

Models and fields (11)
  • sale.order · extends an existing modelpicking_ids (Transfers)
  • stock.move · extends an existing modeloriginal_group_id (Original Procurement Group)
  • stock.rule · extends an existing modelpropagate_original_group
  • res.partner · extends an existing modeldisable_picking_grouping (Do not group deliveries)
  • stock.picking · extends an existing modelgroup_id, sale_ids, canceled_by_merge
  • sale.order.line · extends an existing model
  • stock.warehouse · extends an existing modelgroup_shippings, group_shippings_one
  • procurement.group · extends an existing modelsale_ids, is_merged, picking_ids
  • stock.picking.type · extends an existing modelgroup_pickings (Group pickings), group_pickings_one (Also group when policy is 'one'), show_group_pickings
  • stock.picking.merge · new modeldetails, nothing_todo, valid_picking_ids (Valid Pickings), selected_picking_ids (Selected Pickings), discarded_picking_ids (Discarded Pickings), show_discarded_detail
  • report.stock.report_deliveryslip · new model

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub

Availability by version

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

Confirmation status: 5 confirmed, 4 with no information of 9 versions.

Sources · Odoo 18.0

Confirmed on 2026-11-03 in branch 18.0 of OCA/stock-logistics-workflow.

terminal Installation and usage

OCA documentation · Odoo 18.0
  • To enable picking grouping in pull rule "mode" - default prior to 18.0. This will only group the delivery step.

> 1. Go to Inventory \> Configuration \> Warehouses > 2. Select 'Technical Information' tab > 3. Check the 'Group pickings' box

  • To enable picking grouping in push rule "mode" - 18.0:

> 1. Go to Inventory \> Configuration \> Operation Types > 2. For each Operation Type you wish to group, check the 'Group pickings' box > 3. If you wish to group pick, pack and ship steps, then ensure it is selected on each Operation Type

  • To disable picking grouping for some partners:

> 1. Go to the partner form you want > 2. Go to 'Sales & Purchase' tab > 3. Check the 'Do not group deliveries' box

To use this module you need to enable grouping on the picking types for which you want grouping.

If you want to enable this for the shippings of a warehouse:

  • be sure that in the settings of the Inventory app, you checked "Manage Push and Pull inventory flows"
  • enable "debug mode"
  • go to the warehouse for which you want grouping and check the setting "Group Shippings"

You can also enable this for individual picking types by checking the setting "Group Pickings" on the picking type view.

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.