OdooWiki OCA HUB

POS Container Deposit

pos_container_deposit folder_open OCA/pos open_in_new
Point of Sale License: AGPL-3

This module allows the use of deposit products for PoS products.

An example of such a deposit product would be a bottle of cola, where the bottle is being sold for an extra 25 cents, which you get back when you bring the bottle back to the store intact. Whenever the cola is added to a PoS order, the bottle is added too. If the cola quantity changes, the bottle quantity will change as well.

auto_awesome What this module does

AI-generated from the code · Odoo 16.0

Lets you charge a refundable container deposit in the Point of Sale: when a product with a deposit is sold, its deposit product is added automatically and its quantity follows the sold quantity.

This module adds container deposits to Point of Sale products. On a product form, in the Point of Sale section, you can mark a product as a deposit container ("is_deposit") or link a product to a deposit product that represents the container charge. Only products that are sold, available in POS and not services show these fields, and the deposit product must itself be flagged as a deposit.

In the Point of Sale screen, when a cashier adds a product that has a deposit product, the deposit line is added automatically with the same quantity. Changing the quantity of the sold product changes the deposit line quantity too, and removing the product removes the deposit line. Deposit lines cannot be selected or merged with other lines, so the cashier cannot accidentally edit them. If the deposit product is not available in the POS, an error popup appears and the product is not added.

The module touches product.template, product.product and pos.session (to load the deposit fields into the POS). It also adds a search filter on deposit products in the product search view. Copies of a product keep their deposit product.

Depends on

point_of_sale
Models and fields (2)
  • product.product · extends an existing modeldeposit_product_id
  • product.template · extends an existing modelis_deposit, deposit_product_id

Text generated by AI (DeepSeek) from reading the Odoo 16.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.

terminal Installation and usage

OCA documentation · Odoo 16.0

To configure this module, you need to go to Point of Sale > Products.

  • Select or add at least one 'deposit product', such as 'Bottle 1L', with a non-zero price and with the checkbox 'Is Deposit' set to True.
  • Select or add at least one product of which 'Use Deposit' is checked, such as '1 liter of cola'. In the accompanying product selection field, select the bottle. The two products are now linked.

To use this module, open a POS session and:

  • When a deposit product (eg. cola) is added, the bottle is added to the order as well and the quantities are kept in sync.
  • When someone brings back bottles to the store, you can just add a bottle and enter a negative sale quantity, thus refunding the bottle.

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.