Permissions matrix

Last verified: 2026-05-19

Permissions matrix

How business roles map to capabilities. Staff assignments may further restrict access within an organization.

Source (code): apps/saas2/lib/services/authorization-manager.ts — update this article when that file changes.

Platform business roles (hierarchy)

RoleHierarchyScope
Staff1Organization / assigned sub-orgs
Manager2Staff + extended POS, inventory, limited cash/reporting
Admin3Full organization management
Superadmin4Entire platform (resource: *, action: *)

Note: Dashboard login role is staff | admin | superadmin | customer. Manager is a permission tier applied to staff users, not a separate login role.

Resource × action summary

ResourceStaffManagerAdminSuperadmin
posread, create_order, update_order (limited), cancel_order (pending)+ void_order, refund_order (capped)(via org config)*
tablereadreadmanage*
productreadupdatemanage*
inventoryread, update (capped adj.)updatemanage*
customerread, createread, createmanage*
staffread, schedule (own sub-org)manage, invite*
cashcount, deposit (capped)manage*
paymentmanage*
financialmanage*
reportread (daily/shift)read, exportmanage*
analyticsmanage*
organizationmanage*
suborganizationmanage*
categorymanage*
systemmanage*
securitymanage*

Staff dashboard vs this matrix

The Staff dashboard exposes many routes (orders, accounting, security, etc.). Visibility in the UI is controlled by:

  1. Organization staff role templates and per-user permissions (/admin/staff/roles, /staff/staff/roles).
  2. Feature flags and subscription plan limits.

If a staff user cannot see a menu item documented in the KB, check admin-configured permissions before assuming a product bug.

Customer role

Customers access customer dashboard routes (/customer/*) and storefront (/store/{slug}). They do not use the staff/admin permission resources above.

Superadmin role

Superadmin routes live under /superadmin/*. Document platform operations in docs/kb/superadmin/ with audience: internal until explicitly published for partners.

Related articles

Loading footer...