
EU Withdrawal Button: Shopify and WooCommerce Compliance Guide
The EU withdrawal button becomes mandatory on 19 June 2026 under Directive 2023/2673. Here is who must comply, what the button has to do, and how to add it on Shopify and WooCommerce.
Online stores that sell to EU consumers face a hard deadline. From 19 June 2026, the EU withdrawal button is mandatory for eligible B2C distance contracts concluded through a website or app. The rule comes from Directive (EU) 2023/2673, and it changes how shoppers exercise their right to withdraw from a purchase during the statutory cooling-off period. As the deadline approaches, store owners are asking the same two questions: does this apply to me, and how do I add it?
This guide answers both. It covers what the withdrawal button is, who has to provide one (including UK and other non-EU sellers), what makes a button compliant, and the practical steps to add it on WooCommerce and Shopify. It sticks to ecommerce sales of goods, services, and digital content, not the separate regime for financial services.
What the EU withdrawal button is, and what changed
The withdrawal button is an electronic function that lets a consumer exercise their statutory right to withdraw from an eligible online purchase as easily as they entered it. It was added by Directive (EU) 2023/2673, which inserts a new Article 11a into the Consumer Rights Directive (2011/83/EU), the same law behind the 14-day right of withdrawal that EU shoppers already have. Taylor Wessing frames it as a new layer of legal and practical work for online sellers, not a cosmetic tweak. It also sits outside privacy law. This is a consumer-rights rule under the Consumer Rights Directive, separate from GDPR and cookie consent, so it belongs with your checkout and storefront, not your privacy banner.
The principle behind it is plain. Withdrawing from a contract has to be no harder than entering it. If a shopper can buy in two clicks, the law expects withdrawal to be roughly that easy. Many stores today route these requests through email forms, support tickets, or an account login, and that friction is what the rule targets. The directive treats a hard-to-find withdrawal path as a barrier to a right shoppers already hold.
Two dates matter. EU member states had to write the rule into national law by 19 December 2025, and the obligations apply from 19 June 2026, per the EUR-Lex summary of the directive. After that date, a missing or non-compliant button is a live compliance gap, not a task for later.
Does the EU withdrawal button apply to your store?
Location does not get you out of this. Shopify's own guidance puts it directly: the requirement covers any business that sells goods, services, or digital content online to consumers in the EU, regardless of where the business is located (Shopify Help Center). A UK, US, or other non-EU store that ships to EU consumers has to comply, a point Taylor Wessing makes for non-EU businesses too.
What counts is whether a statutory right of withdrawal exists for the sale, and whether the contract was concluded online. That brings most standard B2C ecommerce into scope: physical goods, digital content, and many services sold through a website or app. Sales agreed offline, by phone or in person, fall outside the online-function requirement.
Two questions matter here: whether a withdrawal right exists at all, and whether the order needs the online withdrawal function. The table below sorts common cases, though national transpositions vary and edge cases are worth a legal check.
| Usually needs the online withdrawal function | Usually does not need the online withdrawal function |
|---|---|
| Physical goods bought online | Made-to-order or personalised goods |
| Digital content where the withdrawal right is kept | Perishable goods |
| Many online services | Date-specific bookings such as hotels or events |
| Subscriptions carrying a withdrawal right | Digital content where the shopper waived withdrawal |
| Standard retail orders via website or app | Contracts concluded by phone, email, post, or in person, though other withdrawal-right duties may still apply |
One thing the button does not do is change the clock. The standard 14-day withdrawal window still applies. For physical goods, the Consumer Rights Directive ties that window to when the shopper receives the order, not when they pay, so a request can arrive well after the parcel lands. Services and digital content follow different start points. Freshfields notes the period can extend by up to 12 months when the required withdrawal information was never given, which some guidance describes as 12 months and 14 days. The button governs how a shopper withdraws, not how long they have.
What a compliant withdrawal button must do
Adding a link that says 'cancel' is not enough. The directive sets out how the function has to behave, and Hogan Lovells and Taylor Wessing both split the requirements into a few parts.
A compliant button uses two steps, not one. The first action opens a withdrawal form. A second, clearly labelled action submits it. The two-step flow exists to stop accidental submissions, so a single instant-cancel button does not meet the standard. The form sits between intent and submission on purpose.
Labels have to be unambiguous. The directive points to wording such as 'withdraw from contract here' for the opening button and 'confirm withdrawal' for the confirmation, or an equally clear phrase in the local language. Vague labels like 'Cancel' or 'Service request' are likely treated as non-compliant, per Taylor Wessing, because they do not signal a statutory withdrawal.
The form should ask only for what is needed to process the withdrawal: the shopper's name, enough detail to identify the order, and an electronic contact for the confirmation. After submission, the store has to send an acknowledgement of receipt on a durable medium, normally an email, with a record and timestamp. nShift stresses this part when it calls the requirement more than a button, since the receipt and the back-office handling matter as much as the form.
Visibility is its own requirement. The function has to stay continuously available across the whole withdrawal period and be easy to reach, not hidden in terms and conditions or behind a login. startups.co.uk suggests featuring it prominently, including the main menu and footer, so a shopper never has to hunt for it.
Key takeaway: A compliant setup needs a two-step form, clear labels, an order-identification step, an automatic receipt email, and a link that stays visible for the full 14 days.
See where your store is losing conversions
How to add the withdrawal button on WooCommerce
WooCommerce gives you the most direct route, because the ecosystem already has purpose-built plugins for this rule. A withdrawal-button plugin handles the form, the 14-day eligibility check, and the receipt email, so you are not building the logic by hand.
A workable setup looks like this:
- Install a withdrawal-button plugin. Free options on the WordPress.org directory include the EU Withdrawal Button for WooCommerce plugin, which advertises order validation, a 14-day check, guest-order support, and merchant emails. Paid and agency-built options exist from vendors such as WebToffee and Vendidero. A newer free option is the BuddyPilot Withdrawal plugin, which builds the same two-step form and durable-medium confirmation email and covers the 24 official EU languages out of the box, useful if you sell across several EU markets in more than one language.
- Place the entry point where shoppers can find it. Add the withdrawal link to your footer and main menu, and to order and account pages, so it stays reachable during the cooling-off period.
- Configure the two-step form. Check that the opening and confirmation labels match the directive wording, and that the form collects the shopper's name and order details.
- Turn on the acknowledgement email. Confirm a timestamped receipt goes out automatically when a request is submitted, since this is part of the legal requirement.
- Test as a guest. Many EU orders are guest checkouts, so verify the flow works without an account, which ties into the wider guest checkout versus account creation trade-off.
Once it is live, test the withdrawal link yourself from the storefront to confirm it is reachable on the pages shoppers use. To check the other things that matter for conversions and trust across your store, run a full WooCommerce store audit.
How to add the withdrawal button on Shopify
Shopify is a flatter platform, so the route is an app or a theme edit rather than a plugin. As of publication, Shopify documents the requirement but does not ship a one-click toggle that guarantees compliance. Its help page lists what a compliant function needs, then points merchants to legal advice and their own solution (Shopify Help Center). Whatever you install, confirm it covers visibility, two-step confirmation, guest access, and the durable-medium acknowledgement.
On the Shopify Starter plan, theme and page editing is limited. An app that injects the withdrawal link, or a hosted withdrawal page you link to, is more practical there than manual theme edits.
In practice, most stores will:
- Pick a withdrawal-button app. Free options include Revoq EU Withdrawal Button and EU Withdrawal Button & Form, which both add a two-step form with no login, automatic confirmation emails, and EU-language translations. Paid tiers add extras like custom branding and audit logs, so compare what each app covers before installing.
- Add the entry point through the theme editor. Whichever app you choose, expose the withdrawal link in the footer and menu so it is available site-wide. For a manual route, you can add a dedicated withdrawal page and link to it the same way you would when you customize the Shopify checkout and its surrounding pages.
- Wire up the confirmation email. Confirm the app sends a timestamped acknowledgement, because Shopify's native order-cancellation emails were not designed for this rule.
- Keep it visible on mobile. A large share of EU orders are placed on phones, so the link has to be reachable there too, which connects to mobile checkout best practices.
After setup, test the button on the live storefront yourself, not just in the admin, to confirm it is present and reachable. To check the other conversion and trust factors across the rest of your store, run a full Shopify store audit.
See how your Shopify or WooCommerce store stacks up
A withdrawal request is not a return request
These two get mixed up, and the difference matters. A return policy is your own commercial process. The withdrawal right is a statutory consumer right with its own rules. You can handle both through the same back-office system, but the shopper-facing flow has to stay distinct. The withdrawal flow should not force shoppers to pick a return reason, upload photos, wait for approval, or pass through a complaint workflow. nShift makes the same point: a withdrawal request is not a standard return, complaint, or customer-service case.
Compliance mistakes that put stores at risk
Most failures are not exotic. They come from treating the button as a checkbox instead of a function.
- Bad: burying the link in terms and conditions, deep menus, or behind a login wall.
- Good: a visible withdrawal link in the footer and main menu, reachable without signing in.
Burying the button is the most common way to fail, because it breaks the core idea that withdrawing should be as easy as buying. A one-step instant flow is the second trap, since the directive expects a separate confirmation step. Skipping the acknowledgement email is the third, as the receipt on a durable medium is part of the requirement, not an optional extra.
The downside of getting it wrong is concrete. Under national transpositions, stores can face regulatory fines and cease-and-desist claims from consumer-protection groups, per Greenberg Traurig. Taylor Wessing adds that these groups, especially in Germany, tend to pursue formal button errors quickly through warning letters and injunctions soon after the deadline. In Germany, default fines can reach up to 50,000 euros, and higher caps can apply for larger traders: up to 4% of turnover in the affected member states, or 2 million euros where turnover cannot be estimated, per Freshfields. Exact exposure depends on the national law that applies.
FAQ
Does the EU withdrawal button apply to UK and US stores?
Yes, if you sell to consumers in the EU. Shopify's guidance and law-firm analyses agree the rule follows the customer, not the seller. A UK or US store shipping to EU shoppers needs a compliant button by 19 June 2026.
Can I avoid the withdrawal button by blocking EU customers?
You can choose not to sell into the EU, but that is a business decision, not a quick compliance fix. The rule follows where you sell, so signals like an EU-language storefront, euro pricing, or shipping options to EU countries can pull you into scope. If you still accept orders from EU consumers, you need a compliant button. Turning off EU sales entirely closes a large market to skip one feature, which is rarely the trade most stores want.
What is the deadline for the EU withdrawal button?
The obligations apply from 19 June 2026. EU member states had to transpose the directive into national law by 19 December 2025, so the underlying rules are already on the books in many countries.
What does the withdrawal button have to say?
The directive points to clear wording such as 'withdraw from contract here' to open the form and 'confirm withdrawal' to submit it, or an equally clear phrase in the local language. Ambiguous labels like 'Cancel' are likely treated as insufficient.
Which orders are excluded from the withdrawal button?
Sales without a statutory withdrawal right are generally out of scope. Common exclusions include made-to-order or personalised goods, perishables, date-specific bookings, and digital content where the shopper waived the withdrawal right. National rules vary, so check edge cases.
Do I need a paid app or plugin to comply?
Not always. WooCommerce has free withdrawal-button plugins, and some Shopify apps offer free tiers. The bigger cost question is handling the withdrawals and refunds the button will generate, not the button itself. Process valid refunds promptly, since that is part of the right. You can still offer store credit or an exchange as an option. Just do not make it a hurdle or bury the cash refund, since the directive treats added friction as an obstacle.
Does the withdrawal button replace my returns policy?
No. It is a withdrawal function for the statutory cooling-off period, separate from your voluntary returns and refund policy. The 14-day withdrawal right and your own returns terms can run side by side.
Is the withdrawal button the same as a return button?
No. A withdrawal button lets consumers exercise a statutory cooling-off right. A return button usually starts a store's own commercial return process. The two can share backend workflows, but the legal flow and wording should stay distinct.
Where to start before the deadline
The fastest path to compliance is narrow. Add a two-step withdrawal form, label it the way the directive expects, send an automatic receipt, and make the link reachable from your footer, menu, and order pages. WooCommerce stores can lean on a dedicated plugin; Shopify stores will use an app or a theme edit plus a confirmation email.
If you sell into the EU and have not added the button yet, treat 19 June 2026 as the line it has to be live by. Start by checking whether a shopper can reach a working withdrawal request from your storefront without logging in. If they cannot, that is the first thing to fix.
Disclaimer: This article is for informational purposes only and does not constitute legal advice. Rules under Directive (EU) 2023/2673 are transposed differently across EU member states and can change. For your specific situation, consult a qualified professional. Information is valid as of the publication date.
Jakub is the founder of Ecomhint, an AI-powered ecommerce audit tool focused on UX and conversion optimization. He helps online stores identify friction points across product pages, cart, and checkout using CRO best practices and original research data.
Jakub is the founder of Ecomhint, an AI-powered ecommerce audit tool focused on UX and conversion optimization. He helps online stores identify friction points across product pages, cart, and checkout using CRO best practices and original research data.

