Set Up and Use the Cancel Button
As of June 19, 2026, online stores must offer consumers a cancellation feature: a “Cancel Contract” button and a “Confirm Cancellation” confirmation. XONIC has included both features since version 4.7—with partial cancellation, support for guests without a customer account, email confirmation of receipt, and a backend registry. Here’s what you need to check and how to process incoming cancellations.
At a Glance
- Included: since XONIC 4.7, enabled by default, without an additional license or module.
- For your customers: “Cancel Contract” button in the footer of every page and in the order details in the customer account. Guests can find their order using their email address plus order number or last name.
- Settings: under Settings → Checkout → General; the footer button under Settings → Design → Footer; the address for notifications under Settings → Interfaces → Email Marketing / CRM → Email Options.
- In the backend: All cancellation requests are listed under Orders → Cancellation Requests. The store accepts the cancellation and confirms receipt. You handle the return and refund.
- Your most important task: The cancellation policy must include a reference to the cancellation function. The Health Check flags policies that lack this reference.
In this guide
Legal Framework
The provisions on which this feature is based—summarized in their verbatim form, without any legal assessment of your specific case.
Section 356a of the German Civil Code (BGB): The Right of Withdrawal Feature
For distance contracts concluded via an online user interface, the consumer must be able to declare withdrawal using a withdrawal function. It must be clearly labeled with “Withdraw from Contract” or an equivalent phrase, remain available at all times during the withdrawal period, be prominently displayed, and be easily accessible.
The system will prompt you to enter your name, the order or the part being canceled, and your email address for confirmation. The cancellation is submitted via a “Confirm Cancellation” button. This is immediately followed by a confirmation of receipt stating the content, as well as the date and time of receipt. This is based on Directive (EU) 2023/2673, effective as of June 19, 2026.
§ 312g and § 355 BGB: Right of Withdrawal and Time Limit
Consumers have a right of withdrawal for distance sales contracts. Withdrawal is effected by a declaration to the business and does not require a reason. The period is 14 days. Exceptions include, among other things, goods manufactured according to the customer’s specifications (Section 312g(2)(1) BGB, see below).
§ 356, paras. 2–4 BGB: Start and End of the Period
For goods, the period begins upon receipt. It does not begin until you have provided the required information. Since June 19, 2026, this instruction must include information regarding the existence and location of the withdrawal function (Art. 246a § 1 (2) sentence 1 no. 1 EGBGB). The right of withdrawal expires no later than twelve months and 14 days after the regular start of the period.
§ 356, paras. 5 and 6 BGB: Services and Digital Content
For paid services, the right of withdrawal expires upon full performance—provided the customer has expressly consented in advance to your beginning performance before the deadline and has confirmed that they will then lose their right of withdrawal.
For paid digital content without a physical medium, the right of withdrawal expires as soon as you have begun performance—provided the customer has consented, confirmed their awareness of this, and you have provided them with a confirmation in accordance with § 312f BGB.
For Consumers Only
Consumers are entitled to the statutory right of withdrawal (Section 312g(1), Section 13 BGB). Business customers do not have this right. The store therefore explicitly excludes orders that are clearly commercial in nature—see “Exceptions” for details.
Sample Withdrawal Form
The instruction and the sample withdrawal form are also part of the mandatory information (Art. 246a § 1 (2) sentence 1 no. 1 EGBGB). The form does not replace the withdrawal function: the customer does not use it to withdraw from the contract on your store’s website.
What the Store Handles—What You Handle
The online store provides the function and documents each withdrawal. You are responsible for the legal text and the processing.
What the online store handles
- “Cancel Contract” button in the footer and in the order details.
- Form with item selection, partial quantities, reason, and a “Confirm Cancellation” button—for customers with accounts and for guests.
- Blocking of orders that are clearly commercial, marked services and downloads, as well as expired deadlines.
- Confirmation of receipt sent to the customer and a notification sent to you.
- Tab under Orders → Cancellation Requests and an entry in the order history.
Here’s what you need to do
- Add a reference to the cancellation option to your cancellation policy (here’s how).
- Properly label services, downloads, and custom-made items.
- Set the address for notifications.
- Process cancellations: returns, invoice corrections, refunds. The store does not change the order status or inventory levels, nor does it issue refunds automatically.
- Keep the store up to date—the order confirmation will only include the date and time of receipt starting with version 4.9.114.
Settings
The return button is enabled by default. Check these settings—especially after updating from an older version.
| Setting | Default | Effect |
|---|---|---|
| Settings → Checkout → General → EU Cancel Button Master Switch | On | Master Switch. Off: no button in the footer or order details, no cancellation page, “Cancellation Requests” menu item hidden. The Update Wizard turns it back on with every update. |
| Settings → Checkout → General → Right of Withdrawal in the Order Process On/Off | On | Notice regarding the right of withdrawal and its duration, with links to the withdrawal policy and the sample withdrawal form in the order summary; link to the sample withdrawal form in the order details. Required for the footer button and the consent checkbox for digital content. |
| Settings → Design → Footer → Enable/Disable withdrawal button in the footer | On | “Cancel Contract” button in the footer of every page. |
| Settings → Checkout → General → Cancellation Period | 14 | Period in days. If you voluntarily grant a longer period, enter the number of days here: The notice in the order summary and the period calculation will be based on this value. |
| Settings → Checkout → General → Cancellation: Shipping Buffer (Days) | 5 | Days between shipment and assumed receipt; see period calculation. |
| Settings → Checkout → General → Return Button: Target Audience | auto | Whether business orders are excluded; see Exceptions. from 4.9.85 |
| Settings → Checkout → General → Exclusion from the Right of Withdrawal for Digital Goods and Services | On | Consent checkbox in the order summary; see Digital Content. |
| Settings → Interfaces → Email Marketing / CRM → Email Options → Cancellation Notification Email | blank | Recipient of the notification sent to you; see Emails. |
The cancellation settings under Settings → Checkout → General with the default values. Click to enlarge.
Where your customers can find the button
There are two entry points in the store, both labeled “Cancel Contract.” There is no separate button on the order summary page; instead, there is a notice regarding the right of cancellation with links to the cancellation policy and the sample form.
In the footer of every page
Below the “Information” link list, separated by a line, is the “Cancel Contract” button—visible even to visitors who are not logged in. It appears when the master switch, “Right of Withdrawal in Order Process On/Off,” and “Withdrawal Button in Footer On/Off” are enabled.
Since version 4.8.1, it has been a separate button. In version 4.7, it appeared as a link in the link list.
In the customer account
Under My Account → My Orders, the order details display the “Cancel Contract” button as long as not everything has been canceled yet. Depending on the situation, the following messages appear next to it: “Partially Canceled,” “Fully Canceled,” “No Right of Cancellation for Services (§356 BGB),” or “No Right of Cancellation (Commercial Order).”
The button in the order details is controlled solely by the master switch.
In the footer of every page, the “Cancel Contract” button is located below the “Information” link list. Click to enlarge.
In the order details under My Account → My Orders, you’ll find the sample cancellation form and the “Cancel Contract” button. Click to enlarge.
Also include a link to the cancellation page in your cancellation policy. This fulfills the requirement to provide a reference to this feature, which the policy must contain (see Cancellation Policy).
How Your Customers Can Cancel
Two ways—by logging in or as a guest. Both end with the checkbox “I hereby declare that I am canceling the above-mentioned contract” and the “Confirm Cancellation” button.
Logged-in customers
- Click “Cancel Contract” in the order details. If using the footer button, the customer first selects the order from a list.
- All items eligible for cancellation are preselected. The customer deselects individual items or enters a partial quantity for items with quantities greater than 1.
- Optionally, provide a reason.
- Check the box and click “Confirm Cancellation.”
- Success page and confirmation of receipt via email.
Guests and customers without an account
- Click “Cancel Contract” in the footer.
- Step 1 “Find Order”: Enter the email address associated with the order plus the order number or last name.
- If there are multiple results, select the correct order.
- Step 2 “Confirm Cancellation”: Select the items and quantities, optionally provide a reason, check the box, and click “Confirm Cancellation.”
- A confirmation page will appear, and you’ll receive a confirmation email.
Step 2 for guests: Select items and quantities; services are disabled. Enter your explanation and click “Confirm Cancellation” to submit the cancellation. Click to enlarge.
Partial Cancellation and Multiple Cancellations
Any number of cancellations are possible per order. The store deducts quantities that have already been canceled and displays them next to the item, for example, “2 of 4 already canceled.” You cannot cancel more than the quantity ordered.
Deadline per Item
Each item displays “Cancellation period ends on …” or “Period begins upon receipt of the goods.” Items whose cancellation period has expired can no longer be selected. The order list for logged-in customers shows only orders with at least one item whose cancellation period is still active.
Return Label After Cancellation
Guests see a note on the confirmation page stating that they will receive their return label from customer service. If you offer free DHL return labels in the customer account (Settings → Interfaces → Shipping Providers → DHL GKP → DHL Return Label: Free Return Labels, along with the “DHL Return Label: ReceiverID”), registered customers will instead see the “Download Return Label” button. It leads to the order in the customer account. from 4.9.86
When the store does not offer a right of withdrawal
In these cases, the form blocks items or the entire order—always with a notice to the customer, never silently.
Commercial orders from 4.9.85
Controlled via Settings → Checkout → General → Return Button: Target Group:
- auto (default): Exclusion only if the order is clearly commercial—account type “Company” selected, company with a VAT ID, or company with a customer group whose prices are displayed as net. A company name alone is not sufficient.
- b2c: Cancellation allowed for all orders.
- b2b: Never. Only for stores that sell exclusively to businesses.
The customer sees “No right of cancellation (commercial order)” and a request to contact us if they placed the order as a consumer. Prior to version 4.9.85, there was a “Allow cancellation for B2B customers” toggle; the update retains its value.
Services and Downloads
Items that were marked as a service or download at the time of ordering are blocked:
- Items with “Service Product” = Yes (Products → Categories / Products, open the item, “General” tab).
- If Settings → Checkout → Download → Enable Product Downloads is enabled: any item without weight, including attribute weights.
The form displays “No right of withdrawal (§356 BGB).” If the order consists solely of such items, a note appears there instead of the button. The flag is set at the time of the order: A subsequent change to the item does not affect old orders.
Expired Period
If the calculated deadline for an item has expired, it can no longer be selected. See “Deadline Calculation” for details on how the store calculates deadlines.
Custom-Made Items from 4.10
Marked custom-made items are locked and labeled “Made to your specifications.” See “Personalized Goods” for details.
Calculation of the Time Limit
The online store does not know the delivery date. It therefore calculates the deadline based on the shipping date and a buffer period.
Here’s how the store calculates it
Deadline = Shipping date + Shipping buffer + Cancellation period. Example: Shipped on 10/01, 5-day buffer, 14-day cancellation period → “Cancellation period ends on 10/20.”
It uses whichever is available first as the shipping date: the shipping date of the item, the order’s shipping date, or the first change to a shipping status. Which statuses count as “shipped” is defined in the store—contact XONIC Support to make a change. If no shipping status is identifiable, the right to cancel remains valid.
Limitations of the Calculation
The calculation is an approximation. It assumes that the customer was properly informed and does not take into account any subsequent deliveries. If the notice fails to mention the right of withdrawal, the statutory period runs longer than the store calculates (§ 356 (3) and (4) BGB). If a customer declares the cancellation after the deadline has passed by other means, such as via email, please review the specific case.
Consent for Services and Digital Content
To ensure that the right of withdrawal can expire, the store obtains the customer’s consent before the order is placed and records it.
Requirements
- “Enable/Disable Right of Withdrawal in the Order Process” and “Exclusion of the Right of Withdrawal for Digital Goods and Services” under Settings → Checkout → General are enabled.
- The shopping cart contains a service product or—if downloads are enabled—an item with a downloadable file.
What the customer sees
In the order summary, a required checkbox, such as “Yes, please begin providing the service immediately. My right of withdrawal expires upon full performance.” or “Yes, I would like immediate access to the digital content and understand that my right of withdrawal expires upon access.” The order cannot be placed without checking the box.
What the store records
The click, along with the time and IP address, as proof of consent; an entry in the order history (“Customer has accepted the exclusion of the right of withdrawal for …”); and a paragraph in the order confirmation. The email and order history only mention the consent if the checkbox was displayed and checked. from 4.9.136
You can edit the text of the checkbox and the email under Tools → xoLanguage, “Frontend” framework, “default” section (keys: CONFIRM_SERVICE_WITHDRAWAL_CHECK, CONFIRM_DOWNLOAD_WITHDRAWAL_CHECK, CONFIRM_SERVICE_WITHDRAWAL_EMAIL, CONFIRM_DOWNLOAD_WITHDRAWAL_EMAIL). If in doubt, have any changes reviewed by legal counsel.
Goods Manufactured to Customer Specifications
No statutory right of withdrawal (Section 312g(2)(1) of the German Civil Code (BGB))—no consent required and no checkbox, but with a notice before and after the order. from 4.10
Indicate where the personalization takes place
- Entire item: “Personalized Goods” toggle in the item, “General” tab – the item is always manufactured according to the customer’s specifications.
- A specific option: “Value personalizes the product” in the attribute value under Products → Product Attributes, such as “with custom logo”—applies only if the customer selects this value.
- Free text: “Free text personalizes the product” on the attribute, such as for an engraving text—applies only if the customer enters something.
- File upload: “Upload personalizes the product” in the item’s upload definition—applies only when a file is uploaded.
What Your Customers See
Before placing an order, the store indicates the exclusion on the product page (next to the item or directly below the option), in the shopping cart, and in the order summary—there is no checkbox for this. The order confirmation lists the affected items.
In the return form, these items are disabled and labeled “custom-made according to your specifications.” If an order consists solely of excluded items, a note appears in place of the button.
Converting Existing “Services”
If you have previously listed custom-made items as “service products”: The Health Check lists items with this designation and a shipping weight under “Service or personalized goods.” One click reclassifies the item; ignore actual services in this section. Items are never reclassified automatically.
For tax purposes, personalized goods are considered goods: For tax-exempt shipments to other EU countries, invoices and e-invoices treat them as intra-Community supplies, not as services.
Mark only genuine custom-made items
Size, color, or a selection from standard options do not make a product a custom-made item based on customer specifications. An unauthorized exclusion of the right of withdrawal is invalid and may result in a cease-and-desist letter. Therefore, mark only what is actually manufactured according to the customer’s specifications—and, for free-text fields, only those without pre-filled text, since pre-filled text counts as a customer input.
Emails in the Event of a Cancellation
After submission, the store sends two emails: a confirmation of receipt to the customer and a notification to you.
Confirmation of receipt to the customer
This is sent immediately to the email address associated with the order, in the language of the order. Content: Name, order number, and order date; date and time of receipt; the address from which the confirmation was sent; the canceled items with quantities; and the reason, if provided.
The email lists the date and time of receipt starting with version 4.9.114. Older versions only list the order date—one more reason to update. from 4.9.114
Notification to You
Subject line: “Order Cancellation #…” including customer, order date, items, and reason. You can specify recipients under Settings → Interfaces → Email Marketing / CRM → Email Options → Cancellation Notification Email:
- Field filled in: The email is sent only to these addresses, including multiple addresses.
- Field empty: Sent to the “Shop operator’s email address” and to all addresses listed under “Send order copy via email to.”
- Each address receives the email once.
Change the email text
Up to version 4.9: xoLanguage
Under Tools → xoLanguage, “Frontend” framework, “customer-order-withdrawal” section: Key “ TEXT_WITHDRAWAL_EMAIL_… ” for the order confirmation, “ TEXT_WITHDRAWAL_SHOP_NOTIFY_… ” for the notification sent to you. The lines containing the receipt time and confirmation address remain unchanged, even if you rewrite the text. The email’s structure (header, footer) is provided by the store’s general email template.
Email template “Cancellation Confirmation” from 4.10
The receipt confirmation is a separate email template called “Cancellation Confirmation” located under CMS → Emails & Marketing / Automations, with placeholders for name, email, receipt date, item, and reason. If you delete a required placeholder, the store will automatically append the information. The update will carry over your previous customizations from xoLanguage into the template. The notification sent to you remains in xoLanguage. Learn more about email templates: CMS Manager & Emails.
Processing Cancellations in the Backend
Every cancellation is listed in the Cancellations tab and in the order. The store does not change the order status in this process.
Register: Orders → Cancellation Requests
One row per cancellation, including partial cancellations: order number with link, customer and email, date received, canceled items, reason, and confirmation (“Confirmed” with shipping date or “Pending”).
Filter by time period and confirmation status; the search finds order number, customer, or email address. “Edit” opens the order. The menu next to it offers “Open Customer Account” (only if the return is associated with a customer account), “Send Receipt Confirmation” (including resending, for example, after an email failure), and “Delete.”
You can specify who is allowed to send or delete orders under Settings → Administrators → User Groups. The menu item appears only when the master switch is enabled.
In the order
- Order list: red “Return Request” badge below the status, filter “Returns Only.”
- Order header: “Return Request” badge with date; one click opens the entry in the tab.
- Details: Receipt date and reason; “Open in Withdrawal Register” button.
- History: Entry “Return submitted on: … (via online form)” with the items.
The Cancellation Register showing one confirmed and one pending cancellation; in the action menu, resend the receipt confirmation. Click to enlarge.
In the order, the header, order details, and history show the cancellation; the order status remains unchanged. Click to enlarge.
How to Process a Cancellation
- Check the entry: If the confirmation status is “Pending,” resend the receipt confirmation from the action menu.
- Coordinate the return: The customer returns the merchandise, using the return label from the order if requested.
- Create a return and invoice correction: Only then will the store post the goods as returned and generate the receipt; see “Edit Orders.”
- Refund: Via the payment provider or by bank transfer. The store does not issue refunds automatically.
- Set status: Manually update the order status and notify the customer if requested.
Cancellation Policy and Sample Cancellation Form
You or your legal text provider supply the legal text. The store checks whether it mentions the cancellation option and attaches the policy and form to the order confirmation.
Reference to the cancellation function from 4.9.114
Under Tools → Server Info & Health Check, in the “Database Schema Health Check” section, the result “Withdrawal Policy without Withdrawal Function” appears for each active store language whose policy does not mention the function. The “Edit Cancellation Notice” button opens the page in the CMS Manager.
A link to the cancellation page or a term such as “cancellation function,” “online function,” or “cancellation button” counts as a reference. The store does not insert any text itself: Use the current version provided by your legal text provider or add the notice yourself. The text on the page is checked, regardless of whether you maintain it yourself or obtain it via a legal text interface.
Sample Cancellation Form and Attachments
The sample cancellation form is the module $cms_withdrawal in the CMS Manager. The placeholder {STORE_NAME_ADDRESS} inserts your address from Settings → General → Basic Settings → Store Address and Contact Information.
By default, the store attaches the cancellation policy and the sample cancellation form as PDF files to the order confirmation—use the “Email Attachment for Order Confirmation (PDF Cancellation Policy)” and “Email Attachment: Sample Withdrawal Form (PDF)” in the email options. The Terms and Conditions are not attached by default. All attachments: CMS Manager & Emails.
If the cancellation policy does not mention the cancellation function, the Health Check flags this and takes you directly to the page in the CMS Manager via a button. Click to enlarge.
The “Right of Withdrawal” page is a system page: You cannot change its status yourself in the CMS Manager. If it is deactivated, contact XONIC Support. How to maintain legal texts: Maintain Legal Texts.
The button is missing
Check these points in order.
In the footer
- The master switch under Settings → Checkout → General is turned on.
- “Right of Withdrawal On/Off in Checkout Process” is enabled—without this toggle, the footer button will not appear.
- "Enable/Disable Cancel Button in Footer" under Settings → Design → Footer is enabled.
- Version: In version 4.7, the button appeared as a link in the link list and was only displayed if the footer module
$cms_footer_navicontained a list. Since version 4.8.1, it has been a separate button. - Custom Template: The button is attached to the footer link block. If your custom footer template does not include this block, the button will be missing. Please contact us.
In the order details or in the backend
- Entire order excluded: only services or downloads, identified as commercial, or already fully canceled. In that case, a note appears instead of the button.
- Items with no weight, when downloads are enabled, are considered downloads; see Exceptions.
- "Cancellation Requests" menu item is missing: The master switch is off.
- Shop version older than 4.7: This feature is not available there. In that case, the only solution is an update.
Included starting with XONIC 4.7
The cancellation button is an integral part of the XONIC Shop System—no additional license or separate module required, and it is enabled by default. For full receipt confirmation—including the date and time of receipt and a health check of the cancellation policy—you need at least version 4.9.114. If your store is running an older version, please schedule an update.
Setup Checklist
Follow this order—and perform a test cancellation at the end.
- Check version: at least 4.9.114, preferably the latest version.
- Check three toggles: Master Switch and “Right of Withdrawal in Checkout On/Off” (Settings → Checkout → General), “Withdrawal Button in Footer On/Off” (Settings → Design → Footer).
- Set up notifications: “Cancellation Notification Email” in the email options; otherwise, notifications will be sent to the administrator’s email address and the order copy recipients.
- Select target audience: “Cancellation Button: Target Audience”—usually set to “Auto.”
- Add cancellation instructions: Include a note about the cancellation option, preferably with a link to the cancellation page; health check shows no issues.
- Check the sample cancellation form: Address in the basic settings, attachments in the email options.
- Mark items: Onlymark genuine services as “service products”; if downloads are enabled, assign a weight to each item.
- Test cancellation: Cancel a test order placed as a guest; check the order confirmation and notification; delete the test entry from the register.
Frequently Asked Questions
Is the cancellation button included in the store, and do I need to enable it?
Starting with which shop version is the cancellation button available?
Where is the cancellation button displayed in the store?
Is a link or a cancellation form sufficient?
Do I have to integrate the cancellation button from my legal text provider?
How can I make the cancellation button in the footer stand out more?
Does the cancellation button also apply to business customers?
How do I disable the cancellation button, including in the order details?
Where do I set the email address for cancellations?
Where do I change the text of the withdrawal email?
Where do I customize the note about the return label after a cancellation?
TEXT_WITHDRAWAL_RETOURE_LABEL_LINK is the button for logged-in customers, TEXT_WITHDRAWAL_RETOURE_LABEL_GUEST is the note for guests.A customer accidentally canceled their order—how do I undo this?
Is data transferred to third parties when a cancellation occurs?
How do I attach the Terms and Conditions and Cancellation Policy to the order confirmation?
Where do I change the address in the sample cancellation form?
$cms_withdrawal ” module in the CMS Manager. If the placeholder “ {STORE_NAME_ADDRESS} ” appears there, change the address under Settings → General → Basic Settings → Store Address and Contact Information. Otherwise, change it directly in the module, in each language tab.The “Right of Withdrawal” page is disabled—how do I re-enable it?
How do I implement the waiver of the right of withdrawal for digital content?
Is the EU warranty label also available?
Where can I find the cancellation management feature in older shop versions?
Related Guides
Note
This guide explains how the right of withdrawal feature is implemented in the XONIC Shop System and does not constitute legal advice. If in doubt, have a lawyer review whether your right of withdrawal policy, your labeling of services, downloads, and custom-made products, and your target audience settings are appropriate for your product range. The references reflect the status at the time of creation.
Help with the Cancellation Button
We’ll update your store to the latest version, review the settings, and customize your templates.
Contact Support Now