Skip to content
Kapda StockDocs

Roles vs module access

How a member's role and their per-section access work together — the role is the starting point, and ticked sections give exactly what you choose, even above the role.

Two things decide what a team member can do:

  1. Role — Owner, Admin, Manager, Salesman or Cashier. It sets the starting point and the default for each permission switch.
  2. Limit which sections they can open (optional) — each section set to No access, View or View & edit. When it is on, the member gets exactly what you tick — less than the role, or more (for example POS for a cashier).

The server enforces this on every call, so a hidden section is backed by a real refusal, not just a missing link.

The role ladder#

RoleTierIn short
Owner (SUPER_ADMIN)4The person who signed up. Always full access; cannot be edited or locked out.
Admin (ADMIN)3Everything, including Team Members and Settings.
Manager (MANAGER)2Day-to-day work in every module, including POS. Can view but not change Team Members and Settings.
Salesman (SALESMAN)1Read-only.
Cashier (CASHIER)1Read-only.

Without limited sections, some sections need a minimum role — for example POS, Reports and Finance need Manager, and Team Members and Settings need Admin. See How the app is organised.

Access without a matrix#

A member with no custom matrix gets the access their role implies:

RoleEvery moduleTeam Members, Settings
Owner, AdminView & editView & edit
ManagerView & editView
Cashier, SalesmanViewView

The three presets#

The Team page offers three one-click levels. Each sets the matrix for every module at once:

PresetWhat it setsRole it assigns
Read only — View records, change nothingEvery module View, except Team Members and Settings which are No access (Dashboard is always at least View).Cashier
Read & write — Edit day-to-day recordsEvery module View & edit, except Team Members and Settings which are View.Manager
Full access — Everything, including the teamEvery module View & edit.Admin

Change any single cell and the member shows as Custom.

How a custom matrix sets the role#

Because every screen also checks the role, the app keeps the two consistent automatically when you save a matrix:

  • View & edit on Team Members or Settings → the member becomes Admin.
  • Otherwise, View & edit on any module → Manager.
  • Only View / No access everywhere → Cashier (read-only).

Those two modules carry a warning in the matrix because edit access to them is administrative power over the whole workspace.

Special modules#

ModuleRule
DashboardAlways at least View — the app cannot open without it.
Subscription (Billing)The matrix only hides the menu item. Billing itself is never blocked, so a business can always reach checkout to pay and reactivate.
Notifications, Recycle bin, SupportNot controlled by the matrix; they keep their own role rules.

When changes take effect#

Access is checked on every request, not stored in the member's session. A change applies within about a minute — and immediately on the member's next request in most cases — without them signing out.

Error messages#

MessageCause
You do not have access to this section. Ask an administrator to grant it.The module is No access for this member.
You have view-only access to this section.The module is View and the member tried to change something.
Your access level is read only — you can view records but not change them.The member's role is Cashier or Salesman.
Insufficient permissionsThe action needs a higher role (for example deleting from the Recycle bin needs Admin).
Access restricted — This section is limited to a higher role.Shown in place of a page opened by URL above the member's role.

Last updated 04/10/2026