Fixed: guests returning from external payment gateways (PayFlex, PayGate, etc.) now correctly identified in Live View on the order-received page β email injected server-side to survive cross-domain sessionStorage clearing.
2.3.0
Fixed: email template blocks now declared as PHP string variables to satisfy WordPress.org static analysis (not page output).
Security: REST API permission_callback now enforces WooCommerce key permission scope β read keys cannot access write endpoints and vice versa.
Changed: quiz shortcodes renamed to [ssco_quiz] and [ssco_quiz_embed] (4-character prefix). Legacy [ss_quiz] and [ss_quiz_embed] kept as aliases for backwards compatibility.
Updated: admin settings page redesigned with StoreSignals branding, animated hero, and accurate feature descriptions.
2.0.0
Submitted to WordPress.org plugin directory.
Added GPL-2.0-or-later licence header and licence URI.
Added Text Domain and Author URI plugin headers.
Added register_uninstall_hook β uninstalling now removes all plugin options and drops the local cart table.
Fixed: local cart table currency column defaulted to USD instead of empty string.
Fixed: CartCaptureController now always writes the store’s configured currency when creating cart records.
Changed: “Powered by StoreSignals” chat widget credit is now opt-in (default off) to comply with WordPress.org embedding guidelines.
1.9.4
Fixed quiz overlay IIFE missing closing })() β quiz link now works correctly on all pages.
Fixed: quiz favicon logo flash-and-disappear on mobile caused by 404 fallback /favicon.ico.
Heartbeat script: added keepalive: true to fetch calls for reliable page-navigation pings.
1.9.3
Added live quiz participant tracking in the Live View dashboard.
Added per-session quiz progress pings via POST /api/quiz/ping.
Added “Add routine to cart” and “Add all to cart” buttons in quiz results.
Fixed quiz key-case mismatch causing only the kit recommendation to appear (AI returned “Morning”, JS expected “morning”).
1.9.2
Added pinch-to-zoom prevention on the quiz overlay for mobile browsers.
Live chat widget now loads correctly via wp_enqueue_scripts.
Quiz overlay now passes ?sid=SESSION_ID to the iframe for session correlation.
1.9.1
Session deduplication in Live View β the same visitor no longer appears multiple times.
Cart KPI stats added to Live View (visitors with active carts, visitors in checkout).
1.9.0
Added product quiz shortcodes: [ss_quiz] and [ss_quiz_embed].
Added AI-powered skin analysis in quiz step 3.
Added quiz live-tracking via Redis cache (no schema changes required).
1.8.1
Idle detection for heartbeat β parked tabs no longer generate unnecessary pings.
Persistent visitor_id cookie for cross-session identity.
1.8.0
Add-to-cart event tracking via native WooCommerce hooks (no Google Tag Manager required).