Wer Getränke in Einwegflaschen oder Dosen an Endkunden in Deutschland verschickt, muss je Verpackung mindestens 0,25 Euro Pfand einschließlich Umsatzsteuer berechnen. Die Grundlage ist seit dem 12. August 2026 § 46 des Verpackungsrecht-Durchführungsgesetzes (VerpackDG). Das Pfand gehört umsatzsteuerlich zum Entgelt und trägt den Steuersatz des Getränks, und im Versandhandel müssen Sie Ihren Kunden eine Rückgabemöglichkeit in zumutbarer Entfernung bieten. Österreich verlangt ebenfalls 0,25 Euro, behandelt das Pfand aber als nicht steuerbar.
WooCommerce kennt kein Pfand, also muss der Shop es selbst berechnen: als eigene Gebühr im Warenkorb, mit dem richtigen Netto-Anteil, weil die 0,25 Euro aus § 46 VerpackDG ein Bruttobetrag sind. Jede rechtliche Aussage verweist auf Gesetzestext, Verwaltungsanweisung oder Systembetreiber, gelesen am 31. Oktober 2026. Wo ich etwas nicht an einer amtlichen Quelle bestätigen konnte, steht das dabei.
Was verlangt § 46 VerpackDG von einem Onlineshop, der Getränke verkauft?
Die Pfandpflicht stand bis zum Sommer in § 31 des Verpackungsgesetzes. Dieses Gesetz ist abgelöst: Das VerpackDG vom 13. Juli 2026 (BGBl. 2026 I Nr. 207) ist nach dem amtlichen Hinweis auf gesetze-im-internet.de am 12. August 2026 in Kraft getreten, und seine Übergangsvorschriften sprechen vom Verpackungsgesetz “in der bis zum 11. August 2026 geltenden Fassung”. Die alte Einzelnorm zu § 31 VerpackG ist dort nicht mehr abrufbar. Rechtstexte, Shop-Hinweise und Plugin-Einstellungen, die noch § 31 VerpackG nennen, sollten Sie anpassen.
§ 46 Abs. 1 VerpackDG enthält vier Pflichten. Der Erstinverkehrbringer erhebt von seinen Abnehmern ein Pfand von mindestens 0,25 Euro einschließlich Umsatzsteuer je Verpackung. Jeder weitere Inverkehrbringer erhebt es “auf allen Handelsstufen bis zur Abgabe an den Endabnehmer”. Der Erstinverkehrbringer kennzeichnet die Verpackungen vor der Bereitstellung in Deutschland dauerhaft, deutlich lesbar und gut sichtbar als pfandpflichtig. Und er beteiligt sich an einem bundesweit einheitlichen Pfandsystem.
Für einen Onlineshop, der Markenware vom Großhandel kauft, ist davon vor allem der zweite Satz wichtig: Sie berechnen das Pfand an Ihre Kunden weiter. Anders sieht es aus, wenn Sie selbst abfüllen oder Getränke aus dem Ausland einführen und als Erster in Deutschland in Verkehr bringen. Dann tragen Sie auch die Kennzeichnung und die Systembeteiligung. Die Zentrale Stelle Verpackungsregister schreibt dazu, dass pfandpflichtige Einweggetränkeverpackungen zusätzlich zur Registrierung im Verpackungsregister LUCID Teil des DPG-Pfandsystems sein müssen.
Die Bußgelder stehen in § 66 Abs. 1 und 3 VerpackDG. Wer das Pfand nicht oder nicht richtig erhebt (Nr. 20), Verpackungen nicht kennzeichnet (Nr. 21), sich keinem Pfandsystem anschließt (Nr. 22) oder Leergut nicht zurücknimmt (Nr. 23), riskiert bis zu 100.000 Euro. Wer Pfand ohne Rücknahme der Verpackung erstattet (Nr. 24) oder die Hinweise nach § 47 nicht gibt (Nr. 26), bis zu 10.000 Euro.
Welche Getränkeverpackungen sind vom Pfand ausgenommen?
§ 46 Abs. 4 VerpackDG nimmt mehrere Gruppen aus. Für die Produktdaten im Shop ist die Liste wichtig, weil Sie pro Artikel entscheiden müssen, ob ein Pfand anfällt.
| Ausnahme | Fundstelle | Gilt auch für Kunststoffflaschen und Dosen? |
|---|---|---|
| Verpackungen, die nachweislich nicht an Endabnehmer in Deutschland gehen | Abs. 4 Nr. 1 | ja |
| Füllvolumen unter 0,1 Liter | Abs. 4 Nr. 2 | ja |
| Füllvolumen über 3,0 Liter | Abs. 4 Nr. 3 | ja |
| Getränkekartons als Block-, Giebel- oder Zylinderpackung | Abs. 4 Nr. 4 | nicht einschlägig |
| Polyethylen-Schlauchbeutel, Folien-Standbodenbeutel | Abs. 4 Nr. 5 und 6 | nicht einschlägig |
| Sekt, Wein, weinähnliche Getränke (je ab 50 Prozent Anteil) | Abs. 4 Nr. 7 a bis c | nein |
| Spirituosen, die der Alkoholsteuer unterliegen, außer Alkopops | Abs. 4 Nr. 7 d | nein |
| sonstige alkoholhaltige Mischgetränke ab 15 Prozent | Abs. 4 Nr. 7 e | nein |
| Milch und Milchmischgetränke ab 50 Prozent Milch, bestimmte trinkbare Milcherzeugnisse | Abs. 4 Nr. 7 f und g | nein |
| Fruchtsäfte, Gemüsesäfte, Nektare ohne Kohlensäure | Abs. 4 Nr. 7 h und i | nein |
| Lebensmittel für besondere medizinische Zwecke | Abs. 4 Nr. 7 j | nein |
| alkoholfreie Alternativen zu Spirituosen bis 1,2 Volumenprozent | Abs. 4 Nr. 7 k | nein |
Die letzte Spalte folgt aus dem Schlusssatz von Abs. 4: Die Inhaltsausnahmen der Nummer 7 gelten nicht, wenn die Getränke in Einwegflaschen aus Kunststoff oder in Dosen abgefüllt sind. Ein Orangensaft in der Glasflasche ist pfandfrei, derselbe Saft in der PET-Flasche nicht. Ein Wein in der Dose trägt Pfand. Für den Shop heißt das: Die Pfandpflicht hängt am Material und am Inhalt zusammen, und eine einfache Regel “alle Säfte ohne Pfand” in einem Import-Skript ist falsch.
Muss ein Onlineshop leere Flaschen und Dosen zurücknehmen?
Ja, in einer Form, die das Gesetz offen lässt. § 46 Abs. 2 Satz 1 VerpackDG verpflichtet jeden Inverkehrbringer, restentleerte Einweggetränkeverpackungen am Ort der tatsächlichen Übergabe oder in dessen unmittelbarer Nähe unentgeltlich zurückzunehmen und das Pfand zu erstatten. Für den Versandhandel steht im letzten Satz eine eigene Regel:

Screenshot: dpg-pfandsystem.de, Betreiber des bundesweiten Einwegpfandsystems, 31. Oktober 2026.
“Im Fernabsatz hat der Endvertreiber die Rücknahme durch geeignete Rückgabemöglichkeiten in zumutbarer Entfernung zum Endabnehmer zu gewährleisten.”
Was “geeignet” und “zumutbar” konkret bedeuten, regelt der Gesetzestext nicht. Eine Entfernung in Kilometern oder eine Liste zulässiger Lösungen habe ich in § 46 nicht gefunden. Sie müssen also selbst eine Lösung wählen und dokumentieren, etwa eine Rücknahme durch den eigenen Lieferdienst bei der nächsten Lieferung oder eine Vereinbarung mit Rücknahmestellen. Lassen Sie die gewählte Lösung von Ihrer Rechtsberatung prüfen, bevor Sie sie in den Shop schreiben.
Zwei Einschränkungen helfen kleineren Händlern. Die Rücknahmepflicht beschränkt sich auf die Materialarten, die Sie im Sortiment führen (Glas, Metall, Papier und Karton, Kunststoff). Wer weniger als 200 Quadratmeter Verkaufsfläche hat, muss nur Verpackungen der Marken zurücknehmen, die er selbst führt. Ob und wie die Flächengrenze auf einen reinen Onlineshop ohne Ladenfläche anzuwenden ist, sagt § 46 nicht.
Ein Satz aus Abs. 2 betrifft direkt Ihre Erstattungslogik: “Ohne eine Rücknahme der Verpackung darf das Pfand nicht erstattet werden.” Gutschriften für Pfand, die Kunden ohne zurückgegebenes Leergut erhalten, etwa als Kulanz oder als Rabatt “Pfand geschenkt”, sind damit ausgeschlossen.
Wie muss der Onlineshop auf EINWEG und MEHRWEG hinweisen?
§ 47 VerpackDG verlangt im Laden Schilder mit dem Wort “EINWEG” bei pfandpflichtigen Einwegverpackungen und “MEHRWEG” bei wiederverwendbaren Verpackungen, jeweils in unmittelbarer Nähe der Produkte. Abs. 3 überträgt das auf den Versandhandel: Im Fernabsatz sind die Hinweise “in den jeweils verwendeten Darstellungsmedien entsprechend zu geben”. Abs. 4 legt die Größe fest: Die Hinweise müssen in Gestalt und Schriftgröße mindestens der Preisauszeichnung für das jeweilige Produkt entsprechen.
In WooCommerce sind die Darstellungsmedien die Produktseite, die Kategorieseiten mit Preisen und alle Stellen, an denen Sie Getränke mit Preis zeigen, etwa Produktblöcke auf der Startseite. Eine kleine graue Zeile unter dem Preis erfüllt Abs. 4 nicht. Der Code weiter unten gibt auf der Produktseite “EINWEG, zzgl. Pfand: 0,25 €” aus. Die Klasse drs-deposit sollten Sie im Theme auf dieselbe Schriftgröße wie den Preis setzen. Für Kategorieseiten brauchen Sie einen zweiten Hook, weil die Produktseiten-Ausgabe dort nicht greift.
Für Mehrweg gilt die Hinweispflicht nach Abs. 2 nicht bei Verpackungen über 3,0 Liter und nicht bei den Getränken aus § 46 Abs. 4 Nr. 7. Einen gesetzlichen Mehrwegpfandbetrag gibt es nicht: § 46 regelt nur Einweg. Den Betrag für Mehrwegflaschen und Kästen gibt Ihr Lieferant vor.
Ist das Pfand umsatzsteuerpflichtig?
In Deutschland ja. § 10 Abs. 1 UStG definiert das Entgelt als alles, was den Wert der Gegenleistung bildet, abzüglich der Umsatzsteuer. Der Umsatzsteuer-Anwendungserlass (Stand 2. Juni 2026) wendet das in Abschnitt 10.1 Abs. 8 auf Pfand an:
“Wird das Pfandgeld für Warenumschließungen dem Abnehmer bei jeder Lieferung berechnet, ist es Teil des Entgelts für die Lieferung. Bei Rücknahme des Leerguts und Rückzahlung des Pfandbetrags liegt eine Entgeltminderung vor.”
Daraus folgen drei Dinge für den Shop. Das Pfand trägt den Steuersatz des Getränks, zu dem es gehört. Die 0,25 Euro aus § 46 sind ein Bruttobetrag, der die Umsatzsteuer bereits enthält. Und jede Pfanderstattung mindert das Entgelt, also auch die Umsatzsteuer.
Satz 3 und 4 erlauben, ausgezahlte Pfandgelder unabhängig von den Vollgutlieferungen des jeweiligen Zeitraums als Entgeltminderung zu behandeln, solange sie sachgerecht auf die Steuersätze verteilt werden, zum Beispiel im gleichen Verhältnis wie die Vollgutlieferungen. Satz 5 nennt zwei Vereinfachungen, die das Finanzamt auf Antrag genehmigen kann. Bei der ersten bleiben Pfandbeträge in der laufenden Umsatzbesteuerung zunächst außen vor, und am Jahresende wird der Pfandbetragssaldo versteuert. Dann muss die Rechnung klar zeigen, dass auf das Pfand keine Umsatzsteuer berechnet wurde, und die Pfandbeträge müssen nach Abnehmern getrennt aufgezeichnet werden. Bei der zweiten wird in jeder Rechnung die Leergutrücknahme mit der Lieferung verrechnet, und nur der verbleibende Nettobetrag wird versteuert. Beide Verfahren passen eher zum Getränkegroßhandel mit Stammkunden als zu einem Onlineshop für Verbraucher. Wenn Sie eines nutzen wollen, klären Sie das vorher mit Ihrer Steuerberatung, weil sich dann auch die Gebühr im Shop ändert.
Warum berechnet WooCommerce 0,30 Euro statt 0,25 Euro Pfand?
Weil Gebühren in WooCommerce Nettobeträge sind. Wenn Sie im Code add_fee( 'Pfand', 0.25, true ) aufrufen, nimmt WooCommerce 0,25 als Netto und schlägt 19 Prozent auf. Der Kunde zahlt 0,2975 Euro, in der Anzeige gerundet 0,30 Euro, für eine Dose, die nach § 46 genau 0,25 Euro Pfand kosten soll. Bei einem Kasten mit 24 Dosen sind das 7,14 statt 6,00 Euro.
Die Lösung ist, den Nettoanteil aus dem Bruttobetrag herauszurechnen. Bei 19 Prozent sind das 0,210084 Euro netto und 0,039916 Euro Steuer je Dose. WooCommerce bietet dafür WC_Tax::calc_inclusive_tax(): Die Funktion bekommt den Bruttobetrag und die Steuersätze der Klasse und liefert die enthaltene Steuer. Sie übergeben die Differenz als Gebühr, WooCommerce rechnet die Steuer wieder auf, und die Summe ergibt 0,25 Euro.
Ein Warenkorb kann Getränke mit unterschiedlichen Steuerklassen enthalten. Der Code gruppiert das Pfand deshalb nach der Steuerklasse der Produkte und legt pro Klasse eine eigene Gebühr an, beschriftet mit dem Satz, etwa “Pfand (19 %)”. Gewerbliche Kunden mit gültiger Steuerbefreiung zahlen dann das Netto-Pfand, so wie WooCommerce jede steuerpflichtige Gebühr für steuerbefreite Kunden ohne Steuer berechnet.
Prüfen Sie nach der Umstellung eine Testbestellung mit einer einzelnen Dose und eine mit einer ungeraden Menge, etwa sieben Dosen. Bei Bruchteilen von Cent kann die Rundung von WooCommerce auf Zeilen- oder Summenebene einen Cent Unterschied erzeugen, und die Einstellung woocommerce_tax_round_at_subtotal entscheidet, wo gerundet wird.
Wie lege ich das Pfand in WooCommerce als Gebühr an?
Der richtige Ort ist die Gebühren-Schnittstelle von WooCommerce. Die Aktion woocommerce_cart_calculate_fees läuft bei jeder Berechnung der Warenkorbsummen, und WC_Cart::add_fee() nimmt Name, Betrag, Steuerpflicht und Steuerklasse entgegen. Gebühren werden als eigene Positionen in der Bestellung gespeichert, erscheinen in den Bestellmails und im Backend und lassen sich einzeln erstatten.
Der Code liest drei Meta-Felder je Produkt: die Verpackungsart (_drs_container: pet, can oder glass für Einwegglas), das Füllvolumen in Millilitern (_drs_ml) und die Zahl der Behälter je Verkaufseinheit (_drs_units, ein Sechserpack zählt sechs). Variationen ohne eigene Werte übernehmen die des Elternprodukts. Produkte ohne Pfand, etwa Säfte in Glas oder Wein in Glasflaschen, bekommen einfach keinen Wert für _drs_container. Befüllen können Sie die Felder über benutzerdefinierte Felder, eine Spalte im Produktimport oder die Metabox eines Plugins.
<?php
/**
* Plugin Name: Getränkepfand als Gebühr im Warenkorb
* Description: Berechnet das Pfand nach dem Lieferland als eigene Gebühr im Warenkorb.
*/
defined( 'ABSPATH' ) || exit;
/**
* Pfandsysteme nach Lieferland. Jede Stufe: [ min. ml, max. ml, Pfand je Behälter ].
* 'taxable' => true heißt: Der gesetzliche Betrag enthält bereits die Umsatzsteuer (DE).
*/
function wpp_drs_schemes(): array {
$de = [ [ 100, 3000, 0.25 ] ]; // § 46 Abs. 4 Nr. 2 und 3 VerpackDG: 0,1 bis 3,0 Liter
$at = [ [ 100, 3000, 0.25 ] ]; // § 4 Abs. 1 Pfandverordnung: 0,1 bis 3,0 Liter
return [
'DE' => [ 'currency' => 'EUR', 'taxable' => true, 'label' => 'Pfand', 'notice' => 'EINWEG, zzgl. Pfand', 'rates' => [
'pet' => $de,
'can' => $de,
'glass' => $de, // Einweg-Glas; Inhaltsausnahmen (Wein, Saft ...) über die Produktdaten
] ],
'AT' => [ 'currency' => 'EUR', 'taxable' => false, 'label' => 'Pfand', 'notice' => 'zzgl. Pfand', 'rates' => [
'pet' => $at, // in Österreich nur Kunststoff und Metall
'can' => $at,
] ],
];
}
/** Produkt-Meta, bei Variationen ohne eigenen Wert vom Elternprodukt. */
function wpp_drs_meta( WC_Product $product, string $key ): string {
$value = (string) $product->get_meta( $key );
if ( '' === $value && $product->get_parent_id() ) {
$value = (string) get_post_meta( $product->get_parent_id(), $key, true );
}
return $value;
}
/** Pfand für eine Verkaufseinheit (ein Sechserpack zählt sechs Behälter), sonst 0. */
function wpp_drs_unit_deposit( WC_Product $product, array $scheme ): float {
$container = wpp_drs_meta( $product, '_drs_container' ); // pet, can oder glass
$ml = (int) wpp_drs_meta( $product, '_drs_ml' );
$units = max( 1, (int) wpp_drs_meta( $product, '_drs_units' ) );
foreach ( $scheme['rates'][ $container ] ?? [] as [ $min, $max, $amount ] ) {
if ( $ml >= $min && $ml <= $max ) {
return $amount * $units;
}
}
return 0.0;
}
/** Das Pfandsystem des Lieferlands, wenn der Shop es berechnen kann. */
function wpp_drs_current_scheme(): ?array {
$country = '';
if ( WC()->customer ) {
$country = WC()->customer->get_shipping_country() ?: WC()->customer->get_billing_country();
}
$country = $country ?: WC()->countries->get_base_country();
$scheme = wpp_drs_schemes()[ $country ] ?? null;
// Ein CHF-Shop kann kein Pfand in EUR berechnen: lieber auslassen als umrechnen.
if ( ! $scheme || get_woocommerce_currency() !== $scheme['currency'] ) {
return null;
}
return $scheme;
}
add_action( 'woocommerce_cart_calculate_fees', function ( WC_Cart $cart ) {
$scheme = wpp_drs_current_scheme();
if ( ! $scheme ) {
return;
}
// Pfand je Steuerklasse summieren, damit jede Gebühr dem Satz ihrer Getränke folgt.
$by_class = [];
foreach ( $cart->get_cart() as $item ) {
$deposit = wpp_drs_unit_deposit( $item['data'], $scheme ) * $item['quantity'];
if ( $deposit > 0 ) {
$class = $item['data']->get_tax_class();
$by_class[ $class ] = ( $by_class[ $class ] ?? 0 ) + $deposit;
}
}
// Österreich: Pfand ist kein Entgelt, also eine Gebühr ohne Steuer.
if ( ! $scheme['taxable'] ) {
if ( $by_class ) {
$cart->add_fee( $scheme['label'], round( array_sum( $by_class ), 2 ), false );
}
return;
}
foreach ( $by_class as $class => $gross ) {
// Der gesetzliche Betrag ist brutto: Netto herausrechnen, WooCommerce schlägt die Steuer wieder auf.
$rates = WC_Tax::get_rates( $class );
$tax = array_sum( WC_Tax::calc_inclusive_tax( $gross, $rates ) );
$rate = $rates ? (float) reset( $rates )['rate'] : 0.0;
$cart->add_fee( sprintf( '%s (%s %%)', $scheme['label'], wc_format_localized_decimal( $rate ) ), $gross - $tax, true, $class );
}
} );
// Produktseite: Pfand direkt beim Preis zeigen, nicht erst im Warenkorb.
add_action( 'woocommerce_single_product_summary', function () {
global $product;
$scheme = wpp_drs_current_scheme();
if ( ! $scheme || ! $product instanceof WC_Product ) {
return;
}
$deposit = wpp_drs_unit_deposit( $product, $scheme );
if ( $deposit > 0 ) {
printf(
'<p class="drs-deposit">%s</p>',
esc_html( sprintf( '%s: %s', $scheme['notice'], wp_strip_all_tags( wc_price( $deposit ) ) ) )
);
}
}, 11 );Die Datei besteht php -l unter PHP 8.4. Die Stufenlogik habe ich mit einem kleinen Testskript und nachgebildeten Produkten geprüft: Eine Dose mit 99 ml bekommt kein Pfand, eine mit 100 ml 0,25 Euro. Eine PET-Flasche mit 3,0 Litern bekommt 0,25 Euro, eine mit 3.001 ml keines. Ein Sechserpack Dosen ergibt 1,50 Euro, eine Einweg-Glasflasche in Deutschland 0,25 Euro und in Österreich nichts. Eine Mehrwegflasche bekommt im Code keinen Betrag, und eine Variation ohne eigene Werte übernimmt die des Elternprodukts.
<?php
// drs-fee-test.php: php -d zend.assertions=1 -d assert.exception=1 drs-fee-test.php
define( 'ABSPATH', '/' );
function add_action() {}
function get_post_meta( $id, $key, $single ) { return $GLOBALS['parent_meta'][ $key ] ?? ''; }
class WC_Product {
public function __construct( public array $meta, public int $parent = 0 ) {}
public function get_meta( $k ) { return $this->meta[ $k ] ?? ''; }
public function get_parent_id() { return $this->parent; }
}
require __DIR__ . '/drs-fee.php';
$s = wpp_drs_schemes();
$p = fn( $c, $ml, $u = 1 ) => new WC_Product( [ '_drs_container' => $c, '_drs_ml' => $ml, '_drs_units' => $u ] );
assert( wpp_drs_unit_deposit( $p( 'can', 99 ), $s['DE'] ) === 0.0 ); // unter 0,1 l
assert( wpp_drs_unit_deposit( $p( 'can', 100 ), $s['DE'] ) === 0.25 );
assert( wpp_drs_unit_deposit( $p( 'pet', 3000 ), $s['DE'] ) === 0.25 );
assert( wpp_drs_unit_deposit( $p( 'pet', 3001 ), $s['DE'] ) === 0.0 ); // über 3,0 l
assert( wpp_drs_unit_deposit( $p( 'can', 330, 6 ), $s['DE'] ) === 1.5 ); // Sechserpack
assert( wpp_drs_unit_deposit( $p( 'glass', 330 ), $s['DE'] ) === 0.25 );
assert( wpp_drs_unit_deposit( $p( 'glass', 330 ), $s['AT'] ) === 0.0 ); // AT: kein Glas
assert( wpp_drs_unit_deposit( $p( 'glass_refill', 500 ), $s['DE'] ) === 0.0 ); // Mehrweg: kein gesetzlicher Betrag
$GLOBALS['parent_meta'] = [ '_drs_container' => 'pet', '_drs_ml' => 1500 ];
assert( wpp_drs_unit_deposit( new WC_Product( [], 99 ), $s['AT'] ) === 0.25 ); // Variation erbt
echo "ok\n";Bewusst nicht im Code: Mehrwegpfand, weil der Betrag vom Lieferanten kommt und kein gesetzlicher Wert existiert, und die Inhaltsausnahmen, die Sie über die Produktdaten abbilden. Wenn Sie Mehrweg im selben Mechanismus abrechnen wollen, ergänzen Sie eine Verpackungsart glass_refill mit dem Betrag Ihres Lieferanten. Steuerlich gilt dafür derselbe Abschnitt 10.1 Abs. 8 UStAE, weil er von Pfandgeld für Warenumschließungen allgemein spricht.
Eine Einschränkung betrifft Block-Themes. Der Hinweis auf der Produktseite hängt an woocommerce_single_product_summary. Diese Aktion läuft im klassischen Produkt-Template. Ein Block-Theme, das die Produktseite aus einzelnen Blöcken aufbaut, führt sie nicht unbedingt aus. Prüfen Sie die Produktseite nach der Installation, und wenn der Hinweis fehlt, hängen Sie ihn per Filter render_block an den Preisblock.
Was gilt in Österreich?
Österreich hat seit dem 1. Jänner 2025 ein eigenes Einwegpfand. Grundlage ist die Pfandverordnung für Einweggetränkeverpackungen, BGBl. II Nr. 283/2023. Nach § 4 Abs. 1 erhebt jeder, der gewerbsmäßig Getränke in Einwegverpackungen aus Kunststoff oder Metall mit 0,1 bis 3,0 Litern Füllvolumen in Verkehr setzt, 0,25 Euro je Verpackung, und zwar im Namen und für Rechnung der zentralen Stelle. Die Übergangsregel in § 4 Abs. 2 für Getränke, die vor dem 1. April 2025 abgefüllt wurden, lief am 31. Dezember 2025 aus. Milch und Milchprodukte nach dem Codexkapitel B32 sind nach § 4 Abs. 3 ausgenommen. Glas fällt nicht unter die Verordnung, die nach § 2 Abs. 1 nur für Kunststoff und Metall gilt.
Die zentrale Stelle ist EWP Recycling Pfand Österreich. Erstinverkehrsetzer kennzeichnen die Verpackungen nach § 6 mit einem Barcode und dem Pfandsymbol aus dem Anhang der Verordnung.
Für Onlinehändler enthält § 5 zwei Wege, je nachdem, wie geliefert wird:
- Eigener Lieferdienst (§ 5 Abs. 6): Beim Verkauf über Lieferdienste, “insbesondere über den Online-Handel”, muss der Letztvertreiber Rücknahme und Pfanderstattung bei der Lieferung sicherstellen. Das Pfand darf über denselben Weg ausgezahlt werden wie die Verrechnung der Bestellung, also etwa als Gutschrift auf die Zahlungsart. Zurückzunehmen sind nur Verpackungen, die nach Packstoff und Füllvolumen dem Angebot entsprechen, und nur in der Menge, die Kunden üblicherweise bestellen.
- Versand mit Post, Paket- oder Frachtdienst (§ 5 Abs. 7): Hier entfällt die Rücknahme bei der Lieferung. Stattdessen zahlt der Letztvertreiber der zentralen Stelle einen von ihr festgelegten Ausgleichsbeitrag je Gebinde. § 10 Abs. 4 verpflichtet solche Händler, sich bei der zentralen Stelle zu registrieren.
Die Höhe des Ausgleichsbeitrags steht nicht in der Verordnung, die zentrale Stelle legt sie fest. Ich nenne deshalb keinen Betrag.
Für Händler aus Deutschland ist § 2 Abs. 2 der wichtigste Satz. Bei Fernabsatz im Sinne des § 3 Z 2 FAGG durch einen Versandhändler ohne Sitz oder Niederlassung in Österreich fallen auch die nach Österreich gelieferten Verpackungen unter die Verordnung. Ein Shop mit Sitz in Deutschland, der Dosen an Verbraucher in Österreich schickt, verkauft also unter österreichischem Pfandrecht, muss sich nach § 10 Abs. 4 registrieren und zahlt den Ausgleichsbeitrag.
Umsatzsteuerlich verhält sich das österreichische Pfand anders als das deutsche. Das Informationsblatt von EWP zur Verrechnung schreibt, dass die im Namen und auf Rechnung von EWP eingehobenen Pfandbeträge “nicht der Umsatzsteuer” unterliegen, “da das Pfand kein Entgelt für eine Leistung ist”. Die Musterrechnung im selben Dokument führt das Einwegpfand mit 0 Prozent als “nicht steuerbar”. Das ist die Aussage des Systembetreibers. Eine Stellungnahme des österreichischen Finanzministeriums habe ich nicht gelesen. Im Code ist das österreichische Pfand deshalb eine Gebühr ohne Steuer.
Ein Shop, der nach Deutschland und Österreich liefert, braucht damit zwei verschiedene Pfand-Gebühren mit gleichem Betrag: steuerpflichtig zum Satz des Getränks für Deutschland, nicht steuerbar für Österreich. Genau deshalb hängt die Auswahl im Code am Lieferland.
Wie erstatte ich Pfand bei Widerruf, Stornierung und Leergutrückgabe?
Das sind drei Fälle mit unterschiedlichen Geldflüssen.
Stornierung vor dem Versand. Die Lieferung findet nicht statt. Sie erstatten in WooCommerce die Produktpositionen und die Pfand-Gebühr zusammen. Weil das Pfand eine eigene Position ist, geht genau der berechnete Betrag zurück, und in Deutschland wird die Steuer auf die Gebühr mit storniert.
Widerruf nach dem Versand. Schickt der Kunde die vollen Getränke zurück, kommen die Verpackungen mit zurück. Die Erstattung des Pfands zusammen mit dem Kaufpreis steht dann im Einklang mit § 46 Abs. 2 Satz 2, weil Sie die Verpackungen zurückerhalten. Erstatten Sie auch hier Produktposition und Pfand-Gebühr gemeinsam.
Rückgabe von Leergut. Das passiert außerhalb der ursprünglichen Bestellung. Wenn Ihr Lieferdienst bei der nächsten Lieferung leere Dosen mitnimmt, ist die Auszahlung eine Pfanderstattung, keine Rückerstattung der alten Bestellung. Buchen Sie sie getrennt, zum Beispiel als negative Position in der nächsten Bestellung oder als eigene Gutschrift. Sonst schrumpfen Ihre Umsatzzahlen jedes Mal, wenn ein Kunde Leergut abgibt. Steuerlich ist es nach Abschnitt 10.1 Abs. 8 UStAE eine Entgeltminderung, die Sie nach Satz 4 sachgerecht auf die Steuersätze verteilen.
Wie Kunden die Rücksendung voller Ware anstoßen, regelt Ihr Widerrufsprozess, den ich im Beitrag zur Widerrufsfunktion nach § 356a BGB beschreibe.
Was steht auf der Rechnung?
Die Pfand-Gebühr wird zur Rechnungsposition. Die Arbeit liegt in der Bezeichnung und in der Steuer:
- Deutschland: Das Pfand erscheint mit Umsatzsteuer zum Satz des Getränks, zum Beispiel “Pfand (19 %)”. Wenn das Finanzamt Ihnen das Saldo-Verfahren nach Abschnitt 10.1 Abs. 8 Satz 5 Nr. 1 UStAE genehmigt hat, muss aus der Rechnung klar hervorgehen, dass auf das Pfand keine Umsatzsteuer berechnet wurde. Dann ist die Gebühr im Shop nicht steuerpflichtig, und der Code muss angepasst werden.
- Österreich: Das Pfand steht als eigene Position ohne Umsatzsteuer. Die Musterrechnung von EWP zeigt es mit 0 Prozent und dem Zusatz “nicht steuerbar”.
Testen Sie vor dem Start eine Bestellung je Lieferland und prüfen Sie das PDF Ihres Rechnungs-Plugins und die Daten, die Ihre Buchhaltung bekommt. Manche Rechnungs-Plugins fassen Gebühren zu einer Zeile zusammen oder zeigen den Steuersatz von Gebühren nicht an.
Welches Pfand gilt bei Lieferungen über die Grenze?
Grundsätzlich das des Ziellandes, weil die Systeme national sind und die Verpackungen für ein System gekennzeichnet werden. Die Rechtstexte geben zwei Anhaltspunkte.
§ 46 Abs. 4 Nr. 1 VerpackDG nimmt Verpackungen aus, die nachweislich nicht an Endabnehmer in Deutschland gehen. Das ist die Regel für Exporte. Ein deutscher Shop, der nach Österreich liefert, berechnet für diese Bestellung kein deutsches Pfand, wenn er nachweisen kann, dass die Ware nicht an Endabnehmer in Deutschland geht. Welche Nachweise dafür genügen, legt § 46 nicht fest.
Österreich holt ausländische Versandhändler über § 2 Abs. 2 der Pfandverordnung ausdrücklich herein, wie oben beschrieben.
Die Schweiz behandle ich hier nicht, weil ich keine Schweizer Primärquelle zum Pfand lesen konnte.
Die Währungsprüfung im Code hat einen praktischen Grund. Ein Shop, der in Schweizer Franken verkauft, kann kein in Euro festgelegtes Pfand berechnen, und ein umgerechneter Betrag entspräche nicht dem Gesetz. Wenn Sie mit einem Mehrwährungs-Plugin arbeiten, prüfen Sie, welche Währung get_woocommerce_currency() im Moment der Gebührenberechnung zurückgibt.
Welche Fehler treten bei Pfand in WooCommerce am häufigsten auf?
| Symptom | Ursache | Abhilfe |
|---|---|---|
| Pfand je Dose 0,30 Euro statt 0,25 Euro | Gebühr als Netto mit 19 Prozent Aufschlag | Nettoanteil mit WC_Tax::calc_inclusive_tax() herausrechnen |
| Pfand fehlt bei einer Variante | Meta-Felder nur am Elternprodukt, Code liest nur die Variante | Rückgriff auf das Elternprodukt wie in wpp_drs_meta() |
| Sechserpack trägt nur 0,25 Euro | Zahl der Behälter je Einheit fehlt | _drs_units auf 6 setzen |
| Pfand wird mitversteuert, obwohl es im Preis steckt | Pfand in den Produktpreis eingerechnet | Pfand nur als Gebühr, Produktpreis ohne Pfand |
| Bestellung nach Österreich zeigt 19 Prozent auf das Pfand | ein System für alle Länder | Pfandsystem nach Lieferland wählen |
| kein Pfand im Warenkorb vor Eingabe der Adresse | Lieferland noch leer | Rückfall auf das Land des Shop-Standorts |
| Hinweis fehlt auf der Produktseite | Block-Theme führt den klassischen Hook nicht aus | Hinweis per render_block am Preisblock ausgeben |
| Pfand kleiner als der Preis gedruckt | Theme-CSS | Klasse drs-deposit auf Preisgröße setzen (§ 47 Abs. 4) |
| Rechnung zeigt Pfand ohne Steuersatz | Rechnungs-Plugin fasst Gebühren zusammen | Plugin-Einstellung prüfen, Test-PDF je Land |
| Umsatz sinkt bei jeder Leergutrückgabe | Pfanderstattung als Rückerstattung der Bestellung gebucht | Leergut getrennt als Pfanderstattung buchen |
Gibt es ein Plugin für das Pfand?
Ja, mehrere. Der Code oben ist sinnvoll, wenn Sie die Regeln vollständig selbst steuern wollen. Zwei der Plugins, die ich entwickle, decken Pfand ab.

Screenshot: die Pfandfelder, die Botelix im WooCommerce-Produkteditor anlegt.
Botelix ist ein kostenloses Pfand-Plugin für WooCommerce mit fertigen Pfandsystemen für Deutschland, Österreich und vierzehn weitere Länder, vier Verpackungsarten mit eigenem Betrag je System und der Auswahl des Systems nach Lieferland, wenn dessen Währung zur Shop-Währung passt. Laut seiner eigenen Seite übernimmt es keine Erstattung von Pfand und keine Erfassung von zurückgegebenem Leergut. Aktualisierung, . Botelix zeigt das Pfand jetzt neben dem Preis in Shop-, Kategorie-, Such- und Produktlisten sowie bei verwandten Produkten, im klassischen und im Block-Layout. Im deutschen System steht EINWEG oder MEHRWEG im Preis (§ 47 VerpackDG). In Warenkorb und Kasse erscheint das Pfand pro Zeile, wird an der Bestellposition gespeichert und auf der Bestellseite, im Backend und in E-Mails angezeigt. Je Produkt und Variation lässt sich ein eigenes Pfand pro Gebinde hinterlegen, das den Satz aus den Systemeinstellungen ersetzt. Neu sind zehn nationale Systeme mit Rechtsakt, Sätzen je Verpackungsart und Umsatzsteuerbehandlung, gewählt nach Lieferland, darunter die Niederlande und Dänemark als Nachbarländer: Dänemark, Schweden, Finnland, Estland, Lettland, die Niederlande, Irland, Kroatien, Malta und Portugal. Hängt der Betrag von der Gebindegröße ab, enthalten die Einstellungen die gängige Größe, und die Bezeichnung des Satzes nennt die übrigen Beträge, die Sie am Produkt eintragen. Das Plugin gibt es auch im Verzeichnis von WordPress.org.
Shoplex besteuert das Pfand seit Version 1.6.0 zum Steuersatz des zugehörigen Produkts, mit einer Gebühr je Satz, und der Filter shoplex_deposit_taxable stellt es auf eine Gebühr ohne Steuer um.
Welches Plugin Sie auch wählen, prüfen Sie es gegen die Punkte aus diesem Beitrag: den Bruttobetrag in Deutschland, die Steuerfreiheit in Österreich, den Hinweis in Preisgröße und die Währung des Lieferlands.
Was sollte ich vor dem Start prüfen?
- Alte Verweise auf § 31 VerpackG in AGB, Produkttexten und Plugin-Einstellungen durch § 46 VerpackDG ersetzen.
- Klären, ob Sie für einzelne Getränke Erstinverkehrbringer sind (Eigenabfüllung, Import), und dann LUCID-Registrierung und DPG-Teilnahme prüfen.
- Für jedes Getränk Verpackungsart, Füllvolumen und Behälter je Einheit hinterlegen, auch bei Variationen.
- Inhaltsausnahmen nur bei Glas und Karton anwenden, nie bei PET-Flaschen und Dosen.
- Testbestellung: eine Dose nach Deutschland ergibt genau 0,25 Euro Pfand, nicht 0,30 Euro.
- Testbestellung nach Österreich: Pfand ohne Umsatzsteuer, Registrierung bei der zentralen Stelle erledigt.
- EINWEG und MEHRWEG auf Produkt- und Kategorieseiten in Preisgröße anzeigen.
- Eine Rückgabemöglichkeit in zumutbarer Entfernung festlegen und dokumentieren.
- Eine Teststornierung durchführen: Gebühr und Steuer gehen mit zurück.
- Leergutrückgaben getrennt von Bestellerstattungen buchen.
- Rechnungs-PDF und Buchhaltungsexport je Lieferland prüfen.
Wann lohnt sich ein Entwickler?
Die Gebühr selbst ist ein kurzer Code. Der Aufwand steckt in den Produktdaten, den Steuerklassen, der Rechnungsanbindung und der Anzeige in Preisgröße, und all das muss für jedes Lieferland zusammenpassen. Lassen Sie die steuerliche Behandlung für Ihre Lieferkette von Ihrer Steuerberatung bestätigen, weil die zitierten Verwaltungsanweisungen den allgemeinen Fall beschreiben. Wenn Sie das Pfand lieber auf einer Staging-Umgebung einrichten und testen lassen wollen, mit Erstattungen und Rechnungen, übernehme ich das als WooCommerce-Entwickler.
Weiterlesen: die Omnibus-Regel zum niedrigsten Preis der letzten 30 Tage in WooCommerce und der Widerrufsbutton nach § 356a BGB, der bestimmt, wie Kunden die Bestellung widerrufen, zu der das Pfand gehört.







