Description
One Click Return for WooCommerce is a compliance-first plugin that implements the digital right of withdrawal required by EU Directive 2023/2673 (Art. 11a) directly in your WooCommerce store.
Built and maintained by MITS – a software house from Lublin, Poland, specialising in WooCommerce, web applications and e-commerce solutions.
Unlike generic refund plugins, this plugin was built from the ground up for the directive – every feature maps directly to a legal requirement.
How it works
- Customer clicks « Return order » – from their account, the footer link, or directly from the order confirmation email.
- A 2-step form opens: Step 1 identifies the order (email + order number, no login required). Step 2 selects items and confirms.
- The customer receives an instant confirmation email (required by Art. 11a as a « durable medium »).
- Store staff receives a notification and manages the withdrawal from WooCommerce admin.
Key features
Compliance out of the box
- ✅ Compliant with EU Directive 2023/2673 / Art. 11a
- ✅ Persistent footer link on every page (Art. 11a requirement)
- ✅ Confirmation email as durable medium (Art. 2(10) of Directive 2011/83/EU)
- ✅ Magic link – customers access their form without logging in
- ✅ Statutory exclusions (Art. 38 of the Consumer Rights Act) – mark product categories that are exempt
- ✅ Configurable withdrawal period (default: 14 days as required by law)
- ✅ GDPR: built-in data exporter and eraser
WooCommerce integration
- 2-step withdrawal form via shortcode
[mits_withdrawal_form] - « Withdraw » button in My Account Orders
- Link in WooCommerce order confirmation and delivery emails
- Admin cockpit: overview dashboard, submissions list, settings – all in one place
- Custom post type for withdrawals with 5 statuses: Pending, Confirmed, Goods Received, Refunded, Cancelled
- Status change directly from the withdrawal edit screen
- HPOS (High-Performance Order Storage) compatible
Developer-friendly
- Clean PHP 8.1+ codebase with strict types
- Hooks and filters at every step (
mits_withdrawal_submitted,mits_withdrawal_is_product_excluded, …) - Composer autoloader, PSR-4 namespace
MITS\Withdrawal
Requirements
- WordPress 6.4+
- WooCommerce 10.5+
- PHP 8.1+
Languages
- English
- Polish (
pl_PL)
Support
Documentation, Pro add-on, and support – mits.pl.
Found a bug? Open an issue on the support forum.
Captures d’écrans


Installation
- Upload the
mits-withdrawalfolder to/wp-content/plugins/. - Activate the plugin through Plugins Installed Plugins.
- Go to WooCommerce Odstąpienia (or Returns) in the admin sidebar.
- Create a page for the form (e.g. « Withdrawal form ») and select it in settings – the shortcode is inserted automatically.
- Fill in the return address and notification email.
That’s it. The footer link, My Account button, and order email link are enabled by default.
FAQ
-
Is this plugin compliant with EU Directive 2023/2673?
-
Yes. The plugin was built specifically for Art. 11a of Directive 2023/2673, which requires a permanent, easily accessible digital function for exercising the right of withdrawal. The footer link, 2-step form, and instant confirmation email all map directly to the directive’s requirements.
-
Do customers need an account to submit a withdrawal?
-
No. Step 1 of the form verifies the customer by email + order number (magic link). No login required.
-
Can I customise the email confirmation?
-
Yes. All three plugin emails (withdrawal confirmation, store notification, form link) are registered as native WooCommerce emails, so you edit them in WooCommerce Settings Emails – subject, heading, intro text, additional content, recipient and HTML/plain format, with a live preview and test send. The plugin cockpit has an « Emails » tab that shows the current state of each email and links straight to its settings screen.
Placeholders available in subjects, headings and texts:
{order_number},{order_date},{customer_name},{site_title}.For full control over the layout, copy a template to your theme:
yourtheme/woocommerce/emails/mits-withdrawal-confirmation.phpyourtheme/woocommerce/emails/mits-withdrawal-admin-new.phpyourtheme/woocommerce/emails/mits-withdrawal-link.php
Plain text variants live in the
emails/plain/subfolder. -
Does it work with WooCommerce HPOS?
-
Yes, HPOS (High-Performance Order Storage / custom order tables) compatibility is declared in the plugin.
-
Where are withdrawals stored?
-
As a custom post type (
mits_withdrawal) with custom statuses. All customer data is stored as post meta and is included in WordPress’s personal data exporter/eraser (GDPR tools). -
How do I process a withdrawal (accept or reject it)?
-
Open the withdrawal from WooCommerce Returns, change the status to Confirmed or Cancelled using the Actions metabox, and save.
-
Does it integrate with payment gateways for automatic refunds?
-
Yes. When a withdrawal reaches the Refunded status the plugin fires
mits_withdrawal_pro_trigger_refund($order, $withdrawal_id). Hook this action in your theme or a small companion plugin to call your gateway’s refund API (PayU, Przelewy24, etc.).
Avis
Il n’y a aucun avis pour cette extension.
Contributeurs/contributrices & développeurs/développeuses
« MITS One Click Return – EU 2023/2673 » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.
Contributeurs“MITS One Click Return – EU 2023/2673” a été traduit dans 1 locale. Remerciez l’équipe de traduction pour ses contributions.
Traduisez « MITS One Click Return – EU 2023/2673 » dans votre langue.
Le développement vous intéresse ?
Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.
Journal des modifications
0.5.2
- Added: return acceptance email – when you confirm a withdrawal (status Confirmed), the customer receives a message with your return address and a 14-day deadline to send the items back. Registered as a native WooCommerce email, editable in WooCommerce Settings Emails.
- Added: status change email – customers receive an automatic notification when you change the withdrawal status to Goods received or Refunded.
- Added: dark mode toggle in the plugin cockpit. Default is native WordPress admin look; click the ☾/☀ icon to switch to dark theme. Preference saved in browser.
- Added: info on the withdrawal edit screen that changing status will send an email to the customer.
- Added: Polish translations now working across the entire interface (cockpit, Emails tab, footer). Strings were previously untranslated despite .mo files being present.
- Added: more formal, legally compliant Polish email content for the withdrawal confirmation (14-day return deadline, liability for diminished value, etc.).
- Changed: cockpit is now for settings only – submissions list moved to the native WordPress « Returns » menu item.
- Changed: MITS branding moved to the footer (logo loaded from mits.pl, auto-inverts in dark mode).
- Changed: cockpit inherits native WordPress admin fonts and sizes.
- Changed: wider Status column on the submissions list, order column narrowed.
- Fixed: textdomain loading so all translations work correctly.
- Fixed: removed broken « Rate on WordPress.org » link from the footer.
0.5.1
- Fixed: default email texts (subject, heading, intro text, return conditions, button label, store recipient) are now pre-filled in the WooCommerce email settings fields instead of showing only as greyed-out placeholders.
0.5.0
- Added: withdrawal emails are now native WooCommerce emails – edit subject, heading, intro text, additional content, recipient and HTML/plain format in WooCommerce Settings Emails, with preview and test send.
- Added: « Emails » tab in the plugin cockpit showing the state of each email with a direct link to its settings.
- Added: placeholders
{order_number},{order_date},{customer_name},{site_title}in email subjects, headings and texts. - Added: plain text versions of all three emails.
- Changed: emails now use the WooCommerce email template (store logo, colours, footer) instead of their own layout.
- Changed: theme template overrides moved to
yourtheme/woocommerce/emails/mits-withdrawal-*.php. Overrides inyourtheme/mits-withdrawal/emails/must be moved.
0.4.2
- Added: « One Click Return » menu item in WooCommerce sidebar is now highlighted in orange for quick access.
0.4.1
- Fixed: admin menu label renamed to « One Click Return » to match the plugin name on WordPress.org.
- Fixed: colour preview in settings now renders on a white background so form elements are readable.
- Fixed: WP colour picker button styled to fit the dark admin theme.
0.4.0
- Added: Conditional display – restrict the withdrawal button to selected order statuses or hide it for chosen payment gateways.
- Added: CSV export of all withdrawal submissions (Admin panel Submissions).
- Added: Automatic refund hook (
mits_withdrawal_pro_trigger_refund) – fires when a withdrawal reaches the Refunded status, ready for PayU / Przelewy24 gateway integration.
0.3.2
- Changed: English is now the default plugin language (all source strings in EN).
- Added: Polish (pl_PL) translation for all strings.
- Fixed: Remaining untranslated strings in email templates.
0.3.1
- Fixed: Mismatched text domain on the missing-dependency admin notice.
- Fixed: Unsanitized $_SERVER values used to resolve client IP / user agent.
- Security/i18n review follow-up.
0.3.0
- Added: Admin cockpit (dashboard + submissions list + settings, dark theme).
- Added: Accent colour picker for the form.
- Added: Configurable refund period.
- Added: Custom form texts (title, lead, button label, email subject, footer link label).
- Added: Footer link toggle in settings.
- Improved: Magic link resender.
- Improved: HPOS compatibility declaration.
0.2.0
- Added: My Account « Withdrawals » tab.
- Added: Email link injector in WooCommerce order emails.
- Added: GDPR data exporter and eraser.
- Added: Rate limiter on form submissions.
0.1.0
- Initial release.
- 2-step withdrawal form with magic link.
- Confirmation email to customer.
- Shop notification email.
- Custom post type with 5 statuses.
- Product category exclusions (Art. 38).