=== Retractify for WooCommerce ===
Contributors: victorbonnel
Tags: woocommerce, withdrawal, consumer rights, ecommerce, returns
Requires at least: 6.0
Tested up to: 7.0
WC requires at least: 7.0
WC tested up to: 10.4
Stable tag: 1.0.8
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Withdrawal request workflow for WooCommerce stores.

== Description ==

Retractify for WooCommerce helps merchants provide a structured customer withdrawal request flow for WooCommerce orders.

Customers can request a withdrawal from their account order page or through a guest lookup form using their order number and billing email. Merchants can review requests in the WordPress admin, update statuses, keep internal notes, export request data, and send operational emails.

= Features =

* Withdrawal button on WooCommerce order detail pages
* Guest lookup flow using order number and billing email
* Two-step confirmation flow to reduce accidental submissions
* Full or partial item selection
* Configurable withdrawal period
* Product, category, product-type, and downloaded-product exclusions
* Configurable withdrawal reasons and optional free-text details
* Request log with filters, status changes, internal notes, and CSV export
* Customer and merchant email notifications
* PDF or HTML proof generation
* Public request status shortcode
* Gutenberg withdrawal policy block
* WooCommerce HPOS compatibility

Retractify assists store operations but is not legal advice and does not guarantee compliance with any specific law or regulation. Review your withdrawal policy, customer communications, and store setup with qualified legal counsel.

== Installation ==

1. Upload the plugin ZIP from **Plugins > Add New > Upload Plugin**.
2. Activate **Retractify for WooCommerce**.
3. Go to **WooCommerce > Retractify**.
4. Configure the withdrawal period, button text, exclusions, reasons, and notification settings.
5. Add `[retractify_form]` to a public page if you want to offer guest lookup.

== Frequently Asked Questions ==

= Does this plugin require an external service? =

No. The WordPress.org build runs locally in WordPress and WooCommerce. It does not send withdrawal request data to Retractify servers.

= Does the plugin store data locally? =

Yes. Withdrawal request data is stored in your WordPress database.

= Can guests submit withdrawal requests? =

Yes. Use `[retractify_form]` for the full guest-first flow or `[retractify_withdrawal_search]` for search-only mode.

= Which shortcodes are available? =

Use `[retractify_form]`, `[retractify_withdrawal_search]`, `[retractify_withdrawal_policy]`, and `[retractify_status]`.

= Is WooCommerce HPOS supported? =

Yes. Retractify declares compatibility with WooCommerce High-Performance Order Storage.

= Can I customize withdrawal reasons? =

Yes. Configure one reason per line in the plugin settings and decide whether customers may add free-text details.

== Changelog ==

= 1.0.8 =
* Added request filters, internal notes, history, CSV export, product-type exclusions, configurable reasons, and request status pages.
* Improved WordPress.org packaging and review compliance.

= 1.0.7 =
* Added line-level eligibility, structured reasons, and WooCommerce product-type exclusions.
* Improved blocked-item explanations and admin reason labels.

= 1.0.6 =
* Improved release packaging and WordPress test environment handling.

= 1.0.5 =
* Security: hardened guest AJAX throttling and deterministic proof fallback behavior.

= 1.0.4 =
* Changed source language to English for WordPress.org translation compatibility.
* Updated German, French, Spanish, Italian, and Dutch translations.

= 1.0.3 =
* Fixed withdrawal database insert handling and modal item submission.
* Added dedicated return address settings with WooCommerce fallback.

= 1.0.2 =
* Fixed escaping for withdrawal period/deadline values and moved PDF styles to an external CSS file.

= 1.0.1 =
* Fixed date output escaping, asset enqueueing, Plugin URI, WooCommerce dependency metadata, and package contents.

= 1.0.0 =
* Initial stable release.

== Upgrade Notice ==

= 1.0.8 =
Adds request filters, internal notes, history, CSV export, product-type exclusions, configurable reasons, and request status pages.

== Privacy ==

This plugin stores withdrawal request data locally in your WordPress database. The WordPress.org build does not send withdrawal workflow data to external servers.

== External Services ==

This WordPress.org build does not connect to external Retractify services.

== Screenshots ==

1. Guest withdrawal search form.
2. Order lookup result with item selection and withdrawal summary.
3. Successful withdrawal submission with confirmation details.
4. Retractify settings inside WooCommerce.
5. Withdrawal requests log in the WordPress admin.
