OdooWiki OCA HUB

Delivery Fee Deposit

delivery_fee_deposit folder_open OCA/delivery-carrier open_in_new
Inventory/Delivery License: LGPL-3

This glue module integrates delivery fees with customer deposits.

It keeps the regular delivery fee behavior for standard deliveries while avoiding extra fees when a delivery only moves products that are already in the customer's deposit.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Adjusts delivery fees when a transfer only moves products that already belong to the customer's deposit, so customers are not charged twice for shipping their own goods.

This module connects two existing features: delivery fees and customer deposits (stock that belongs to the customer but is stored by you). It changes when a delivery fee is added to a sales order, depending on what the transfer actually moves.

  • When a transfer only releases products that are already the customer's own deposit stock, no delivery fee is added.
  • When a transfer mixes deposit stock with your own products, the fee is still applied, but only for outgoing transfers linked to a sales order, and only if the customer is not exempt from delivery fees and the carrier has a fee product.
  • The first transfer that puts products into the customer's deposit is still treated as a normal delivery, so the usual fee rules apply.
  • If the carrier is not set on the transfer, the module falls back to the carrier chosen on the related sales order.
  • On returns, the fee is only recalculated when all the non-deposit products of the transfer have been fully returned.

The behaviour is automatic; there are no new menus, screens or buttons. It affects stock transfers (stock.picking) and, through them, the delivery fee lines on sales orders. Customers marked as exempt from delivery fees are respected.

Models and fields (1)
  • stock.picking · extends an existing 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. View the code on GitHub

Availability by version

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

Confirmation status: 1 confirmed, 8 with no information of 9 versions.

Sources · Odoo 18.0

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

terminal Installation and usage

OCA documentation · Odoo 18.0

When this module is installed, delivery fees follow these rules:

  • The sale order that creates the customer deposit applies the delivery fee.
  • A delivery that only delivers products from the customer deposit does not apply the delivery fee.
  • A mixed delivery, with products from the customer deposit and regular stock, applies the delivery fee normally.

Behavior matrix

| Scenario | Exempt | Delivery fee applied | | --- | --- | --- | | Sale creating a customer deposit | Yes | No | | Sale creating a customer deposit | No | Yes | | Delivery fully from customer deposit | Yes | No | | Delivery fully from customer deposit | No | No | | Mixed delivery: customer deposit + regular stock | Yes | No | | Mixed delivery: customer deposit + regular stock | No | Yes | | Delivery fully from pre-existing customer deposit | Yes | No | | Delivery fully from pre-existing customer deposit | No | No |

A pre-existing customer deposit means customer-owned stock already available before the sale being delivered. Releasing it should not create a new delivery fee, even for successive deliveries.

Return behavior matrix

| Scenario | Return condition | Delivery fee reimbursed | | --- | --- | --- | | Sale creating a customer deposit | Deposit creation picking fully returned | Yes, per carrier config | | Delivery fully from customer deposit | Returned | No fee existed | | Mixed delivery: deposit + regular stock | Only deposit products returned | No | | Mixed delivery: deposit + regular stock | All regular-stock products returned | Yes, per carrier config | | Delivery fully from pre-existing customer deposit | Returned | No fee existed |

For mixed deliveries, the fee belongs to the regular-stock shipment. Returning only the customer-deposit products must not reimburse it; returning all regular products does.

No verified information in OCA: Installation, Configuration.

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.