> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.omegatheme.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How Customers Submit a Withdrawal

## Overview
This article explains what your customers see when they withdraw from a contract, so you know what to expect and can answer their questions. The withdrawal button and form are always visible and work without a customer account.

## What you'll learn
* [How customers open the form](#2-how-customers-open-the-form)
* [The form in the customer's language](#2-the-form-in-the-customers-language)
* [How the two-step form works](#2-how-the-two-step-form-works)
* [What happens after a customer submits](#2-what-happens-after-a-customer-submits)
* [What the customer receives](#2-what-the-customer-receives)
* [Who can use this feature?](#2-who-can-use-this-feature)

## How customers open the form
Customers reach the form from the floating **Withdraw from contract** button or from a withdrawal link you've added to your store navigation (any menu, such as your footer or main menu). No login is required.

![](https://storage.crisp.chat/users/helpdesk/website/-/8/3/8/3/8383e5404a31c000/imgv3021380530864d-8ce5-4407-8_1wvxin1.jpg)

## The form in the customer's language
The withdrawal form opens in the shopper's own language automatically, detected from their Shopify or browser locale. When you have **2 or more languages enabled**, a language switcher appears in the form header — labelled with each language's native name — so shoppers can change language manually, and their entered details are preserved. If only one language is enabled, the switcher is hidden. If a shopper's locale can't be detected or isn't enabled, the form falls back to your **Default language**.

## How the two-step form works
The form has two steps, as EU law requires:

Step 1: The customer enters their details (full name, email, order number, plus any optional fields you enabled) and reads the legal withdrawal declaration. If your store has added custom fields, they appear on this first step after the standard fields, in the order you set. Required fields are marked with an asterisk (*) and must be completed before the customer can continue to step 2.


![](https://storage.crisp.chat/users/helpdesk/website/-/8/3/8/3/8383e5404a31c000/imgv3021380b26ebaf-d3aa-4514-a_tfblbp.jpg)

Step 2: The customer reviews the summary, ticks **"I confirm I want to withdraw from this contract"**, and clicks **Confirm withdrawal**.


![](https://storage.crisp.chat/users/helpdesk/website/-/8/3/8/3/8383e5404a31c000/imgv302138feeff96f-8dc9-46ef-b_c412jk.jpg)

## What happens after a customer submits
By default, every customer can submit a withdrawal — the form doesn't block anyone based on their order, email, or country. Instead, Blockify runs checks in the background and records a **Verified Status** on each request so you can decide how to handle it:
* **Order check** — whether the order number matches an order that's still within the withdrawal window (**Verified**, **Not found**, or **Expired**).
* **Email check** — whether the submitted email matches the order (**Verified** or **Email mismatched**).
* **Country check** — whether the order's country is one of the accepted countries (26 EU countries by default); otherwise **Out of zone**.


![](https://storage.crisp.chat/users/helpdesk/website/-/8/3/8/3/8383e5404a31c000/image_q36mnn.png)

A request that passes every check is **Verified**; otherwise it's **Unverified** and flagged for you to review. Either way, the request appears in your **Withdrawal request** list. See "Manage Withdrawal Requests" for what each status means.

| Tip: Getting a lot of **Unverified** or **Out of zone** requests? Turn on **Auto-validate before submission** to check the order, email, and country as the customer submits and block invalid requests at the form — so only valid withdrawals ever reach your list. See "[Auto-validate Withdrawals Before Submission](https://help.omegatheme.com/en/article/auto-validate-withdrawals-before-submission-1cemw6f/)."


![](https://storage.crisp.chat/users/helpdesk/website/-/8/3/8/3/8383e5404a31c000/imgv302138d0de1769-6381-4402-b_iwpeek.png)

## What the customer receives
Right after submitting, the customer automatically receives an acknowledgment email on a durable medium — the confirmation EU law requires. The request then appears in your **Withdrawal request** list as **Received**.

![](https://storage.crisp.chat/users/helpdesk/website/-/8/3/8/3/8383e5404a31c000/imgv30213809c36390-c80f-4729-8_h5nh2a.jpg)

## Who can use this feature?
The withdrawal button and two-step form work on all plans and for guest customers. 

## FAQs
1. **Do customers need an account to withdraw?**
No. The button and form are always visible and work for guest customers without login.

2. **Can customers from outside the EU submit a withdrawal?**
By default, yes — the form accepts every submission and flags orders outside the accepted countries as **Out of zone** for you to review. To block them at submission instead, turn on auto-validate. See "Auto-validate Withdrawals Before Submission."

3. **What if the customer's order can't be found?**
By default the request is still created and flagged **Not found** on the order check, so you can review it manually.

4. **What confirmation does the customer get?**
An acknowledgment email sent on a durable medium immediately after submitting — this is legally required.