=== NimbleOrder Change Requests for WooCommerce ===
Contributors: shahidirfan100
Tags: woocommerce, orders, address, customer-service, shipping
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.2
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Give customers a safe way to request delivery address corrections on paid WooCommerce orders. Store managers review and approve every change.

== Description ==

Customers sometimes notice an apartment number, postcode, or phone number is wrong after paying. NimbleOrder Change Requests for WooCommerce gives them a signed, time-limited request link without exposing direct editing of paid orders.

The customer can propose shipping address and phone changes, then the store reviews the before-and-after values in WooCommerce. No order field changes until a manager approves the request.

= Included =

* Signed, expiring links for guests and logged-in customers.
* Address, phone, and customer message fields only.
* Configurable request window and eligible paid order statuses.
* A WooCommerce review queue with old and proposed values, order status, shipping method, and a warning when matching label, shipment, carrier, or tracking metadata is present.
* Approve, reject, or ask for clarification actions.
* Private request records, WooCommerce order notes, audit history, and email notifications.
* Per-order request lock.
* WooCommerce order CRUD and HPOS compatibility.
* WordPress personal-data export and erasure support.

The plugin does not update carrier records, tracking details, or shipping labels. Merchants must update or reprint labels separately. Product, quantity, price, coupon, total, payment, refund, and fulfillment changes are outside this plugin's scope.

= Requirements =

* WordPress 6.5 or newer.
* PHP 7.4 or newer.
* WooCommerce 8.2 or newer.

Completed, cancelled, refunded, and failed orders are always closed. The order must be paid and within the configured request window. Subscription renewal orders are excluded when WooCommerce Subscriptions identifies them.

== Installation ==

1. Upload the plugin ZIP from **Plugins → Add New Plugin → Upload Plugin**.
2. Install and activate **NimbleOrder Change Requests for WooCommerce**.
3. Open **WooCommerce → Order Change Request Settings** and review the eligibility and customer link settings.
4. Review incoming requests in **WooCommerce → Order Change Requests**.

== Frequently Asked Questions ==

= Does the plugin change an order automatically? =

No. A store manager must approve every request. The plugin updates only the listed shipping address and phone fields after approval.

= Does approval change the shipping label or carrier tracking? =

No. The review queue warns when matching order metadata suggests a shipping label, shipment, or tracking record exists. The merchant must update or reprint it separately.

= Can customers change products, prices, totals, or payment details? =

No. The form is limited to the shipping address, phone number, and a message to the store.

= How are guest orders protected? =

Guest links include the WooCommerce order key and a signed expiry. The public request route does not provide order lookup or expose request records through the REST API.

= Where are settings and requests? =

Settings and the request queue are under **WooCommerce** in the WordPress dashboard.

= What personal data is stored? =

The plugin stores the current and proposed address fields, phone, customer message, email, request state, and private audit notes. It does not send data to an external service. Request records can be exported or erased through WordPress privacy tools.

== Screenshots ==

1. The review queue shows request status, order status, and shipping method.
2. The request review compares current and proposed details and flags possible shipping evidence.
3. Store settings control the request window, eligible statuses, customer links, and uninstall cleanup.

== Changelog ==

= 1.0.2 =
* Added NimbleOrder branding and clearer layouts to the request queue and settings screens.
* Improved keyboard focus, narrow-screen navigation, and horizontal table access.
* Added refreshed WordPress.org icons, banners, and screenshots.

= 1.0.1 =
* Added the NimbleOrder brand prefix to the plugin name and slug.
* Fixed settings saves for WooCommerce store managers.
* Added WordPress Plugin Check to GitHub Actions.

= 1.0.0 =
* Initial release: signed customer requests, merchant approval queue, order audit notes, notifications, request locks, privacy tools, and HPOS support.

