Privacy Policy: Abiyde EU Withdrawal Button
Effective date: 2026-09-23 Provider: Jabiya, Cambridge, United Kingdom ("Abiyde", "we") Privacy contact: privacy@abiyde.com
What this app does
Abiyde EU Withdrawal Button lets a Shopify merchant offer the online "withdraw from contract here" function required by Article 11a of Directive 2011/83/EU (as inserted by Directive (EU) 2023/2673). A consumer looks up their order, chooses the items they are withdrawing from, and confirms in a second step. The app records the confirmation and emails an acknowledgement of receipt.
Our role
- For customer data (the people who use the withdrawal function), the merchant is the controller and Abiyde is the processor. We process customer data only to provide the app and only on the merchant's documented instructions. This policy, together with the terms on which the merchant installs the app, forms the data processing agreement under Article 28 GDPR.
- For merchant account data (below), Abiyde is the controller.
What we process
About the merchant (controller: Abiyde)
- The shop's Shopify domain and the access token and granted scopes Shopify issues when the app is installed.
- Settings the merchant enters: email sender name, reply-to email address, logo URL, brand colour, withdrawal window, the countries whose orders may use the withdrawal function, and product exemptions with the merchant's notes.
- The store's own name and public contact email (read from Shopify), used as the email sender name and reply-to address when the merchant hasn't set one, so the acknowledgement email doesn't show the store's raw Shopify domain and a customer's reply never goes unanswered.
- If the merchant picks a logo from their Shopify files rather than typing a web address, we read that file's URL from Shopify at the moment they pick it. We store only the resulting URL, not the file itself.
- Whether the shop has an active paid subscription, as confirmed with Shopify, and when it was last confirmed, used to determine access to the app.
About customers (controller: the merchant)
- The customer's email address as typed into the withdrawal form, and their name as it appears on the order (the name on its shipping address, or on its billing address if there is no shipping address).
- The country of the order: the two-letter country code of its shipping address, or of its billing address if there is no shipping address. It is used to check that the order is eligible for withdrawal under the merchant's settings. The rest of the address is not stored.
- The order reference and the items selected (Shopify order and line-item identifiers, item titles, quantities).
- Dates: when the request was started and confirmed, the delivery reference date and its source, and the resulting withdrawal deadline.
- A cryptographic signature that shows the confirmation time has not been altered.
- Whether the acknowledgement email was sent, its delivery identifier, and whether our email provider later reported it as delivered, bounced or marked as spam. This is a status only; the recipient's address is not stored in the report.
- What the merchant records about handling the request: status, who bears the return cost, and internal notes.
- Whether and how much has been refunded, and when: read from the merchant's Shopify order (automatically, when the merchant issues the refund there) or entered by the merchant if the refund was made another way. Shown in the currency the customer paid in.
Read from Shopify, not stored beyond the above: the order's reference, creation date, line items, fulfilment dates, the name and the country of its shipping or billing address, looked up using the order name and the email address the customer entered (Shopify performs the match).
We do not collect: a reason for withdrawal (the law does not permit asking for one), payment details, postal addresses (beyond the country code of the order), telephone numbers, or IP addresses. The withdrawal button sets no cookies, uses no local storage, and contains no analytics or advertising. Our server logs hold shop domains and internal identifiers, not personal data.
Why we process it, and the legal basis
To provide the withdrawal function: verify that the requester matches the order, work out the withdrawal deadline, record the confirmation with a reliable timestamp, send the acknowledgement of receipt the law requires, and let the merchant handle the request. The merchant's basis is compliance with a legal obligation (Article 6(1)(c) GDPR, the Consumer Rights Directive). We use customer data for no other purpose. We do not sell or share it, do not use it for marketing, and make no automated decisions about people.
Who else handles the data
| Provider | Purpose | Location |
|---|---|---|
| Amazon Web Services (AWS) | Hosting, storage, logging, and sending the acknowledgement email (Amazon SES) | Ireland |
| Shopify | The platform the app runs on; the source of order data | Per Shopify's terms |
Acknowledgement emails are sent through Amazon SES; no other email service handles customer data. We store and process customer data in the EU, including when we send the acknowledgement email. AWS acts as our sub-processor under its own data processing terms. We will publish changes to this list at this address.
How long we keep it
| Data | Kept for |
|---|---|
| A confirmed withdrawal | 3 years from confirmation, then deleted automatically |
| A request started but never confirmed | 30 days, then deleted automatically |
| Access token and settings | Until the merchant uninstalls; the token is deleted immediately, and Shopify then instructs us to erase all remaining shop data 48 hours later |
| A customer erasure request forwarded by Shopify | The customer's name and email are overwritten. The order reference and dates stay as a record for the merchant. |
| Backups | Deleted data can remain in point-in-time backups for up to 35 days |
| Server logs | 14 days |
How we protect it
- Encryption in transit (TLS 1.2 or later) and at rest (AWS-managed encryption on all storage, including backups).
- Requests from Shopify's storefront and admin are verified using Shopify's signatures and session tokens before any data is read.
- The confirmation timestamp is signed with a secret held only by the app, so alteration is detectable.
- Access to production systems is limited to the operator and secured with least-privilege access roles; deployments use short-lived credentials rather than stored keys.
- Production and test data are kept separate, and deletion protection and backups guard against loss.
- We handle security incidents under a written policy and notify affected merchants without undue delay.
Rights
Customers can exercise their rights (access, rectification, erasure, restriction, objection, complaint to a supervisory authority) by contacting the merchant they withdrew from. We help merchants respond, and we act on Shopify's data request and erasure notifications. Merchants can contact us at privacy@abiyde.com about their own account data.
Changes
We will post changes here and update the effective date. Material changes will be notified to merchants through the app or by email.