Recipe

Seat‑Based Billing UX

How Meridian handles per‑seat licensing, overage, and graceful downgrade inside the dashboard.

Seat Model

Every license has a seat cap set at purchase. A seat is a unique machine fingerprint. When a user activates on a new device, Meridian checks current usage against the cap.

Activation Flow

  1. Loader sends hardware fingerprint to KeyAuth.
  2. KeyAuth returns seat_count and seats_used.
  3. If seats_used < cap, activation proceeds. Otherwise the loader surfaces an overage prompt.

Dashboard UX

The license card shows a live seat meter. When the user hits the cap, a banner offers an upgrade path. Admins can revoke individual seats from the device list.

Seats3 / 5

Overage Handling

When a new activation would exceed the cap, the loader displays a blocking dialog. The user can either remove an existing seat via the dashboard or purchase an upgrade. No automatic eviction occurs.

Downgrade Path

If a subscription downgrades, the oldest unused seats are soft‑revoked first. Active seats remain until the next heartbeat check, then the loader surfaces a seat‑limit‑reached state.