EU Withdrawal Button for WooCommerce
EU Directive 2023/2673 introduces new requirements for online stores regarding consumer withdrawal rights, taking effect on June 19, 2026. EU Withdrawal Button for WooCommerce helps you implement a clear, accessible withdrawal flow for your customers: The 4-Step Flow Visible Button — Sticky withdrawal bar (shown across your store by default, configurable per page type; always on My Account) Withdrawal Form — Customer enters order number + email for verification; partial withdrawals supported Confirmation Step — Order summary with a separate “Confirm withdrawal” button Notifications — Confirmation email to customer + notification to merchant Free features Sticky bar with configurable text and button, plus an optional footer link Modal popup or dedicated page mode Order validation (order number + email + withdrawal window check) Partial withdrawals: customers select the items and quantities to withdraw Optional refund IBAN field — stored encrypted, masked in lists and exports, auto-erased 30 days after completion Custom WooCommerce order statuses: “Withdrawal Requested” and “Withdrawal Closed” Withdrawals overview in the WordPress admin WooCommerce email integration (shows in WooCommerce → Settings → Emails) Guest-friendly withdrawal link in WooCommerce order emails — no account needed Return instructions link in the customer confirmation email WordPress privacy tools integration (GDPR data export and erasure) Support for custom order number plugins (Sequential Order Numbers, etc.) WCAG 2.1 AA accessible (keyboard navigation, focus trap, ARIA labels) Rate limiting for abuse prevention Translations bundled: Estonian, Finnish, French, Swedish, Italian, Dutch HPOS (High-Performance Order Storage) compatible Pro (paid) One-click Complete/Reject actions with automatic customer emails My Account widgets: countdown badges and withdrawal status column Thank-You page and order-view withdrawal boxes Custom colors, styling and custom CSS Excluded categories and product-level exceptions GDPR consent checkbox on the withdrawal form Payment-method-aware IBAN field (hide for card payments) Statistics dashboard, CSV export, REST API Priority support Who Is This For? WooCommerce store owners who sell to EU consumers and want to provide a clear withdrawal process for their customers. Disclaimer This plugin is a technical tool that helps implement a withdrawal flow. It does not constitute legal advice and does not guarantee compliance with any specific regulation. Consult a legal professional to ensure your store meets all applicable requirements. Translations Bundled translations and their contributors: Estonian (et) — Riin Agency Finnish (fi) — Riin Agency French (fr_FR) — Riin Agency (community review welcome) Swedish (sv_SE) — Riin Agency (community review welcome) Italian (it_IT) — contributed by Cristina Gregolin (Artilabio) Dutch (nl_NL) — contributed by Mark Govaerts (Bepos) Want to contribute a translation? Email
[email protected] — you will be credited here.
Top keywords
- withdrawal15×3.64%
- order9×2.18%
- email6×1.46%
- woocommerce6×1.46%
- riin5×1.21%
- agency4×0.97%
- button4×0.97%
- custom4×0.97%
- customer4×0.97%
- eu4×0.97%
- riin agency4×0.97%
- account3×0.73%
Spotrebiteľské práva pre WooCommerce
🇸🇰 Slovenský popis Tento plugin pridáva do vášho WooCommerce e-shopu online formuláre na odstúpenie od zmluvy a reklamácie, plne v súlade s európskou Smernicou EÚ 2023/2673 a slovenským zákonom č. 108/2024 Z. z. o ochrane spotrebiteľa. Pre koho je to určené: Pre slovenských prevádzkovateľov WooCommerce e-shopov, ktorí potrebujú: Splniť zákonnú povinnosť podľa EÚ smernice 2023/2673 (účinná od 19. 6. 2026), ktorá vyžaduje aby každý e-shop mal funkciu „Odstúpiť od zmluvy tu” priamo na webe (nie len PDF na stiahnutie). Zjednodušiť proces reklamácií — zákazník vyplní reklamáciu online, nemusí tlačiť papierový formulár, môže priložiť fotografie vady. Mať poriadok v reklamáciách — všetky odoslané reklamácie sa zhromaždia v administračnom rozhraní, kde môžete vyplniť reklamačný protokol, sledovať stav a vytlačiť oficiálny dokument. Hlavné funkcie: Odstúpenie od zmluvy — formulár cez shortcode [withdrawal_form], tlačidlo „Odstúpiť od zmluvy tu” pri každej objednávke v Mojom účte, automatická kontrola 14-dňovej lehoty (po vypršaní sa tlačidlo skryje), HTML potvrdenie s presným dátumom a časom odoslania (zákonný dôkaz na trvalom nosiči). Reklamácie — kompletný online reklamačný formulár cez shortcode [complaint_form] (alias [reklamacia]), všetky polia zo štandardného slovenského papierového formulára: meno/firma, telefón, e-mail, IBAN, výrobca, model, výrobné číslo, dátum predaja, číslo objednávky/faktúry, popis vady. Voliteľné nahrávanie fotografií vady (drag & drop, JPG/PNG/WEBP/HEIC, do 5 MB). Reklamačný protokol — admin vyplní rozhodnutie (výmena/vrátenie ceny/zamietnutie), dátumy, IBAN na vrátenie. Vytlačiteľný A4 protokol (browser-natívne uloženie do PDF), pripravený na archiváciu. 30-dňová zákonná lehota — plugin posiela 5 dní pred uplynutím automatickú pripomienku adminovi (cez WP Cron). Žiadna pokuta od ÚZP za zameškané reklamácie. Údaje predávajúceho — vyplníte IČO, DIČ, IČ DPH a adresu raz, zobrazuje sa v hlavičke formulárov aj na tlačenom protokole. Berie sa primárne z WooCommerce → Nastavenia → Všeobecné, voliteľný override. Plne preložené do slovenčiny — formuláre aj admin rozhranie. Čo plugin NEROBÍ: Automatické refundy ani zmenu stavu objednávky vo WooCommerce Generovanie dobropisov alebo vratových štítkov Napojenie na dopravcov Výnimky z práva na odstúpenie (digitálny obsah, hygienický tovar atď.) Tieto kroky rieši prevádzkovateľ manuálne podľa svojich obchodných podmienok. Inštalácia v 3 krokoch: Aktivujte plugin Vytvorte 2 stránky a vložte do nich shortcode [withdrawal_form] a [complaint_form] V Spotrebiteľské práva → Nastavenia zadajte URL týchto stránok + vyplňte IČO/DIČ ak ste firma 🇬🇧 English description This plugin adds online forms for both withdrawal from contract and complaints (reklamácie) to your WooCommerce store, fully compliant with EU Directive 2023/2673 and Slovak Act No. 108/2024 Coll. on consumer protection. Withdrawal from contract Shortcode [withdrawal_form] — embeddable on any page “Withdraw from contract here” button on every order in My Account (hides after 14 days) Automatic 14-day withdrawal-period check — visual and server-side blocking after expiry Automatic form pre-fill for logged-in customers Order ownership verification: e-mail or postcode for guest checkouts HTML confirmation e-mail with submission date and time (legal proof on a durable medium) HTML notification e-mail to the shop owner — supports multiple recipients (comma-separated) Rate limiting — max 10 attempts per hour per IP (admins bypass) Legally exact button wording per Articles 1 and 3 of the directive Complaints (reklamácie) Shortcode [complaint_form] (alias [reklamacia]) All fields matching the standard Slovak complaint form: buyer details, IBAN, brand, model, serial number, sale date, order number, invoice, defect description Brand and model are optional — focus is on the defect description Separate “Order number” field — auto-filled from order dropdown for logged-in customers, manual text input for guests Optional photo upload with drag & drop (up to 5 photos by default, configurable) Secure photo handling — real MIME-type verification (JPG, PNG, WEBP, HEIC), .htaccess protection, random filename hash, realpath safety check Auto-fill from order selection for logged-in customers (brand, model, sale date, order number, invoice number) Admin complaint list with filter (by status), search (name, e-mail, invoice, order number, ID) and pagination Admin “Reklamačný protokol” form — fill resolution (exchange / refund / rejected), expert assessment contact, dates Status pipeline: New → In progress → Resolved / Rejected (coloured badges) “Date resolved” is required when closing a complaint (auto-fills today if empty) Internal notes field (private) — visible only to admins, NOT included in print or customer e-mails Delete action with confirmation and disk cleanup of attached photos Optional status update e-mail to customer Printable A4 view — buyer-filled form + protocol on one page (browser-native print to PDF) Seller info settings — IČO, DIČ, IČ DPH, correspondence address (hybrid: WC Store Address + plugin overrides) WP Cron daily reminder e-mail to admin 5 days before the 30-day legal deadline expires (each complaint reminded only once) 30-day legal deadline reminder per Act No. 108/2024 Coll. Common features Dedicated top-level admin menu “Spotrebiteľské práva” (Consumer Rights) with 3 clean submenus: Withdrawals from contract, Complaints, Settings Database log of all submissions (separate tables for withdrawals and complaints) Full multilingual support (EN, SK, CS, HU, DE, PL) — auto-detected from WordPress Site Language HPOS and legacy WooCommerce compatibility WordPress Privacy Policy integration in GDPR consent Automatic DB schema upgrades — new columns are added on plugin load if missing (no manual SQL needed) WooCommerce compatibility The plugin works with both order-storage systems: HPOS (High Performance Order Storage) — new wc_orders tables, WooCommerce 7.1+ Legacy — classic storage via WordPress posts/postmeta Switching is fully automatic. HPOS compatibility is declared via FeaturesUtil — the plugin shows a green compatibility badge in WooCommerce > Settings > Advanced. Legislation The plugin is designed in compliance with: EU Directive 2023/2673 (effective 19 June 2026) Slovak Act No. 108/2024 Coll. on consumer protection (replaced Act No. 102/2014 Coll. effective 1 July 2024) What the plugin does NOT do Exceptions from the right of withdrawal (digital content, hygiene goods, etc.) Automatic refunds or order status changes in WooCommerce Generating credit notes or return labels Carrier integration These steps are handled by the shop owner manually according to their terms and conditions. Usage Withdrawal from contract: Create a page and insert the shortcode [withdrawal_form] In Consumer Rights → Settings, enter the URL of that page Add a link to that page in your site footer Complaints (reklamácie): Create a separate page and insert the shortcode [complaint_form] In Consumer Rights → Settings, enter the URL of that page Fill in the Seller info section (IČO/DIČ if applicable) — these details appear on the printed protocol Withdrawal link in WooCommerce emails (YayMail / email customizers): Use the [withdrawal_link] shortcode inside any WooCommerce email template (YayMail, Kadence Emails, Email Customizer for WooCommerce, etc.) to insert a pre-filled link to the withdrawal form. The link automatically includes the correct order key so the customer lands on the form with their order pre-filled. [withdrawal_link] — inserts a link with the default label "Withdraw from contract" [withdrawal_link label="Cancel order"] — custom link text [withdrawal_link label="Withdraw" class="btn btn-primary"] — with CSS class(es) on the ` ` tag The shortcode only works inside WooCommerce transactional emails (e.g. Order Completed). It reads the current order from the email context automatically. Outside of an email context it returns an empty string. The withdrawal form page URL must be configured in Consumer Rights → Settings.