Product Deposit | deposit charged automatically and shown clearly
Description
Highlights
About the Extension
A customer puts six crates of mineral water in the basket. The shop shows one price, the doorstep delivery costs another. The difference is the deposit, and nobody saw it coming. You pay for that with support tickets, cancelled orders and a rocky conversation about price transparency.
The problem
A deposit does not belong inside the product price. It is part of what the customer pays, but it is not the value of the goods, and people want to know which part is which. Without a tool you end up writing the deposit into the product description, hiding it inside the price or keeping a spreadsheet next to the shop. Change one deposit rate and you edit hundreds of products by hand. Then somebody asks whether returnable deposits carry VAT, and the fun really stops.
The solution
You define once which refund types exist in your shop: "Reusable Bottle 0.5l", "Beverage crate", "Transport container". On each product you pick the matching refund type and enter the amount. The plugin does the rest. It shows the deposit on the product page, adds it to the cart as a separate item and includes it in the order total. No theme work, no code.
What's in it for you
Customers see the deposit before they buy. The name of the refund type and the amount sit right below the price, for example "excl. £0.15 Refund". In the cart it becomes its own line. No surprise on the doorstep, no ticket in your inbox.
Four decimals, if your ERP system delivers them. Amounts such as €0.0255 are calculated exactly, only the line sum is rounded.
You maintain deposit rates in one place. A handful of refund types covers your whole range. The amount belongs to the product, the wording and the tax treatment belong to the refund type. Edit the refund type and the change applies everywhere.
Whole categories are set up in one go. Enter refund type and deposit price on the category, then click "Mirror settings to articles". Every product underneath picks up the values, subcategories included. An afternoon of clicking turns into two clicks.
Returnable deposits can be shown tax-free. Switch on "Tax-free reusable deposit" per refund type. The deposit then enters the total without VAT while the product itself is taxed as usual. The default is off, so it stays your decision.
Vouchers do not eat your deposits. Discounts apply to the goods only. Deposits stay in full, because you also pay them back in full on return. The total can never drop below zero.
A security deposit where it fits. Charge pallets or rental equipment once per refund type: per cart item or per order, as a plain amount or with a real product.
The deposit can be a real product. Link a refund type to a product from your shop and the deposit lines become real product line items with a product number, and your figures show how much deposit you moved. It stays optional, and the cart looks the same either way.
How the plugin works
You manage refund types in the administration under "Products → Refund System": name, description, display image, active switch, tax treatment and the optional linked product. On products and categories the plugin adds a "Refund" tab to the custom fields, holding the refund type, the deposit price and a "CashBack" switch that turns a product into an empties-return article with a negative price.
In the shop the deposit shows up in three places: below the price on product pages and in listings, in the cart as an indented line per product plus one combined deposit item, and in the finished order. From there it travels into the order confirmation email, the customer account and the documents Shopware generates. Shopware charges no shipping on the deposit, and the deposit carries no delivery time.
Typical use cases
Drinks retailer: crates, bottles and kegs carry different deposit rates. Three refund types are enough, the amounts live on the products.
Brewery or farm shop shipping direct: a swing-top bottle plus the crate quickly adds up to a two-figure deposit. Customers see the split before checkout instead of on the invoice.
Catering supplier running B2B and B2C: the consumer channel shows the deposit, the trade channel has the plugin switched off. Same products, two behaviours.
Dairy or anything shipped in reusable containers: reusable packaging gets its own refund type with tax-free treatment.
Technical facts for your IT team
Shopware 6.7, PHP 8.2 or newer. The plugin creates its own database tables for refund types and their translations. Existing Shopware tables stay untouched; the assignment on products and categories runs through a dedicated custom field set.
The plugin sends no data to external servers. It processes no personal data and sets no cookies of its own. Refund types, amounts and settings stay in your Shopware database.
Price resolution in listings and CMS elements loads the required deposit data in batches and keeps it for the duration of the request instead of querying per product. User roles get a "Refund System" privilege area covering view, edit, create and delete. On uninstall Shopware asks whether the plugin data should be kept: say yes and refund types and custom fields are ready again after a reinstall, otherwise tables, custom fields and configuration are removed.
Notes
Whether returnable deposits may run tax-free in your case is something to settle with your accountant. The "Tax-free reusable deposit" switch puts that decision into practice per refund type and is off by default. Try it in your staging shop and see.
Legal notice
We accept no liability for legal requirements. Please check the use of this plugin with a qualified legal advisor.
Details
- Available: English, German
- Latest update: 11 November 2026
- Publication date: 23 December 2020
- Version: 6.7.3
- Category: Checkout / Cart process
Resources
Reviews (2)
Sehr hilfreich!
Super Lösung für alle die mit Pfand zu tun haben
Support ist schnell und hilfsbereit wenn mal was klemmen sollte.
About the Extension Partner
BuI Hinsche GmbH
Partner Status
-
Shopware
Bronze Partner -
Shopware
Premium Extension Partner
Details
- Ø-Rating: 4.3
- Partner since: 2014
- Extensions: 113
- Certifications: 2
Support
- Based in: Germany
- Speaks: German, English
- Response time: Very quickly