=== Status Desk – Custom Order Statuses for WooCommerce ===
Contributors: wedoingood
Tags: woocommerce, order status, custom order status, order workflow, bulk actions
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.6.6
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Custom WooCommerce order statuses with colors, icons, customer emails, one-click next-status buttons, bulk actions and safe deletion.

== Description ==

Status Desk adds your own order statuses to WooCommerce — "Packed", "Shipped", "Ready for pickup", "Awaiting stock" — and helps your team move orders through them quickly.

= Statuses =

* Create unlimited custom order statuses with a stable slug.
* Badge color and icon in the orders list (text color is picked automatically for contrast).
* Choose where each status appears in WooCommerce status lists.
* Ready-to-use example: Packed → Shipped in one click.

= Customer emails =

* Email the customer when an order moves to a custom status.
* Each email is a regular WooCommerce email (WooCommerce → Settings → Emails): edit subject, heading, text and format, or switch it off.
* Each status email goes to a customer only once per order, so an order moved back and forth does not send the same email twice. Send it again on purpose from the order actions.
* Placeholders: {site_title}, {order_number}, {order_date}, {status}. The template can be overridden in your theme.

= Faster order handling =

* One-click next-status buttons for your statuses, in the orders list and in the order preview.
* Bulk actions: "Change status to …" for every custom status.

= Order behavior per status =

* Treat orders as paid.
* Let customers pay for the order (Pay button in My Account).
* Keep order items and totals editable.
* Include or exclude the status in WooCommerce Analytics and reports.
* Show or hide the status in admin lists and filters.

= Safe by design =

* A status cannot be deleted while any order still uses it — including orders in the Trash.
* Built-in WooCommerce statuses cannot be overwritten.
* Existing orders are never changed automatically.
* Switching from another custom-status plugin? Import its statuses with one click, then deactivate it.

= Compatibility =

* High-Performance Order Storage (HPOS) and legacy order storage.
* Cart and Checkout blocks (the plugin does not change checkout).
* No external requests, no tracking, no custom database tables.

More about Status Desk: [wedoingood.com/plugins/status-desk](https://wedoingood.com/plugins/status-desk/)

== Installation ==

1. Install and activate WooCommerce.
2. Upload and activate Status Desk.
3. Open WooCommerce → Status Desk and add your first status.

== Frequently Asked Questions ==

= Where do I find Status Desk after installing it? =

In the admin menu, go to WooCommerce → Status Desk. You can also click "Settings" under the plugin's name on the Plugins screen.

= Will deleting a status break my orders? =

No. A status that is used by any order, including trashed orders, cannot be deleted. Reassign those orders first.

= Can I change a slug later? =

No. The slug is stored on every order in that status, so it is locked after creation. Create a new status and move the orders instead.

= Does it work without HPOS? =

Yes. Both order storage modes are supported, and links to filtered order lists adapt automatically.

= What happens to my statuses if I delete the plugin? =

They stay, unless you enable "Delete all Status Desk data when the plugin is deleted" in Settings. Orders themselves are never deleted.

= I don't see the next-status buttons in the orders list =

They are in the Actions column, which WooCommerce hides by default. Status Desk shows a "Show the Actions column" button when that is the case, or enable it under Screen Options → Columns on the orders screen. The buttons are always available in the order preview (eye icon).

= Are status emails sent for bulk actions? =

Yes. A status email is sent when an order enters the status — by hand, by a button, by a bulk action or by another plugin — once per order: if the order comes back to that status later, the customer is not emailed again (switch this off in Settings → Notifications). Bulk actions on many orders send the emails in the background. Developers can skip individual emails with the status_desk_send_status_email filter.

= How do I edit the text of a status email? =

Check "Email the customer" on the status, save, then click "Edit customer email". It opens the email in WooCommerce → Settings → Emails.

= I use another custom status plugin. Can I switch? =

Yes. Keep the other plugin active, open the Import tab, import its statuses, then deactivate the other plugin. Orders keep their status.

= Where can I get help? =

Ask in the support forum of this plugin on WordPress.org. Support is free and best effort: we read the forum regularly and fix confirmed bugs in the next release. Please describe the steps and what you expected instead; never post passwords or other private data.

= How do I report a security issue? =

Please email office@wedoingood.com and do not post it in the support forum. We confirm the report, fix it and release an update.

== Screenshots ==

1. Managed statuses with colors and icons.
2. Add or edit a status.
3. Next-status buttons and bulk actions in the orders list.
4. A customer email in WooCommerce → Settings → Emails.
5. Import statuses from another plugin.

== Upgrade Notice ==

= 1.6.6 =
Form values are read in the request handlers. Readme and code tidy-up. No functional changes.

= 1.6.4 =
Plugin homepage and author links. No functional changes.

= 1.6.3 =
First release on WordPress.org.

== Changelog ==

= 1.6.6 =
* Form values are read in the request handlers, after the security checks.
* Readme text and code tidy-up. No functional changes.

= 1.6.4 =
* Plugin homepage and author links point to wedoingood.com. No functional changes.

= 1.6.3 =
* First release on WordPress.org.
