Container Deposits

A customer buys a six-pack
A customer puts a six-pack of cans in the cart. Under a deposit return scheme that's six deposits, and they can't be folded into the price. They have to show on a line of their own in the cart and on the receipt, stay outside VAT, and be left alone by your coupons and sales. Commerce has no notion of a deposit, so none of that happens by itself.
Container Deposits looks after it. Give a product or variant a deposit type and the deposit appears as its own line in the cart, beside the product, going up and down with the quantity. Say how many containers are in a unit and a six-pack collects six deposits, a tray of 24 collects 24. You don't need any JavaScript or template changes for the totals to add up.

Receipts and invoices
The deposit lines stay on the order, ready for the paperwork. There are Twig helpers and example templates for product cards, the cart, producer invoices and till receipts laid out the way Re-turn asks, including the notice that the deposit is mandatory and can't be discounted. Every label in them can be translated.
Other schemes
It's built around Ireland's Deposit Return Scheme, and the tiers in the docs are Re-turn's. Nothing in the plugin is tied to Ireland, though. Set your own tiers and amounts and it works for any deposit scheme. Amounts are shown in the store's own currency, and if your country charges tax on deposits, you attach a rate to the deposits' tax category and it's picked up.
Built so the deposit can't be got around
- Deposits sit under their own "Container Deposits (No VAT)" tax category, created on install, so your VAT only covers the products
- Coupons, sales and catalog pricing rules never touch a deposit
- A discount's minimum spend and quantity are checked without the deposits
- Deposits don't count as shippable, so your shipping rules leave them out
- A customer can't add a deposit to the cart directly or swap in a cheaper one
- A deposit type that's still on a product can't be deleted
What's in it
| Feature | What it does |
|---|---|
| Deposit tiers | Set in the control panel, such as 15c on a can and 25c on a bottle |
| Deposit field | Pick the deposit per variant, or on the product to cover every variant |
| Multipacks | A container count, so a six-pack collects six deposits |
| Cart | Deposit lines added, updated and removed with every cart change |
| Templates | Twig helpers and example templates for product cards, carts, producer invoices and till receipts |
| GraphQL | A containerDeposit field on variants with the amount and the text to show beside the price, for headless shops |
| Bundle Builder | Deposits on the cans and bottles inside a bundle |
| Multi-site and multi-store | Each store's carts get the right deposit |
You can try it free on any dev domain before you buy. It needs Craft CMS 5, Craft Commerce 5 and PHP 8.2 or later.
Accessibility
What's been checked, and anything that still needs work, is in the accessibility statement.
Standard
Plus $10/year after one year.
To install this plugin, copy the command above to your terminal.
This plugin doesn't have any reviews.





