EU Withdrawal Button & Widerruf Form for WooCommerce
From 19 June 2026, every EU store must let customers withdraw as easily as they bought. Most WooCommerce stores still cannot.
Digital downloads and the consent waiver
Digital content needs special handling. By default the right of withdrawal still applies to downloads; it is lost only if the customer expressly consents to immediate delivery and acknowledges that they thereby lose the right, and the store confirms that consent on a durable medium. This is the rule in section 356(5) BGB and Article 16(m) of the Consumer Rights Directive. The plugin captures that consent properly instead of simply stripping the right from every digital product.
Consent at checkout
When the cart contains digital items (virtual and downloadable), the plugin shows a consent checkbox at checkout. The customer agrees to immediate access and acknowledges the loss of the withdrawal right for those items. This works in both checkout types:
- Block checkout uses WooCommerce’s Additional Checkout Fields API, so the checkbox renders in the React checkout with no custom code.
- Classic checkout renders and validates the same checkbox with standard WooCommerce hooks.
The recorded consent and its timestamp are saved on the order, and a confirmation line is added to the WooCommerce order email, satisfying the durable-medium requirement.
How eligibility is decided
Eligibility is waiver-aware. A digital item is treated as non-withdrawable only when a valid waiver was recorded for its order. Without a waiver, for example on an older order or when the feature is off, the same digital item remains withdrawable, because the right was never lawfully lost. Physical items in the same order are unaffected.
Settings
- Capture consent for digital downloads at checkout turns the waiver on (recommended, on by default).
- Consent text lets you adjust the wording shown to customers.
- Also capture consent for services extends the same pattern to fully-performed services (section 356(4) BGB). It is off by default, since WooCommerce does not natively model a performed service.
For genuinely exempt goods such as custom-made or sealed hygiene items, use the product, category, and type exclusion options instead; those are a separate, merchant-configured concern from the digital waiver.