Skip to main content

Subscription grid

Path: Byte8 → Stock Radar → Subscriptions.

A flat listing of every row in byte8_stock_radar_subscription — for support staff investigating "why didn't I get an email?" tickets, and for compliance / GDPR responses.

Columns

ColumnSourceFilter
IDentity_idYes (text)
Product IDproduct_idYes (text)
Parent IDparent_product_idYes (text)
Storestore_idYes (text)
EmailemailYes (text)
Customer IDcustomer_idYes (text)
StatusstatusYes (select: pending / notified / cancelled / bounced)
Createdcreated_atYes (date range)
Notifiednotified_atYes (date range)

The grid is read-only by design — admins shouldn't be editing subscriber emails. To cancel a subscription on the customer's behalf, use the customer account "Stock Notifications" page (impersonate via standard admin → customer login), or run an SQL update against byte8_stock_radar_subscription.status = 'cancelled'.

Common queries

"Why didn't this customer get notified?"

Filter by Email and Status = pending. If you see a row, the dispatch may be queued but not yet sent — check the dispatch table:

SELECT d.*, s.email
FROM byte8_stock_radar_dispatch d
JOIN byte8_stock_radar_subscription s ON s.entity_id = d.subscription_id
WHERE s.email = 'customer@example.com' AND d.status != 'sent'
ORDER BY d.scheduled_at DESC;

"How many people are waiting on SKU-12345?"

For an aggregate view, use the Demand heatmap instead — that's exactly what it's for.

"Cancel all subscriptions for this email" (GDPR delete by email)

UPDATE byte8_stock_radar_subscription
SET status = 'cancelled'
WHERE email_hash = SHA2(LOWER(TRIM('customer@example.com')), 256);

The lookup uses email_hash (indexed) — see the GDPR page for the full deletion playbook.

ACL

Permission resource: Byte8_StockRadar::subscription — under System → Permissions → User Roles, you can grant view access to a support team without giving them the full Stock Radar configuration permission (Byte8_StockRadar::config).