Platform

Notifications operators actually act on

Two priorities, real read state, channel routing per event, and PRIMARY/SECONDARY actions that link to the exact record. The same bell, popover, and inbox — driven by the same notification model.

Routing

Per-event channel + priority — set in settings, honored everywhere

Each notification type is configured independently. Urgent webhook failures land in-app and email; quieter cycle-count completions email only. Operators see the same routing in the bell, the inbox, and the email subject prefix.

Notification preferences

Per role
Per event
EventPriorityChannel

Order placed on hold

Sent when an order moves to ON_HOLD with a reason like inventory or address validation.

URGENT
In-app

Webhook delivery failed

Sent on the second consecutive failure for a webhook endpoint, before retries exhaust.

URGENT
In-app + email

Cycle count completed

Sent to the assignee and supervisor when a cycle count run finishes with discrepancies.

STANDARD
Email

Purchase order fully received

Sent to the buyer and warehouse manager when a PO closes with all units received.

STANDARD
In-app

Notification model

What's behind the bell, in detail

A real per-user record with priority, channel, structured description, and typed actions. Same model drives the bell, the inbox, the popover, and the email.

STANDARD vs URGENT priority

Two priority levels with distinct iconography in the bell, the inbox, and the email subject line. Operators can scan urgent items first without filtering.

Per-event channel routing

Each notification type (order on hold, webhook failure, cycle count complete) routes independently to in-app, email, or both — set per role.

Actionable, not advisory

Every notification carries action links (PRIMARY + SECONDARY) that drop the operator on the exact record — order, fulfillment, cycle count, webhook delivery.

Webhook delivery + retry visibility

Webhook failures notify on the second consecutive failure with the endpoint, response code, retry schedule, and a link to the delivery log.

Read / unread state, real

Read state is a per-user flag, not a UI hack. Marking read in the bell, the inbox, or the popover is the same write to the same record.

Settings live next to the work

Notification preferences are a real settings page operators reach from the same nav as warehouses, members, and integrations.

Notifications are produced by automation rules and platform events. The same record is rendered in the bell, the inbox, and the email — same PriorityIcon, same description parser.

Site-wide notifications can target every member of a team for outages or maintenance windows — set on the same record with a single flag.

Bring your noisiest alert to a demo

We'll route it through the bell, the email, and the popover and show you what your operators would actually see.

Schedule a Demo