One order, many shipping methods — finally in sync

Assign the right delivery method to every product on the order — not just one method for the whole cart — with per-line cost, group/tag/country restrictions, and a clear split summary staff can act on.

The problem

Odoo picks one carrier for the whole sales order, even when a cart mixes a fragile item, a heavy pallet, and a standard box. Merchants end up overcharging customers by applying the priciest method to everything, or undercharging by applying the cheapest method to items that need special handling — and staff get no explanation when a method should have been unavailable in the first place.

The solution

Set a shipping method per product or per category, let each order line inherit or override it, and see the exact shipping cost per line plus a consolidated split summary showing which products ship via which method and why. Restrict methods by user group, customer tag, or country with a clear unavailability reason, and configure dozens of products at once with the bulk assignment wizard.

Capabilities

Everything a mixed catalog needs

Every capability below is implemented in the module.

01

Per-product shipping method

Assign a delivery method directly on the product, so it is applied automatically every time that product lands on an order line.

02

Category-level fallback

Set a default shipping method once on a product category and every product in it inherits the rule, cutting setup time for large catalogs.

03

Per-line cost & override

Every sales order line shows its own shipping method and cost, and staff can override either without touching the rest of the order.

04

Consolidated split summary

The order shows total shipping cost, method count, and a plain-text summary of which products ship via which carrier and why.

05

Group & customer-tag restriction

Limit a shipping method to specific user groups or customer tags, so premium or restricted carriers only ever reach the right buyers.

06

Country restriction

Restrict a carrier to a set of destination countries, keeping methods that cannot legally or practically ship there off the order.

07

Explained unavailability

When a method is restricted, staff see a plain-language reason instead of a silently missing option, backed by an admin-editable unavailability note per carrier.

08

Estimated delivery lead time

Each carrier carries an estimated delivery window, shown alongside cost so staff can weigh speed against price per line.

09

Bulk assignment wizard

Select many products at once and assign a shipping method to all of them in a single action instead of editing product forms one by one.

Workflow

How it works

1

Configure carriers

Add lead time, unavailability note, and group/tag/country restrictions to each delivery method.

2

Assign to products

Set a shipping method per product or category, or use the bulk wizard for the whole catalog at once.

3

Build the order

Each order line inherits its product's shipping method and cost automatically, with room to override per line.

4

Review the split

Check total shipping cost, method count, and the split summary before confirming the order.

Questions

Frequently asked

No sales fog. If your question isn't here, email us and we'll answer it the same way.

The line falls back to the category's default shipping method, and if that is also unset, staff can pick any method manually — the module never blocks an order for missing configuration.

Get the app

Buy it on the Odoo App Store

Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.

Shipping Per Product

Assign shipping methods per product or category, restrict them by group, tag, or country, and see per-line cost with a consolidated split summary on every sales order.

Buy on Odoo App Store