
How to Set Discounts for Card Payments Only on Shopify ๐ณ
Learn how to create conditional discounts based on payment method in Shopify. Hide COD, target prepaid payments only, and control when discounts apply using Payflow.


From June 19, 2026, a new EU rule applies: every online store that sells to consumers in the EU must offer an easily accessible "withdrawal button" on its website. This is not a new right โ the 14-day cooling-off period has existed for years. What is new is that customers must have a simple online way to exercise it. In this article we explain exactly what the law requires, who it applies to, the penalties for non-compliance, and how to handle it in practice on Shopify.
EU Directive 2023/2673 introduces a mandatory electronic "withdrawal function" โ in practice a clearly visible button or link through which a customer can withdraw from a contract just as easily as they ordered. The rule builds on the existing 14-day right of withdrawal (the cooling-off period) and standardizes how the customer exercises it.
In Shopify you can also mark specific products or collections as "final sale" โ customers then can't request a return or cancellation for them through the portal. This is handy for made-to-order goods (which fall under the statutory exemption) or, for example, a cash-on-delivery fee handled as a separate product that doesn't make sense to return on its own.
To comply with the directive, the "withdrawal function" must meet four requirements:
Shopify has published its own guidance and tools for this. You essentially have three options.
Good news up front: the directive doesn't ban smart technical solutions โ it actively encourages them. The goal is to make withdrawal as easy as possible for the customer, so linking the form to their orders, pre-filling data, or showing the option only during the statutory period are all fine. And that's exactly what Shopify does natively.
Turn on Self-serve returns and cancellations (Settings โ Customer accounts) and set the conditions in Return and cancellation rules.
Set rules per market. Shopify lets you apply different rules to different countries. For customers in the EU enable returns with a 14-day window counted from delivery โ that covers the right of withdrawal. For markets outside the EU (e.g. the US), where this obligation doesn't apply, you can simply turn returns off, so the option isn't even offered there.
The customer then requests a return or cancellation directly from their account; the request lands in your admin and Shopify automatically sends them a confirmation email (the "Return request confirmation" template). In the admin you see exactly which items they want to return and process the request โ far clearer than manually parsing a free-text form with an order number.
One catch โ login. This flow takes the customer through a customer-account sign-in (their email plus a one-time code Shopify sends to that email). If your store requires an account to purchase, that's fine. But if you allow guest checkout โ as most stores do โ the sign-in is an extra step that wasn't there at purchase, and the directive wants withdrawal to be at least as easy as buying (Shopify itself notes this).
Simple fix: keep the self-serve flow on and additionally add a visible, login-free entry point โ a "Withdraw from contract" link in your footer pointing to a public form (the custom solution below). Guest shoppers can then withdraw without signing in at all.
You can build the withdrawal button yourself, for free, from Shopify's native tools โ Shopify Forms + Shopify Flow + Flow Mail:
This path gives you full control and is accessible without login โ which is the whole point: the customer can withdraw without ever signing in โ but it requires manual setup and testing.
If you'd rather not build anything, there are apps made specifically for the withdrawal button โ they add a login-free button, a two-step form, and an automatic confirmation email in line with the directive. Revoq โ EU Withdrawal Button and Consentmo GDPR Compliance are two examples. Note: apps for the cookie banner / GDPR consent (e.g. Pandectes) do NOT solve this โ their "withdrawal" refers to withdrawing cookie consent, which is a different law.
Whichever path you choose, describe the right of withdrawal and its exemptions in your terms and conditions. If you sell made-to-order goods or other products that fall under the statutory exemptions, state it clearly โ you'll avoid disputes and unnecessary requests.
This article is for information only and is not legal advice. Consult a lawyer about your specific solution and exemptions.
It is a mandatory electronic function introduced by EU Directive 2023/2673, effective June 19, 2026. It is a clearly labeled button or link on your store that lets a consumer easily exercise their existing 14-day right of withdrawal. It is not a new right โ just a new, standardized way to exercise it online.
It depends on how purchases work in your store. The native self-serve returns cover the mechanics and the automatic confirmation email, and the law welcomes that kind of simplicity. If your store requires an account to purchase, requiring login at withdrawal is fine. But if you allow guest checkout, the login is an extra step โ and the directive wants withdrawal to be at least as easy as buying. In that case add a login-free entry point (a footer link to a public form), a vetted app, or a custom solution.
Yes. The obligation applies to any store selling to consumers in the EU, regardless of where the business is located. What matters is that you target customers in an EU member state. It does not apply to pure B2B sales between businesses.
For goods, the period generally starts on the day the consumer (or a person they designate) takes physical possession of the goods. For services and digital content, it starts when the contract is concluded. If you fail to properly inform the customer about the right of withdrawal, the period extends to up to 12 months and 14 days.
No. You only need the button where a right of withdrawal actually exists. The statutory exemptions โ notably custom-made and personalized goods, perishable goods, unsealed hygiene goods, and digital content downloaded with explicit consent โ have no right of withdrawal, so no button is required for them. Always describe these exemptions in your terms and conditions.

Learn how to create conditional discounts based on payment method in Shopify. Hide COD, target prepaid payments only, and control when discounts apply using Payflow.

By adding a payment QR code, you let customers from the Czech Republic and Slovakia pay easily by transfer right after completing their order. Setup in the Payflow app is simple and can be done in just a few minutes.

Streamline your Shopify store with Mailstep thanks to automatic COD rounding, EUR COD processing for Slovakia, fixing faulty shipments, and the Globe app for pickup points.

Chargebacks can cause significant financial losses for online stores. In this article, we'll show you how to effectively minimize the risk of fraudulent transactions using the right payment settings and automation in Shopify Flow.
Interested in collaborating on a project?