=== Checkout Simulator for WooCommerce ===

Contributors: habibiplugins
Tags: woocommerce, shipping, checkout, cart, coupons
Requires at least: 6.4
Tested up to: 6.9
Requires PHP: 8.0
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Preview WooCommerce checkout in the admin: zones, shipping, coupons, payments, and totals. No order placed; all on your server.

== Description ==

Copyright (C) 2024-2026 Habibi Plugins. GPLv2 or later.

**Checkout Simulator for WooCommerce** helps store owners and developers **preview how checkout behaves** before a customer pays. Build a test cart, apply coupons, pick a shipping address, and see **which shipping zone matches**, **available shipping methods and rates**, **payment methods**, and **cart totals** - plus context when rules interact (for example, a coupon changing free-shipping eligibility).

**Perfect when you want to:**

* **Debug shipping zones** and location rules without guessing from the storefront
* **Validate shipping methods and rates** for a given address
* **Check coupon + shipping interactions** on a realistic cart
* **See payment methods** that would appear for the simulated checkout context
* **Explain "why" something matched** (zone match reasoning) to support clients

**How it works**

* Add products (search + quantity) and optional coupon codes
* Choose a **preset test address** or enter country, state, and postcode manually
* Click **Simulate** to run WooCommerce's logic on your server

**Privacy & safety**

* **No real order is created**
* **No data is sent to third-party services** - everything runs in your WordPress install
* Requires **WooCommerce 8.0+** and **PHP 8.0+**

**Who it's for**

Shop managers, WooCommerce merchants, and agencies who need a **fast, safe way to test checkout configuration** in the admin.

== Installation ==

1. Upload the plugin to `/wp-content/plugins/` and activate. WooCommerce must be installed and active.
2. Go to **WooCommerce → Checkout Simulator** in the WordPress admin.
3. Optionally add products (search and add with quantity), enter coupon codes, and choose or enter a shipping address. Click **Simulate** to see the matched zone, shipping options, and totals.

== Configuration ==

* **Products:** Use the product search to add one or more products and set quantities. Leave empty to only look up the shipping zone and methods for the address (no cart totals).
* **Coupon codes:** Enter comma-separated codes; they are applied during simulation when products are present.
* **Shipping address:** Select a preset (e.g. US - California) or choose "Enter manually" and fill Country, State/County, and Postcode.
* **Access:** Only users with the `manage_woocommerce` capability can open the Checkout Simulator (typically Administrators and Shop Managers).

== Screenshots ==

1. Simulator screen: add products, select coupons, choose a preset or manual shipping address, then run **Simulate**.
2. **Results** - matched shipping zone, shipping methods, payment gateways, coupon discount, and cart totals.

== Frequently Asked Questions ==

= Does this plugin send data to external servers? =

No. All simulation runs locally using WooCommerce. No third-party services are used; no data is sent outside your site.

= Why do I see "Simulation requires a session"? =

WooCommerce needs an active session to calculate shipping. Visit your store front (e.g. the cart or shop page) once while logged in, then try the simulator again.

= What if WooCommerce or PHP is too old? =

The plugin shows an admin notice and does not load if WooCommerce is below 8.0 or PHP is below 8.0. Upgrade WooCommerce and/or your server PHP version to use the plugin.

== Changelog ==

= 1.0.0 =
* Initial release. Cart simulation and zone lookup under WooCommerce → Checkout Simulator. Product selector, preset addresses, and WordPress.com-style admin UI.
