Description
DevPixels EU Withdrawal Form for WooCommerce adds a complete EU withdrawal request system to your WooCommerce store.
Customers can easily submit withdrawal requests for eligible orders, while store administrators can review, process, and manage requests from a dedicated admin page in the WordPress dashboard.
The plugin supports both registered customers and guest orders, includes configurable legal information, category-based withdrawal rules, automatic withdrawal period validation, customer and administrator email notifications, and full compatibility with WooCommerce High-Performance Order Storage (HPOS).
Features for Customers
- Displays a Withdraw from contract button on eligible WooCommerce orders.
- Button is automatically shown only while the configured withdrawal period is active.
- Supports both registered customers and guest orders.
- Secure guest verification using Order ID, Billing Email, and Withdrawal Token.
- Simple withdrawal request form.
- View withdrawal request status from the My Account order page.
- Withdrawal button in WooCommerce customer order emails.
- Configurable legal information displayed to customers.
- Checkout consent checkbox for digital or restricted product categories.
- Customer email notifications after submitting a withdrawal request.
- Withdrawal request form available anywhere using the included shortcode.
Features for Store Owners
- Dedicated Withdrawals administration menu.
- Centralized Requests page for managing withdrawal requests.
- Approve or reject withdrawal requests.
- View request details and current status.
- Dashboard widget with recent withdrawal statistics.
- Configure the withdrawal period (default 14 days).
- Customize all customer-facing legal notices.
- Configure the Withdrawal Request page.
- Configure the Withdrawal Policy page.
- Configure category-based withdrawal rules.
- Define different customer messages for:
- Standard products
- Digital products
- Article 16 excluded products
- Administrator email notifications for new withdrawal requests.
- Fully compatible with WooCommerce HPOS and Classic Order Storage.
Key Features
- Automatic withdrawal eligibility validation.
- Configurable withdrawal period.
- Category-based withdrawal rules.
- Standard, Digital and Article 16 product support.
- Guest withdrawal verification workflow.
- Withdrawal request shortcode.
- WooCommerce My Account integration.
- WooCommerce customer email integration.
- Customer email notifications.
- Administrator email notifications.
- Dashboard statistics widget.
- Lightweight and optimized implementation.
Settings
The plugin includes a centralized settings page where store owners can:
- Configure the withdrawal period.
- Customize legal information displayed to customers.
- Customize checkout consent messages.
- Select the Withdrawal Request page.
- Select the Withdrawal Policy page.
- Configure customer messages for standard, digital, and excluded products.
- Define withdrawal rules for every WooCommerce product category.
EU Compliance
This plugin provides tools that can assist merchants in managing withdrawal requests under European consumer protection rules.
Included functionality supports common withdrawal workflows such as:
- Withdrawal period validation.
- Category-based withdrawal eligibility.
- Digital product restrictions.
- Customer withdrawal requests.
- Administrative request management.
Store owners remain responsible for ensuring their store complies with all applicable laws and regulations.
Compatibility
- WooCommerce
- WooCommerce High-Performance Order Storage (HPOS)
- Classic WooCommerce Order Storage
- WordPress 6.4+
- PHP 7.4+
Usage
Customer Withdrawal Button
The withdrawal button is automatically displayed on eligible WooCommerce orders when the configured withdrawal conditions are met.
Guest Withdrawal Form
Use the shortcode:
[wcwb_withdrawal]
Guest customers verify their order using:
- Order ID
- Billing Email
- Withdrawal Token – Received on the order detail email
This verification process helps prevent unauthorized withdrawal requests.
Administration
Navigate to:
Withdrawals Requests
From the Requests page you can:
- View all withdrawal requests.
- Review request details.
- Approve requests.
- Reject requests.
- Track request status.
Plugin configuration is available under:
Withdrawals Settings
Screenshots
![[Settings Page] - The main configuration panel where you can define the withdrawal period, legal notices, custom checkout texts, and withdrawal rules for each WooCommerce product category.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-1.png?rev=3600544)
[Settings Page] – The main configuration panel where you can define the withdrawal period, legal notices, custom checkout texts, and withdrawal rules for each WooCommerce product category.
![[Withdrawal Requests Management] - The administrator dashboard for managing all withdrawal requests. It provides a centralized overview of every request, allowing you to quickly review request details, status (Pending, Confirmed, Rejected), and perform management actions for each order.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-2.png?rev=3600544)
[Withdrawal Requests Management] – The administrator dashboard for managing all withdrawal requests. It provides a centralized overview of every request, allowing you to quickly review request details, status (Pending, Confirmed, Rejected), and perform management actions for each order.
![[My Account – Orders List] - The customer's order history page, displaying all orders along with the current withdrawal request status for each order.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-3.png?rev=3600544)
[My Account – Orders List] – The customer’s order history page, displaying all orders along with the current withdrawal request status for each order.
![[Order Details – Withdrawal Button] - The order details page in the customer's account, where the "Withdraw from Contract" button is displayed, providing quick access to initiate the withdrawal process.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-4.png?rev=3600544)
[Order Details – Withdrawal Button] – The order details page in the customer’s account, where the “Withdraw from Contract” button is displayed, providing quick access to initiate the withdrawal process.
![[Withdrawal Request Form] - An intuitive form that allows customers to select the products they wish to withdraw from the contract and optionally provide a reason for their request.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-5.png?rev=3600544)
[Withdrawal Request Form] – An intuitive form that allows customers to select the products they wish to withdraw from the contract and optionally provide a reason for their request.
![[Checkout Consent] - Checkout page integration that requires customers to acknowledge the withdrawal policy, ensuring compliance with Article 16 of Directive 2011/83/EU.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-6.png?rev=3600544)
[Checkout Consent] – Checkout page integration that requires customers to acknowledge the withdrawal policy, ensuring compliance with Article 16 of Directive 2011/83/EU.
![[Order Received – Confirmation] - The order confirmation page informing customers about their right of withdrawal and providing direct access to the withdrawal request form.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-7.png?rev=3600544)
[Order Received – Confirmation] – The order confirmation page informing customers about their right of withdrawal and providing direct access to the withdrawal request form.
![[Right of Withdrawal Details] - A dedicated section within the customer's order details email displaying the unique withdrawal reference code (token) required to identify and process the withdrawal request.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-8.png?rev=3600544)
[Right of Withdrawal Details] – A dedicated section within the customer’s order details email displaying the unique withdrawal reference code (token) required to identify and process the withdrawal request.
![[Admin Edit Order View] - The WooCommerce order edit screen, where administrators can view the withdrawal request status associated with a customer's order.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-9.png?rev=3600544)
[Admin Edit Order View] – The WooCommerce order edit screen, where administrators can view the withdrawal request status associated with a customer’s order.
![[Standalone Withdrawal Form] - A standalone withdrawal request form embedded via shortcode on a dedicated page, allowing customers to verify the eligibility of an order using the order number and withdrawal token.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-10.png?rev=3600544)
[Standalone Withdrawal Form] – A standalone withdrawal request form embedded via shortcode on a dedicated page, allowing customers to verify the eligibility of an order using the order number and withdrawal token.
![[Admin Dashboard Widget] - An informative WordPress Dashboard widget providing a quick overview of withdrawal request statuses (Pending, Confirmed, Rejected), with direct access to request management.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-11.png?rev=3600544)
[Admin Dashboard Widget] – An informative WordPress Dashboard widget providing a quick overview of withdrawal request statuses (Pending, Confirmed, Rejected), with direct access to request management.
![[Product Selection Interface] - The detailed product selection interface within the withdrawal request form, allowing customers to choose specific products (when applicable) for a partial withdrawal, while clearly displaying information about their legal withdrawal rights.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-12.png?rev=3600544)
[Product Selection Interface] – The detailed product selection interface within the withdrawal request form, allowing customers to choose specific products (when applicable) for a partial withdrawal, while clearly displaying information about their legal withdrawal rights.
![[Email Notification – Request Received] - An automated email template sent to customers confirming that their withdrawal request has been received, including the request details and the next steps in the review process.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-13.png?rev=3600544)
[Email Notification – Request Received] – An automated email template sent to customers confirming that their withdrawal request has been received, including the request details and the next steps in the review process.
![[Email Notification – Request Approved] - An automated email template notifying customers that their withdrawal request has been approved, including any specific instructions provided by the store administrator.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-14.png?rev=3600544)
[Email Notification – Request Approved] – An automated email template notifying customers that their withdrawal request has been approved, including any specific instructions provided by the store administrator.
![[Email Notification – Request Rejected] - An automated email template sent when a withdrawal request has been rejected, providing the official reason for the decision along with a direct link to the store's Refund and Returns Policy.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-15.png?rev=3600544)
[Email Notification – Request Rejected] – An automated email template sent when a withdrawal request has been rejected, providing the official reason for the decision along with a direct link to the store’s Refund and Returns Policy.
![[Withdrawal Request Approval] - The approval interface displayed when confirming a customer's withdrawal request. Administrators can add a personalized processing note, which is automatically included in the approval email, before finalizing the request.](https://ps.w.org/devpixels-eu-withdrawal-form/assets/screenshot-16.png?rev=3600546)
[Withdrawal Request Approval] – The approval interface displayed when confirming a customer’s withdrawal request. Administrators can add a personalized processing note, which is automatically included in the approval email, before finalizing the request.
Installation
- Upload the plugin files to the
/wp-content/plugins/directory or install the plugin through the WordPress Plugins screen. - Activate the plugin.
- Open Withdrawals Settings.
- Configure your withdrawal settings.
- Create a page containing the
[wcwb_withdrawal]shortcode for guest withdrawals if required.
FAQ
-
Does this plugin support WooCommerce HPOS?
-
Yes. The plugin fully supports WooCommerce High-Performance Order Storage (HPOS).
-
Can guest customers submit withdrawal requests?
-
Yes. Guests can verify their order using the Order ID, Billing Email, and Withdrawal Token.
-
Can I configure which products are eligible for withdrawal?
-
Yes. Withdrawal eligibility can be configured independently for each WooCommerce product category.
-
Are digital products supported?
-
Yes. Digital products can have separate withdrawal rules and customer messages.
-
Does the plugin send email notifications?
-
Yes. Customers receive confirmation emails after submitting a withdrawal request, while administrators receive notifications about new withdrawal requests.
-
Does this plugin process WooCommerce refunds?
-
No. Withdrawal requests are managed independently from WooCommerce refunds.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“DevPixels EU Withdrawal Form for WooCommerce” is open source software. The following people have contributed to this plugin.
Contributors“DevPixels EU Withdrawal Form for WooCommerce” has been translated into 1 locale. Thank you to the translators for their contributions.
Translate “DevPixels EU Withdrawal Form for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.0
- Initial public release.
- Withdrawal request management.
- Guest withdrawal verification.
- Category-based withdrawal rules.
- Configurable legal notices.
- Withdrawal settings page.
- WooCommerce My Account integration.
- WooCommerce customer email integration.
- Customer email notifications.
- Administrator email notifications.
- Dashboard statistics widget.
- WooCommerce HPOS compatibility.