Mandatory withdrawal button from 19 June 2026: our GDPR-proof solution
From 19 June 2026 the "withdrawal button" becomes mandatory
A new European rule changes the way customers can cancel an online purchase. From 19 June 2026, for distance contracts, every online store must provide an easy, always-accessible withdrawal function: the so-called "withdrawal button". The legal basis is Directive (EU) 2023/2673, transposed in Italy by Legislative Decree 209/2025, which introduces art. 54-bis of the Italian Consumer Code.
The principle is simple: withdrawing must be as easy as buying. No PDF forms, no registered letters, no emails to dig up.
What the law asks, in short
- A clear, always-visible button throughout the withdrawal period, with unambiguous wording (for example "Withdraw from the contract").
- Two steps on the site: the button leads to a form where the consumer enters a few details and confirms the request.
- An acknowledgment on a durable medium (typically an email), sent without undue delay, including the content of the request and the date and time.
The problem with off-the-shelf solutions: a privacy risk
There are already apps that add a cancellation form. Many of them, however, show the order's products right after order number and email are entered. That's problematic, because order number and email do not prove the identity of the person making the request.
Consider a concrete scenario: the order number appears in Shopify's order notification on the phone screen, readable even while the phone is locked. At that point a colleague — or anyone who sees that notification — already knows your name, can easily guess your work email and, with order number plus email, opens the form and sees the products you bought. None of this data really proves the requester's identity — which is why, in our view, exposing order details without a real login is not an acceptable practice and is a concrete GDPR risk.
Our solution: compliant and privacy-friendly
We built a cancellation function designed around these requirements, integrated into the Shopify store and branded with the client's theme (logo, colors, fonts). Here's how it works:

- Only the necessary data: the customer enters order number and email. No product list, no details shown.
- Always a neutral response: the form always replies the same way — "if there is a matching, not-yet-shipped order, it will be cancelled and you will receive a confirmation email". This neither confirms nor denies that an order exists, removing the privacy risk and order enumeration at the root.
- Automatic cancellation of unshipped orders: if the order exists and has not shipped yet, it is cancelled and fully refunded automatically.
- Shopify's native confirmation email: the customer notification is sent by Shopify, with the store's design and sender, customizable from its settings.
- Traceability: every request is logged (date, time and outcome) and every cancelled order gets a tag and a note documenting how the cancellation happened.
The page lives on the store's own domain (via Shopify's App Proxy) and appears inside the theme, like any other page of the site. To make it reachable, you just add the link in the footer.
Why it's the right choice
- GDPR-compliant: no personal data exposed without identity verification.
- Aligned with art. 54-bis: a simple button, a durable-medium acknowledgment, a traced process.
- Consistent experience: the customer stays on the store, with the brand's design.
- Zero manual work: cancellation and refund of unshipped orders happen on their own.
Note: this function covers the cancellation of not-yet-shipped orders. Returns for already-delivered orders can be handled with dedicated tools.
Who it's for
It's a solution we set up for you, tailored to the store and its theme, reserved for Tunca clients. If you run a Shopify store and want to be ready for 19 June 2026, get in touch.