---
title: VAT Treatment
date: 2026-06-13T16:10:00+01:00
author: John Henry Donovan
canonical_url: "https://johnhenry.ie/plugins/container-deposits/docs/guide/vat-treatment"
section: Plugins
---
esc

↑↓ to navigate↵ to selectesc to close

Menu On this page 

- [Return to top](#)

Documentation

Documentation

# VAT Treatment

Irish Revenue treats deposits collected under the Deposit Return Scheme as **outside the scope of VAT**. This plugin enforces that by routing every deposit line item through a dedicated, no-rate tax category.

## What gets created

On install, the migration creates a Commerce tax category:

![](https://johnhenry.ie/images/plugins/docs/container-deposits/tax-category.png)FieldValueName`Container Deposits (No VAT)`Handle`containerDeposit`DescriptionIrish DRS deposits - treated as outside the scope of VAT by Revenue.Default`false`Tax rates(none)

## How it's applied

`DepositPurchasable::getTaxCategoryId()` returns the ID of the `containerDeposit` category. When Commerce works out tax on the order, no rate matches the deposit line item, so no VAT gets added.

## If you delete the category

The override falls back to the store's default tax category - which probably **is** VAT-applicable. Re-running the install migration (or reinstalling the plugin) brings the category back.

## International stores

The category and treatment are written specifically for Irish Re-turn but work just as well for any jurisdiction that treats container deposits as non-taxable (most do). If your jurisdiction treats deposits as VAT-applicable, edit the `containerDeposit` tax category and attach the right rate - the plugin will pick it up automatically.

## Reporting

Deposit line items show up in standard Commerce reports under their own SKU (`deposit-<handle>`), so you can reconcile what you've collected against what you owe the DRS operator. The deposit purchasable description includes the deposit type name, so CSV exports stay readable.

On this page
