Description
BKM EU Withdrawal (EU Withdraw from Contract) gives your customers a simple, legally compliant way to exercise their EU right of withdrawal – and gives you a complete back-office to manage every request.
Whether you run a service, a digital product, or a physical goods store, this plugin handles the entire withdrawal process from submission to resolution.
Form Features
- Two-step form – customer fills details on step 1, reviews everything on step 2 before confirming
- Fields: Full Name, Email Address, Phone Number, Address, Postal Code, Order Number, Product Details, Withdrawal Reason
- File attachment support – customers can upload supporting documents
- Each field can be set as required or optional from the admin settings
- Fully customisable appearance – colours, button styles, border radius, and label size.
Admin Panel Features
- All Requests – view and manage all withdrawal submissions in one place
- Status management – update request status with full history log
- Internal notes – add private notes to any request (not visible to customer)
- Auto-generated reference number for every request (format: WD-2026-00001)
- Filter requests by status, search by name, email, order number, or reference
Email Notifications
- Customer receives a confirmation email on submission
- Admin receives a notification email for every new request
- Customer receives a status update email whenever their request status changes
Export Tools
- Export requests to CSV
- Export requests to Excel
- Export respects current filters – export only what you see
- Bulk export by selecting specific records
Shortcode
Place the withdrawal form anywhere using:
[bkmeuwi_withdrawal_form]
Screenshots








Installation
- Upload the plugin zip via Plugins > Add New > Upload Plugin
- Activate the plugin through the Plugins menu
- Go to EU Withdrawals > Plugin Settings to configure the form
- Add the shortcode
[bkmeuwi_withdrawal_form]to any page where you want the form to appear - Check EU Withdrawals > Setup Guide for step-by-step instructions
FAQ
-
Does this plugin require WooCommerce?
-
No. This plugin works on any WordPress site regardless of which eCommerce solution you use.
-
Which EU directive does this comply with?
-
EU Directive 2011/83/EC on consumer rights, which grants customers a 14-day right of withdrawal from online purchases.
-
Can I customise the form appearance?
-
Yes. From Plugin Settings you can change colours, button styles, border radius, and label font size.
-
Can I make certain fields optional?
-
Yes. Phone Number, Address, Postal Code, Product Details, Withdrawal Reason, and Attachments can each be toggled between required and optional.
-
Where are withdrawal requests stored?
-
All requests are stored securely in your WordPress database. You can view, manage, and export them from the EU Withdrawals admin menu.
-
Is the plugin translation-ready?
-
Yes. The plugin is fully internationalised and ready for translation using the text domain bkmeuwi-withdraw-from-contract.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“BKM EU Withdraw From Contract” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “BKM EU Withdraw From Contract” 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.2
- Validated the Form Width design setting against a strict allow-list of CSS dimension values to prevent CSS injection.
- Moved remaining admin-area inline style and script blocks into properly enqueued CSS/JS files.
- Rewrote the listing and export database queries to use fully literal, fixed-placeholder $wpdb->prepare() calls (including a fixed 50-slot IN() list for bulk export), so every query is statically verifiable by Plugin Check.
- Shortened the readme short description to meet the 150-character limit.
1.0.1
- Fixed WordPress.org review issues: removed arbitrary CSS insertion, implemented wp_enqueue for assets, updated naming prefixes, removed direct core file includes.
- Rebranded plugin to better reflect EU Directive compliance.
1.0.0
- Initial release.
