OdooWiki OCA HUB

Multiple destinations for the same delivery method

delivery_multi_destination folder_open OCA/delivery-carrier open_in_new
Delivery License: AGPL-3

This module allows to set different price rules depending on the destination.

This module restores the concept of delivery grid, reusing the same model for nesting several "children" delivery methods, one per possible destination. It has been designed to reuse all possible extensions to the base delivery, without the need to create a glue module for having multiple destinations.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Lets you configure one delivery method that contains several sub-methods, each with its own price rules per destination country or region, so the right shipping price is applied automatically on sales orders and deliveries.

This module extends the delivery methods (carriers) in Odoo so a single carrier can hold a grid of sub-carriers, one per destination.

On the delivery method form you get a new "Destination type" field with two choices: "One destination" (normal behaviour) or "Multiple destinations". When you pick "Multiple destinations", the standard pricing, destination and provider sections are hidden and a new "Destinations" tab appears where you list the child carriers. Each child is a full delivery method with its own country, state and zip rules and its own price rules.

Business behaviour added: - Child carriers are hidden from the normal delivery method list and from selection on orders; only the parent is shown. - When a sales order needs a shipping price, Odoo looks through the children and uses the first one whose address rules match the delivery address. - When a delivery is validated, the matching child carrier is used to compute the price and tracking number; if no child matches, an error "There is no matching delivery rule." is raised. - Availability checks on the parent are based on its children.

The module touches delivery.carrier and the delivery method form and list views, and adjusts the delivery methods action so only parent carriers are listed by default.

Depends on

delivery

Required by other modules

Models and fields (1)
  • delivery.carrier · extends an existing modelchild_ids (Destination grid), parent_id (Parent carrier), destination_type

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 19.0

Confirmed on 2026-11-03 in branch 19.0 of OCA/delivery-carrier.

terminal Installation and usage

OCA documentation · Odoo 19.0

To configure delivery methods with multiple destinations:

  • Go to Inventory \> Configuration \> Delivery \> Delivery Methods
  • Create or edit an existing record.
  • Select "Destination type" = "Multiple destinations".
  • Introduce a line for each destination in the new tab "Destinations"
  • Lines have priority, so you have to put first the lines with more restricted destinations.
  • When using the delivery method in a Sales order, delivery address will be used for computing the delivery price according introduced destinations.

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.