Fixed: TrackKar integration — plugin detection now uses correct constant (DANGO_TRACKKAR_VERSION); courier and tracking ID now correctly auto-fill in the Flag modal
Improved: New-order admin email now shows cancelled/failed counts and pending/on-hold counts from Customer Order History alongside the badge
Improved: SafeShip section in admin email now shows risk tags, full notes (up to 200 chars), and the flagged phone number
Improved: At-Risk and Loyal COH badges in email are now colour-coded for immediate visibility
1.11.0
Added: TrackKar integration — courier name and tracking ID auto-populate in the Flag Customer modal when TrackKar plugin is active
Added: SafeShip auto risk check now available for the store owner’s own account (previously only configurable for other stores)
Fixed: SafeShip result now cached server-side in PHP — repeat order opens show the cached result instantly with no AJAX call
Fixed: API error responses no longer cached — a transient failure does not suppress the auto-check on the next order open
Fixed: SafeShip result now cached to order meta using save() for full HPOS compatibility
Fixed: WP.org PHPCS compliance — late escaping, wp_safe_redirect, wp_strip_all_tags, esc_sql on table names, phpcs:ignore for legitimate plain-text email output
1.9.10
Fixed: “Role does not allow flagging” error for Super Admin and Editor roles
Fixed: whoami API now correctly returns flagging permissions (can_add_direct, can_request)
Cache key bumped to force fresh permission check on first page load after update
1.9.9
Fixed: “Unknown column t.is_active” error on Plugins page
Fixed: Superadmin accounts with legacy role name can now flag customers from plugin
Added: On-demand billing/subscription info in WooCommerce > SafeShip Pakistan settings
Updated: Plugin name to SafeShip Pakistan
1.9.8
Billing status displayed in plugin — suspended accounts see a payment notification with a direct link
whoami API endpoint now returns billing info (plan, next bill date, payment URL)
Product name updated to SafeShip Pakistan
1.9.7
Risk tags and courier list are now included in the page at load time — no extra server requests when the flag modal opens
Tags cached for 24 hours per store, couriers cached for 6 hours per store (WordPress transients)
Hardcoded fallback courier list used if server is unreachable
1.9.6
Courier list now reflects all couriers added in the server dashboard, not just a hardcoded list