BACK TO DIRECTORY

Right of Withdrawal flow for shop

by Teet Bergmann

0.0
(0 ratings)

Right of Withdrawal flow for shop implements the consumer right of withdrawal mandated by the European Union Consumer Rights Directive (2011/83/EU), giving customers a clean, server-validated way to exercise their 14-day cooling-off period.

The plugin adds a “Withdraw from order” button in the customer’s account, opens an accessible modal where customers can pick specific items, enter an IBAN and select a withdrawal reason, then notifies the shop via HTML email and tracks the refund through to completion.

Key features

  • Full or partial withdrawal — customers select specific items and quantities.
  • Server-side amount calculation — line totals are read from the order, never trusted from the client. Coupon discounts are correctly accounted for via WC_Order_Item::get_total().
  • IBAN format + Mod-97 validation (works in any EU country with bcmod or pure-PHP fallback).
  • Order-meta storage (withdrawal date, IBAN, reason, items, refund status).
  • Admin metabox with status updates: Mark as refunded / Mark as partially refunded.
  • “Withdrawal” column and filter in WooCommerce Orders — see pending requests at a glance without opening each order.
  • Optional automatic creation of an order refund record (with optional restock).
  • Guest checkout support — a withdrawal form page ([rowfs_withdrawal_form] shortcode) where customers without an account enter their order number and email and receive a secure, signed withdrawal link. Guest orders also get this link in the order email.
  • Direct link to the withdrawal modal from the order confirmation email. For registered customers the link opens their account “View order” page with standard WordPress / WooCommerce authentication — no custom login, no auto-login.
  • HTML emails for both customer and admin; styled inline for Gmail/Outlook compatibility.
  • HPOS (Custom Order Tables) compatible.
  • Settings page nested under the WooCommerce menu.

Compliance reference

  • Directive 2011/83/EU on consumer rights, Articles 9–14 (Right of withdrawal).
  • The 14-day period is configurable; the plugin defaults to the directive’s prescribed minimum.
  • Refunds are processed to the bank account supplied by the consumer (IBAN), satisfying the directive’s requirement to use the same payment means unless the consumer explicitly agrees to another method.

Requirements

  • WooCommerce 7.0 or later
  • PHP 8.0 or later
  • WordPress 6.0 or later

Plugin Details

Active Installs
0
Total Downloads
267
Version
1.1.0
Requires WP
6.0
Requires PHP
8.0
Tested Up To
7.1
Added
2026-06-03
Last Updated
2026-09-10 11:10am GMT

Ratings

5
0
4
0
3
0
2
0
1
0