This is an info Alert.
x402 Logo
  • Product
    • Become Agent-Ready
      • Merchants
        Agentic Commerce — list your store across ChatGPT, Gemini, Claude & Perplexity
      • Publishers
        Monetize your content when AI agents read, cite, or train on it
      • SaaS Companies
        Treat AI agents as first-class customers with agent-priced checkout
    • Monetize
      • Monetize MCP Server
        Charge per call on any MCP server in 2 minutes
      • Monetize AI Agents
        Turn n8n, Zapier, Activepieces workflows into revenue
      • Agent Feed
        Pay-per-query access to licensed publisher content for your agents
  • Resources
    • xpay Ecosystem
      • xpay✦ Tools
        1,000+ pay-per-use tools for your AI agents
      • Agent-Ready SaaS Index
        25,481 SaaS scored on agent-buyability
      • SaaS Pricing Database
        Pricing pages indexed across 1,000+ categories
      • Shopify Apps Directory
        Every Shopify app, with its full review history
      • WooCommerce Plugins Directory
        Every WooCommerce plugin, scored on how well it is maintained
      • GitHub
        Open source repositories
    • Agent Building
      • Agent Frameworks
        AI frameworks for building multi-agent systems
      • x402 Integration
        AI frameworks with x402 payment integration
      • Networks
        Blockchain networks supporting x402
    • Company
      • About xpay✦
        Our mission, products, and protocols
      • Blog
        Latest insights and updates
      • Docs
        Complete xpay documentation
  • Pricing
  • Blog
  • Docs
Get Started
  1. xpay✦ Commerce

  2. Directory

  3. WooCommerce plugins

  4. WebToffee EU Order Withdrawal Button for WooCommerce

WebToffee EU Order Withdrawal Button for WooCommerce

Add a legally compliant EU withdrawal button to your WooCommerce store. It allows customers to exercise their 14-day right of withdrawal online.

1K+ active installs
5.0
(9 ratings)
Free on WordPress.org
View on WordPress.orgSupport forum
Will this break my store?

What the WordPress.org registry says about keeping WebToffee EU Order Withdrawal Button for WooCommerce running.

WordPress compatibility
Tested to 7.0.2
Tested against the WordPress branch in use today.
Last updated
10 days ago
Requires PHP
7.4
Your host must be running at least this version.
Requires WordPress
6.0
Requires other plugins
woocommerce
These must be installed and active first.
Support responsiveness
92% of 26 recent threads resolved
From the plugin's WordPress.org support forum.
Contributors
1
A single maintainer. Worth knowing if the plugin is load-bearing for your store.

1K+ active installsWordPress.org reports installs in bands, not exact counts.
Maintenance & trust

Scored on how WebToffee EU Order Withdrawal Button for WooCommerce is looked after — not on how many stores run it.

97

out of 100
Well maintainedSome ratings or support history.

Maintenance
35 / 35
Updated 9 days ago.
WordPress compatibility
20 / 20
Tested to WP 7.0.2 (current).
Support responsiveness
20 / 20
92% of 26 threads resolved.
Merchant satisfaction
12 / 15
5.0/5 across 9 rating(s).
Listing transparency
10 / 10
Provides: screenshots, description, homepage
Measured 2026-08-01 from the WordPress.org plugin registry.
Ratings

5.0

9 ratings
5★9
4★0
3★0
2★0
1★0
Every rating WordPress.org holds for this plugin, not a sample. Written reviews live in the plugin's WordPress.org reviews forum.

From June 19, 2026, EU Directive 2023/2673 requires every online store selling to EU consumers to provide a clear, easily accessible online withdrawal function. Customers must be able to cancel a purchase digitally — just as easily as they placed the order.

EU Withdrawal Button for WooCommerce by WebToffee makes it straightforward to comply. The plugin adds a withdrawal button to the customer’s My Account orders page, a guided withdrawal form, a two-step confirmation flow, and a dedicated admin dashboard to manage all incoming requests.

No coding required. Works right out of the box.

What the plugin does

For your customers:

  • A “Request Withdrawal” button appears directly on the My Account orders list — visible only during the active withdrawal period
  • Customers can select which items to withdraw (full order or individual products)
  • A simple form collects their name, email, and an optional reason
  • A confirmation step prevents accidental submissions (“Are you sure you want to submit this withdrawal request?”)
  • Customers receive an email confirmation once the request is submitted

For you as the store admin:

  • A clean Withdrawals dashboard under WooCommerce > Withdrawals shows all requests at a glance
  • At-a-glance stats: open requests and approvals over the last 30 days
  • Filter requests by status, date range, or search (order # or receipt hash)
  • View full request details — order info, customer email, request type, reason, and a complete activity log
  • Approve or reject requests with one click
  • Configure who receives admin withdrawal notification emails — defaults to your store email, with support for multiple recipients

Key features

  • Withdrawal button on the orders page — visible to customers within the configured withdrawal window
  • Partial withdrawal support — customers can withdraw individual items instead of the entire order
  • Two-step confirmation flow — meets the directive’s requirement to confirm the customer’s intent
  • Dedicated admin dashboard — manage, filter, approve, or reject all withdrawal requests in one place
  • Add footer link — optionally embed a withdrawal link in your store footer to meet visibility requirements
  • Guest withdrawal support — guest users can submit their order number and billing email, which is matched against WooCommerce order history, then confirmed via an email verification step before the request is created
  • Withdrawal button shortcode — use [wt_eu_order_withdrawal] to place a withdrawal button on any page or post.
  • Configurable withdrawal period — set the window to 2, 7, 14, or 30 days (EU standard is 14 days), starting from order created or a chosen WooCommerce order status
  • Product exclusions — exclude by product type, entire categories, or specific individual products
  • Admin notification recipients — choose one or more email addresses to receive new withdrawal request alerts (store email added by default)
  • Customer contact email — set the address shown to customers in rejection emails so they know who to reach out to
  • SHA-256 receipt hash — every withdrawal request gets a unique SHA-256 receipt hash, included in withdrawal notification emails and shown in the request details on the admin dashboard, for easy reference and record-keeping
  • Order status automation — automatically update order status when a request is submitted or approved
  • Reason field — optionally require customers to provide a reason when submitting a request
  • Display scope control — show the withdrawal form globally or limit it to WooCommerce pages only
  • Data management — optionally delete all plugin data on uninstall

Why this matters

Under EU Directive 2023/2673, any business that lets EU consumers sign up for or purchase something online must also let them cancel online — through the same website or app. Simply hiding a withdrawal form in a footer PDF or asking customers to email you is no longer sufficient.

The directive specifically requires:

  • A withdrawal function that is prominently displayed and continuously available during the withdrawal period
  • The function must be clearly labelled (e.g. “Withdraw from contract here” or similar)
  • A two-step confirmation to prevent accidental withdrawals
  • An acknowledgement of receipt sent to the customer on a durable medium (e.g. email)

This plugin implements all of the above.

Getting started

For a complete walkthrough, see the setup guide or watch the video below.

  1. Install and activate the plugin
  2. Go to WooCommerce > Withdrawals > Settings to configure your preferences
  3. Set your withdrawal page, period, and footer link options
  4. Publish the withdrawal page (created automatically as a draft on installation)
  5. Test the flow by placing a test order and using the Request Withdrawal button

Support

For questions or assistance, visit our support page.

Is this plugin required for all WooCommerce stores?

If your store sells to consumers in the EU, yes — from June 19, 2026, EU Directive 2023/2673 requires an accessible online withdrawal function. This applies regardless of where your business is based.

What is the standard withdrawal period?

The EU standard is 14 calendar days from the date of purchase (or from when the customer receives the pre-contractual information, if later). You can configure the withdrawal period in the plugin settings.

Can customers withdraw only part of an order?

Yes. When partial withdrawals are enabled in settings, customers can select individual items from an order to withdraw rather than cancelling the entire order.

Does the plugin work for guest customers?

The withdrawal button on the My Account page is visible to logged-in customers. For guest order support, you can direct customers to the standalone withdrawal page using the footer link or a shortcode.

Where does the withdrawal button appear?

The “Request Withdrawal” button appears on the customer’s My Account > Orders page, next to eligible orders within the active withdrawal window.

How do I add the withdrawal link to my store footer?

Go to WooCommerce > Withdrawals > Settings and enable the Embed footer link option. You can customise the link text (default: “Request Withdrawal”).

Can I exclude certain products from withdrawal?

Yes. Under Exclusions in WooCommerce > Withdrawals > Settings, you can limit withdrawal eligibility in three ways:

  • Product types — exclude Virtual, Downloadable, Grouped, and External/Affiliate products.
  • Product categories — exclude one or more WooCommerce categories so every product in those categories is ineligible.
  • Specific products — search and select individual products to exclude, regardless of type or category.

Does the plugin send a confirmation email to customers?

Yes. Customers receive an email confirmation once their withdrawal request is submitted. This satisfies the directive’s requirement to acknowledge receipt on a durable medium.

Who receives the admin notification when a withdrawal request is submitted?

By default, the store email address receives the admin notification. You can change this under WooCommerce > Withdrawals > Settings > Email notifications. Add multiple recipients as removable chips, remove the default store email if needed, and add custom addresses with the Add button. At least one recipient is required before settings can be saved.

What email address do customers see if their request is rejected?

Set this under WooCommerce > Withdrawals > Settings > Email notifications > Customer contact email. This is the address shown to customers in the rejection email so they know where to follow up. It defaults to your WooCommerce store email but can be changed to any address.

What happens to the data if I uninstall the plugin?

By default, plugin data is retained when you uninstall. If you want all data (settings, withdrawal requests, database tables) removed on uninstall, enable the Delete data on uninstall option in settings. Note: this action is irreversible.

Does this plugin guarantee legal compliance?

The plugin implements the technical requirements of EU Directive 2023/2673 as understood at the time of release. However, it does not constitute legal advice. We recommend consulting a legal professional to ensure your store meets all applicable requirements in your jurisdiction.

Can I show the footer link or withdrawal button only for certain countries?

Yes. Developers can use WordPress filters to control visibility based on the visitor’s country. The plugin resolves the country from the order (when available), the WooCommerce customer session, or IP geolocation.

Available filters:

  • wbte_ewb_customer_country_code — override the detected ISO country code.
  • wbte_ewb_show_footer_withdrawal_link — show or hide the automatic footer withdrawal link.
  • wbte_ewb_show_withdrawal_button_shortcode — show or hide the [wt_eu_order_withdrawal] shortcode output.

Plugin details
Version1.0.8
Last updated2026-07-23 10:17am GMT
Added2026-06-11
Requires WordPress6.0
Tested up to7.0.2
Requires PHP7.4

Tags on WordPress.org
EU compliance
eu directive
EU withdrawal
right of withdrawal
woocommerce
x402 Logo

The agent-readiness stack for the AI shopping era — helping merchants, publishers and SaaS companies get discovered, cited and transacted with by ChatGPT, Perplexity, Claude, Gemini and the custom shopping agents underneath them.

CompanyAgentically Inc. (d/b/a xpay✦)1875 Mission St, Ste 103San Francisco, CA 94103, United Stateslegal@xpay.sh · privacy@xpay.sh
or ask your AI app
Company
About xpayAgency PartnersGitHubDiscordllms.txt
DevelopersDocumentationAPI ReferenceSDKs & LibrariesQuickstart GuideOpenAPI Spec
Stay Updated
Occasional product updates and agent-readiness playbooks from xpay (Agentically Inc.) — typically a couple of emails a month. Double opt-in: we email you a link to confirm before sending anything, and every email has one-click unsubscribe.
Social
  • For Publishers
    • News
    • Finance
    • Dev / Tech
    • Travel
    • View all verticals
  • Agent Feed
    • AI Search Engines
    • RAG Builders
    • Browser Agents
    • Vertical Research
    • Browse full catalog
  • Agent-Ready Index
    • SaaS Pricing Database
    • Agent-Ready SaaS Index
    • Verified band
    • AI & ML
    • Sales & CRM
  • Products
    • Pricing Widget
    • Monetize MCP Server
    • Paywall
    • Smart Proxy
    • Monetize AI Agents
    • xpay x402 Facilitator
  • Agentic Economy
    • Timeline
    • Resources
    • Manifesto
    • Stack
  • Agentic Commerce
    • Get listed
    • ChatGPT Ads
    • How ChatGPT Ads work
    • ChatGPT Ads · Apparel
    • ChatGPT Ads · Health & Beauty
    • xpay Listings · Amazon + Google
    • Pricing
    • Free audit
    • Shopify
    • WooCommerce
    • Apparel & Accessories
    • Health & Beauty
    • Overview
  • Commerce Index
    • Shopify apps directory
    • Agentic Commerce Ready Index
    • Methodology
    • Pet brands · WooCommerce
    • Pet brands · Shopify
  • Marketplace
    • 🛍️ xpay.deals — agentic storefront for deals
  • Protocols
    • Overview
    • x402
    • MPP
    • UCP
    • ACP
    • AP2
    • TAP
    • A2A
  • Agent Frameworks
    • Overview
    • LangChain
    • CrewAI
    • Claude MCP
    • AutoGPT
    • LangChain vs Mastra
    • LangGraph vs Pydantic AI
  • Company
    • About xpay
    • Blog
    • Docs
    • GitHub
  • Free prompts
    • Ecommerce prompts
    • Email marketing prompts
    • Product description prompts
    • Facebook ad prompts
    • Skincare prompts
    • Supplement prompts
    • Wine prompts
    • Electronics prompts

© 2025 Agentically Inc. All rights reserved.
Privacy PolicyTerms of UseAcceptable Use Policy