Documentation

Docs & setup guide

Everything you need to install Crucial EU Withdrawal and run it day to day.

Getting started

Getting Crucial EU Withdrawal live on your store takes four steps and no code — it works with any modern Online Store 2.0 theme.

  1. Install Crucial EU Withdrawal from the Shopify App Store.
  2. Open the app from your Shopify admin — you land on the dashboard.
  3. Give customers a way to reach the form: add the Withdrawal form block to a page, or enable the always-on Withdrawal button app embed. Either one on its own is enough.
  4. Save — the form is live on your storefront.

That's the minimum to be compliant. The sections below cover customization — from button labels to emails to automation.

Where the form lives

There are two ways to put the withdrawal flow in front of customers, and you choose which — neither one is required by the app.

  1. The form block — an app block that renders the withdrawal form itself inside any section of any template. A dedicated “Withdraw from contract here” page is the usual home for it; customers fill the form in without leaving that page. Add it in the theme editor via Add block → Apps → Withdrawal form.
  2. The withdrawal button — an always-on button on every storefront page that opens the standalone form.

You can use both, or just one. What EU consumer law asks is that the withdrawal function be easy to find — not that it sit in a particular place. If you drop the button and rely on the form block alone, title the page or section “Withdraw from contract here” so the statutory wording stays in front of customers.

The form block has settings for maximum width and whether it renders as an elevated card or blends into your page. It falls back to a link to the standalone form for visitors with JavaScript disabled.

The withdrawal button

The withdrawal button is an always-on app-embed block that appears on your storefront pages. It's not a link you add manually — it's injected by the app embed so it stays visible on every relevant page without ongoing maintenance. It's optional: if you've placed the form block somewhere customers can find it, you don't need the button as well.

The button label is merchant-overridable (the default reads “Withdraw from contract here”), while the submit action is locked to keep the compliant flow intact. The button displays a coin icon and is styled to blend with your theme. You can adjust the label and placement from the theme editor's App embeds panel.

If the button is how customers reach the form, it must stay visible to satisfy the “clearly provided” requirement under EU consumer law — hiding it or making it hard to reach could undermine your compliance posture. Turning it off is fine only when the form block gives customers an equally easy route.

The withdrawal form

The withdrawal form is a short, no-login flow that any shopper can complete — reached either by clicking the withdrawal button or directly on whatever page you placed the form block on. It has two steps:

  1. Look up the order — the shopper enters their order number and the email address they used at checkout.
  2. Confirm and submit — the shopper reviews their details and confirms the withdrawal.

On submission, the statutory declaration and PDF are generated automatically, and the confirmation email is sent to the shopper. The form is fully localized to the shopper's language — all text, validation messages, and the declaration adapt based on the detected locale.

Statutory declaration

The statutory declaration is the legally worded statement a consumer must be able to make when exercising their right of withdrawal. Crucial generates it from the official model wording set out in Directive 2023/2673, so the text meets the legal standard out of the box.

Every declaration is bilingual: it contains a block in the shopper's own language followed by an English canonical block. The wording is locked — it can't be edited into something that would break compliance. The declaration is embedded in the confirmation email and in the downloadable PDF audit record.

Confirmation emails

Immediately after a shopper submits the form, Crucial sends a confirmation email to the shopper on a durable medium — satisfying the legal obligation to provide written confirmation. The email contains the full statutory declaration, the order reference, and an attached PDF record.

Your store is also notified: a merchant notification goes to your account email so you're aware of each withdrawal as it comes in.

On the Free plan, emails are sent from a shared domain. On Basic and above you can verify your own domain and send confirmation emails from it — which improves deliverability and keeps your brand consistent. To set this up, go to Settings → Email domain in the app and follow the DNS verification steps.

Languages & translations

Crucial EU Withdrawal ships with full support for all 24 official EU languages. The language is auto-detected from the shopper's session and applies across every surface they encounter: the storefront button, the withdrawal form, the statutory declaration, and the confirmation email.

On the Basic plan and above, you can override or customize the translated wording directly in the app. This is useful for adjusting tone, adapting terminology to your brand, or correcting region-specific phrasing — without losing the underlying legal structure of the declaration.

Custom template (Basic+)

On the Free plan, the withdrawal form uses the default Crucial template. On Basic and above, you can customize the form's appearance and remove the “Powered by Crucial” watermark.

Custom template settings are found under Settings → Form appearance in the app. You can adjust colors, upload a logo, and tweak the layout to match your brand. The statutory declaration block and submit action remain locked regardless of template changes.

Admin dashboard

The Crucial admin dashboard gives you a live list of all withdrawal requests received by your store. You can filter by status, date, and customer to find the request you're looking for.

Click any request to open its detail view, where you can review the full record — including the declaration text, the order it relates to, and the PDF. From there you can also act on the request: download the record, trigger a data export, or manually notify the shopper.

Records & export

Every withdrawal request is stored as a structured record in your admin, accompanied by a Unicode PDF audit document. The PDF includes the full bilingual statutory declaration, the order reference, and a timestamp — everything you need to demonstrate compliance if audited.

You can download individual records at any time from the request detail view. On Basic and above, you can also run a bulk CSV export of all requests — useful for record-keeping or feeding into your own compliance systems.

Keep these records as proof of compliance. EU consumer law requires you to be able to demonstrate that you provided a durable-medium confirmation and that withdrawals were handled correctly.

GDPR data requests

When a data subject submits a GDPR data request relating to a withdrawal record, Crucial surfaces it in your admin so you can act on it. You can download the data associated with a request directly from the app — no manual database queries needed.

You'll also receive a notification when a data request comes in, so nothing falls through the cracks. This supports your obligations under GDPR data-subject rights such as access (Article 15) and erasure (Article 17) for personal data that Crucial holds on your behalf.

Webhooks & Shopify Flow (Grow)

On the Grow plan, Crucial connects to the rest of your operations stack. You can configure outbound webhooks so that every new withdrawal event is sent to an external endpoint — useful for connecting to a CRM, helpdesk, or custom backend.

The app maintains a delivery log for each webhook subscription, and you can manually retry failed deliveries from within the admin. For no-code automation, Crucial exposes Shopify Flow triggers on withdrawal events — letting you build flows without writing code. Orders can also be tagged automatically when a withdrawal is submitted, and the app can sync withdrawals with Shopify returns to keep your returns workflow consistent.

Plans & billing

Crucial EU Withdrawal is available on three plans, all billed in EUR by Shopify:

  • Free — core compliant withdrawal flow, default template, shared email domain.
  • Basic — €8.99/mo or €89/yr — adds custom email domain, custom template, branding removal, bulk export, and translation overrides.
  • Grow — €24.99/mo or €249/yr — adds outbound webhooks, Shopify Flow triggers, automatic order tagging, and returns sync.

All paid plans include a 14-day free trial. You can upgrade or downgrade at any time from the app's Plans page — changes take effect immediately and are prorated by Shopify.