Since 19 June 2026, Article 11a of the Consumer Rights Directive requires an online
withdrawal function that is prominently displayed, easy to find and continuously
available throughout the withdrawal period. Withdrawing must not be harder than
buying was.
This plugin adds that function to your store, records every declaration as dated
evidence with its own reference number, and gives you a back office to work
through the requests.
A declaration is accepted even when no order can be matched. That is deliberate:
the consumer’s right does not depend on your shop finding their record.
The plugin ships with complete Dutch, German, French, Spanish and Italian
translations alongside English as the source language, using the legal
terminology each country actually uses rather than a literal rendering of the
English.
There are two language settings, not one: what your customers see and what your
own back office shows. A Dutch shop run from an English admin sends Dutch
customers Dutch notices, which is impossible when a plugin simply follows the
site language.
Every string is translation-ready and the .pot file is included, so any further
locale can be added through translate.wordpress.org.
WooCommerce is not required, but without it a declaration cannot be matched to an
order. With it you get order matching on number plus e-mail address, order lines
with already-refunded quantities deducted, delivery-date deadlines and the order
screen panel.
Compatible with High-Performance Order Storage and with legacy order storage: all
order access goes through the WooCommerce CRUD layer, so no query touches the
posts tables directly.
Filters and actions throughout: drs_wd_registered_features, drs_wd_settings_schema,
drs_wd_status_transitions, drs_wd_resolve_order_number, drs_wd_delivery_date,
drs_wd_client_ip, drs_wd_reason_options, drs_wd_evidence_number, drs_wd_mail,
drs_wd_declaration_created, drs_wd_status_changed, drs_wd_request_anonymised.
Templates can be overridden from your theme by copying them to
yourtheme/eu-withdrawal/.
No Composer dependencies, no bundled libraries, PHP 7.4 baseline.