Description
OrderFlash for WooCommerce helps store teams notice new orders without repeatedly refreshing the WooCommerce orders screen.
OrderFlash is an independent plugin and is not affiliated with or endorsed by WooCommerce.
The plugin adds a floating order panel inside WordPress admin. It checks for new order events at a configurable interval, shows recent orders, and can display browser desktop notifications and an optional sound. Authorized users can open a detailed preview, search orders, filter by configured statuses, navigate paginated results, and keep personal read or unread states.
The plugin uses WooCommerce CRUD APIs and supports High-Performance Order Storage (HPOS). Customer and order data stays on the WordPress site. No tracking, telemetry, remote scripts, external fonts, or third-party data services are used.
Requirements
- WordPress 6.5 or newer.
- PHP 7.4 or newer.
- WooCommerce 8.5 or newer.
Key Features
- Near real-time polling-based alerts for new WooCommerce orders.
- Floating recent-orders panel inside WordPress admin.
- Browser desktop notifications and optional sound alerts.
- Responsive HTML new-order emails for the site administrator.
- Per-user read and unread order states.
- Server-side search, status filtering, minimum-total filtering, and pagination.
- Quick order previews with products, quantities, prices, billing, shipping, notes, and bounded additional fields.
- Quick order-status updates and one-click billing or shipping address copying.
- Signed, expiring printable invoice links.
- Custom invoice logo, store address, accent color, VAT details, and print-section controls.
- Responsive order cards and product tables for desktop, tablet, and mobile.
- WooCommerce CRUD and HPOS compatibility.
- LTR and RTL interface support.
- Configurable event retention and uninstall cleanup.
How It Works
- WooCommerce order hooks create small event records in a plugin-owned database table.
- The admin interface polls the event endpoint at the configured interval.
- New events refresh the order list and can trigger desktop and sound notifications.
- Order summaries are loaded separately from full order details to keep list responses smaller.
- Read states are stored per WordPress user.
Use Cases
- Store managers who need a visible new-order alert while working elsewhere in WordPress admin.
- Fulfillment teams that need a quick order preview before opening the full order screen.
- Shops that want browser notifications without sending customer data to another service.
- Administrators who need short-lived printable invoice links for customer communication.
Privacy
The plugin reads WooCommerce order and customer information only to display it to authorized WordPress users or through a valid signed invoice link.
It stores lightweight event records in a custom database table and per-user read order IDs in WordPress user metadata. It does not send customer data to a third party and does not include tracking or telemetry.
Signed invoice links contain an order ID, expiry timestamp, and HMAC signature. They are marked noindex and returned with no-store and anti-framing headers.
Data Storage
- Custom table:
{prefix}orderflash_adev_events. - Event data: order ID, event type, order status, source, UTC creation time, and a small internal JSON payload.
- Default retention: 14 days, configurable from 1 to 90 days.
- User meta:
_orderflash_adev_read_order_ids, capped at 500 positive order IDs per user. - Option:
orderflash_adev_settingsstores plugin configuration. - Options: schema, plugin, and event-cache versions support safe upgrades.
External Services
This plugin does not connect to external services. It loads no remote JavaScript, fonts, stylesheets, update checkers, tracking endpoints, or telemetry services.
Bundled Third-Party Assets
- Cairo variable font subsets are bundled in
assets/fonts/cairo/. Cairo is licensed under the SIL Open Font License 1.1. The license and source reference are included with the font files. - A targeted subset of Font Awesome Free 7.2.0 solid SVG icons is bundled in
assets/vendor/font-awesome/. Icons are licensed under CC BY 4.0 and the supporting CSS is licensed under MIT. The upstream license is included in that directory.
These files are served only from the plugin directory. The plugin does not contact Google Fonts, Font Awesome, or a CDN at runtime.
Screenshots




Installation
- Upload the plugin ZIP through Plugins > Add New > Upload Plugin.
- Activate the plugin.
- Make sure WooCommerce is active.
- Open WooCommerce > OrderFlash.
- Configure display location, order statuses, polling, notifications, previews, invoices, and data retention.
FAQ
-
Does the plugin support HPOS?
-
Yes. The plugin declares HPOS compatibility and uses WooCommerce order CRUD and query APIs instead of directly querying order posts.
-
Does it create a real PDF file?
-
No PDF library is included. The plugin creates a printable invoice page. The browser print dialog can save that page as a PDF.
-
Are customer details sent to an external service?
-
No. Customer and order details remain on the WordPress site. The plugin does not include tracking, telemetry, or a remote data service.
-
Who can view order details?
-
Administrators and shop managers receive the plugin capabilities by default. Access also follows WooCommerce order-management capabilities, including object-level access to the requested order. WordPress role-management tools can further adjust those capabilities.
-
How often does the plugin check for new orders?
-
The interval is configurable from 10 to 300 seconds. Polling maintains the configured interval in background tabs and uses bounded backoff after network failures.
-
Where are read states stored?
-
Up to 500 read order IDs are stored in the
_orderflash_adev_read_order_idsuser-meta key for each authorized user. -
What happens when the plugin is deactivated?
-
The cleanup schedule is removed. Settings, events, and read states are retained so they are available after reactivation.
-
What happens when the plugin is uninstalled?
-
Operational capabilities and scheduled hooks are always removed. Settings, the event table, and read states are deleted only when the delete-data setting was enabled before uninstalling.
-
Can the notification sound be disabled?
-
Yes. Sound alerts and their volume can be configured independently from desktop notifications.
-
Why does the browser ask me to enable sound?
-
Modern browsers can block media playback until a user interacts with the page. Click Enable sound once in the alerts panel to authorize the bundled notification sound for the current browser session.
-
Are invoice links public?
-
A generated invoice link is signed and expires after the configured period. Anyone who has a valid link can open it until it expires, so share it carefully. It is not password protected.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“OrderFlash for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “OrderFlash for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.4.2
- Updated the WordPress.org Tested up to metadata to WordPress 7.1 for the current directory submission requirements.
1.4.1
- Refined the settings-page layout into balanced independent columns to prevent large empty grid gaps.
- Improved order-status controls with a responsive internal grid while preserving all existing settings and behavior.
- Improved settings-page spacing, responsive ordering, navigation, cards, and save-area presentation.
1.4.0
- Aligned the WordPress.org plugin folder, main bootstrap filename, text domain, REST namespace, translation metadata, and internal package identity with the assigned
orderflash-adev-for-woocommerceslug. - Replaced generic runtime prefixes with the distinctive
ORDERFLASH_ADEV/orderflash_adevprefix across classes, functions, constants, capabilities, options, database identifiers, user meta, hooks, asset handles, DOM selectors, and cache identifiers. - Added object-level authorization for private order details, order-status changes, and signed invoice-link generation so users must be able to edit the exact requested order.
- Hardened REST validation so integer, list, status, email, search, and sorting inputs reject malformed or coercible values instead of relying on schema metadata alone.
- Fixed minimum-order-total filtering across both HPOS and legacy WooCommerce order storage while keeping pagination server-side.
- Hardened signed invoice request parsing and kept the expiring HMAC link as the exact public authorization mechanism.
- Prefixed both persistent object-cache groups and cache keys to avoid collisions with other plugins.
- Deferred local admin and invoice scripts to reduce render blocking without loading any remote resources.
- Removed version-control and internal review files from the distributable package.
- Re-audited compatibility-sensitive order queries and kept the published tested-version metadata conservative until full clean-install runtime verification.
1.3.3
- Rebranded the plugin display name as OrderFlash for WooCommerce.
- Removed manual translation loading so WordPress.org language packs load automatically.
- Strengthened direct-access guards and prepared the production package for directory review.
1.3.2
- Added native browser notifications with local plugin artwork for new orders while admin tabs are inactive.
- Kept background polling at the configured cadence and added immediate catch-up checks when a tab becomes active or reconnects.
- Added production WordPress.org icon and banner artwork featuring the golden live-order bell.
1.3.1
- Fixed live order detection with race-free REST event polling and automatic nonce renewal.
- Added immediate modal updates, unread badge increments, and bell animation for newly detected orders.
- Added Store API checkout event coverage for WooCommerce block-based checkout.
- Made the notification bell available on all WordPress admin pages by default.
- Changed the default polling interval to 15 seconds and allowed configuration from 10 to 300 seconds.
1.3.0
- Bundled Cairo variable WOFF2 subsets locally and removed the Google Fonts request.
- Added a lightweight local Font Awesome SVG subset with complete upstream licensing.
- Added cohesive icons to the WooCommerce submenu, settings navigation, panel, modal, actions, status badges, and printable invoice.
- Moved the full printable invoice layout from inline PHP into a cacheable stylesheet.
- Strengthened order-status mutation authorization with the WooCommerce order-edit capability.
- Added WPCS, PHP compatibility, PHPUnit integration, JavaScript syntax, and static asset/security audit tooling.
- Improved responsive settings navigation and repaired asset versioning for production and debug modes.
1.2.1
- Limited the premium metallic-gold treatment to the notification bell glyph while preserving the original trigger-button theme.
- Moved printable-invoice CSS and JavaScript into registered plugin assets.
- Removed the deprecated clipboard command fallback and completed a strict security and standards audit.
1.2.0
- Added responsive HTML new-order emails using the configured store logo.
- Added secure test-email and sandboxed live email-preview tools.
- Added an instant order-status selector to the Order Details modal.
- Added one-click copy controls for Billing and Shipping addresses.
- Added a premium three-dimensional gold notification bell and repositioned counter badge.
1.1.1
- Fixed the Store Logo settings-page fatal error caused by an unavailable admin helper.
- Added a bundled new-order sound and a browser autoplay recovery control.
- Strengthened printed invoice URL suppression and print-page rules.
- Required WooCommerce management permission in addition to plugin-specific REST capabilities.
1.1.0
- Added custom invoice logo and store address branding.
- Added printable invoice controls for customer notes, product SKUs, and VAT or tax details.
- Prevented signed invoice query parameters and link URLs from appearing in printed output.
- Improved invoice pagination and prevented product rows from splitting across printed pages.
- Reworked order-detail product tables into compact desktop tables and mobile-friendly stacked cards.
- Improved responsive behavior for the alerts panel, search controls, order cards, modal, settings, and invoice.
- Explicitly loaded the plugin text domain and regenerated the translation template.
1.0.2
- Fixed encoded currency symbols in order summaries, line items, and totals.
- Fixed printable invoice links when browsers enforce popup blocking.
- Made the Products section full-width and moved Billing and Shipping below it.
1.0.1
- Fixed Order Details scrolling across desktop, mobile, and nested WordPress admin layouts.
- Moved modal scrolling to the dedicated content region and improved touch scrolling.
- Prevented the modal’s own ancestor from being made inert.
1.0.0
- Initial WordPress.org-ready release.
- Added polling-based new-order events, desktop notifications, and optional sound.
- Added compact order summaries, server-side search and filters, and accurate pagination.
- Added per-user batched read states.
- Added safe detailed order previews and bounded additional fields.
- Added signed, expiring printable invoice links with privacy headers.
- Added HPOS compatibility, RTL support, translations, migrations, caching, and cleanup controls.
