Automatic container deposits across Sales, POS and Purchase
Charge and refund refundable deposits on bottles, kegs and jugs automatically, with a single ledger that tracks every customer's outstanding containers.
The problem
Selling products in reusable containers means charging a refundable deposit and refunding it when the empty comes back — a process most Odoo setups still handle by hand. Staff forget matching deposit lines, over-refund empties, and lose track of how many containers each customer still owes, while existing apps cover only one sales channel, need debug mode, or require creating and linking two products by hand.
The solution
Returnable Container Deposits flags any product as deposit-bearing and links it to a deposit product, then takes over from there: matching deposit lines are added automatically on quotations, sales orders, POS tickets and purchase orders, and a dedicated ledger tracks every container issued and returned per customer — the single source of truth for balances, refunds and over-refund protection.
Deposit management, fully automated
Every capability below is implemented in the module.
Zero-Click Deposit Lines
Mark a product as containing a deposit and link its deposit product once. From then on, matching deposit lines are added and kept in sync automatically on quotations, sales orders and purchase orders — no update button to click.
Guided Linked-Product Wizard
Create a main product and its matching deposit product together in a single wizard run, with sensible defaults, instead of creating and wiring two products by hand.
Automatic POS Deposit Attachment
The moment a deposit-bearing product is scanned or tapped in the Point of Sale, its deposit line attaches to the order automatically — no extra step for the cashier.
First-Class Container Ledger
Every deposit charged or refunded across Sales, POS and Purchase is written to a dedicated container deposit ledger, giving you one auditable record of every container movement.
Guided Container Returns
A Return Containers wizard reads a customer's outstanding balances, lets staff enter return quantities in plain positive terms, and drafts the customer credit note automatically.
Over-Refund Protection
Returns are checked against the customer's outstanding ledger balance, with a configurable company setting that blocks refunding more containers than were actually issued.
Per-Customer Liability Visibility
See each customer's outstanding container count and deposit liability directly on their contact record, with an automatic alert when the balance crosses your configured threshold.
Deposit & Balance Reporting
List, kanban, pivot and graph views on the deposit ledger let you review issued-versus-returned activity, group by customer or deposit product, and filter by date or user.
Bulk Deposit Configuration
Apply or update deposit settings across many products in one action from the product list, so onboarding a full catalog of returnable containers doesn't mean editing products one at a time.
How it works
Link a deposit product
Use the Create Linked Products wizard, or flag an existing product as deposit-bearing and choose its deposit product.
Sell as usual
Add the product to a quotation, sales order, POS ticket or purchase order — the matching deposit line appears automatically.
Confirm the order
Confirming the order posts the deposit to the container ledger, so the customer's outstanding balance updates immediately.
Process the return
When containers come back, run the Return Containers wizard to draft a credit note and record the refund — over-refunds are blocked automatically.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
It works with Sales, Point of Sale and Purchase (and Accounting for credit notes), so deposits apply consistently no matter which channel a container-bearing product is sold or purchased through.
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.
Returnable Container Deposits
Deposit lines added automatically across Sales, Point of Sale and Purchase, with guided container returns and over-refund protection — backed by a per-customer container liability ledger.
Buy on Odoo App Store