=== Firestorm Retragere din Contract ===
Contributors: sirius11
Tags: withdrawal, returns, compliance, gdpr, ecommerce
Requires at least: 5.6
Tested up to: 7.0
Requires PHP: 7.2
Stable tag: 1.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Digital withdrawal function required by EU Directive 2023/2673. Two-step form, confirmation email with date and time. For Romanian online shops.

== Description ==

Since 19 June 2026, every trader selling online to consumers in the European Union must display a permanently visible **digital withdrawal function**, often called a "withdrawal button". The obligation comes from EU Directive 2023/2673, which amends the Consumer Rights Directive 2011/83/EU. In Romania it was transposed through Government Emergency Ordinance 18/2026, amending OUG 34/2014 and Law 363/2007. It applies to all online traders, including small shops.

This plugin adds that function to any WordPress site in a few minutes, without writing code.

Unlike solutions tied to a specific shop system, this plugin is deliberately platform-independent: the customer types the order number manually, so it works on any WordPress site, whether it runs WooCommerce or not.

**Please note:** the plugin interface and the emails it sends are written in Romanian, because the plugin targets merchants selling to Romanian consumers and the legal wording refers to Romanian law.

= What it does =

* Two-step withdrawal form: statement of intent, then a separate and clearly labelled final confirmation, as required by law
* Automatic confirmation email to the customer, containing the exact date and time of the request (durable medium)
* Notification email to the shop for every new request
* Unique reference number for each request
* All requests stored and visible in the WordPress admin area
* Full or partial withdrawal (the customer can select only some products)
* Accent colour, labels and legal links configurable from a single settings screen
* A withdrawal page is created automatically on activation

= Privacy and data handling =

Requests are stored in your own WordPress site, never on external servers. The plugin makes no external HTTP requests and loads no third-party assets. Visitor IP addresses are stored only as a truncated one-way hash, never in clear text. The only outgoing messages are the confirmation emails sent through wp_mail() to addresses you configure.

The legal eligibility of each withdrawal request (custom-made goods, sealed goods, digital content already accessed, and so on) remains the responsibility of the merchant, under the applicable consumer protection law.

== Installation ==

1. In WordPress, go to Plugins - Add New - Upload Plugin
2. Select the plugin .zip file, then click Install Now and Activate
3. Go to "Cereri de retur" - "Setari" and fill in the accent colour, return email address, shop name and legal links
4. Display the button: use the shortcode `[frstrm_formular_retur]`, a styled button with `[frstrm_formular_retur stil="buton"]`, or add the CSS class `frstrm-open-form` to any link or button. A dedicated page is also created automatically on activation.

Recommended: place a permanent link in the site footer, so the function is permanently visible as the law requires.

== Frequently Asked Questions ==

= What is the withdrawal button? =

It is a digital function that lets a consumer exercise their legal right of withdrawal from a distance contract online, without having to send a separate written request. EU Directive 2023/2673 makes it mandatory for online traders.

= When did it become mandatory? =

In Romania the obligation applies from 19 June 2026, through OUG 18/2026.

= Does it work without WooCommerce? =

Yes. The form is generic: the customer types the order number manually, so the plugin works on any WordPress site, with or without WooCommerce.

= Do I need to be a developer to install it? =

No. Upload it like any WordPress plugin, activate it, then fill in the settings on a single screen.

= Is customer data safe? =

Yes. Requests stay on your own site and are never sent to external servers. IP addresses are stored only as a one-way hash.

= In which language is the form displayed? =

The interface and the emails are in Romanian, because the plugin is built for merchants selling to Romanian consumers and the legal texts refer to Romanian legislation.

== Screenshots ==

1. The two-step withdrawal form as seen by the customer
2. The settings screen
3. The list of withdrawal requests in the WordPress admin area

== Changelog ==

= 1.1.0 =
* Renamed plugin and internal prefixes for uniqueness
* Documentation translated to English
* Note: settings must be configured again after updating from an earlier version

= 1.0.0 =
* First release: two-step form, confirmation emails, request storage, settings screen, anti-spam protection.

== Upgrade Notice ==

= 1.1.0 =
Internal names changed. If you used an earlier version, reconfigure the settings and update the shortcode to [frstrm_formular_retur].
