The permission matrix
A custom role is where 32 resources in ten groups cross seven actions: read, create, update, delete, export, price update, status update. Combinations that mean nothing cannot be ticked; reports and analytics stay read-only.
A permission is not one switch: the role's matrix, the user's branch scope and the manager PIN asked for at the moment of the action are set independently. Thirty-two resources, seven actions — and what somebody may NOT see is a decision too.
The custom role editor asks two questions at once: which resource, and which action. The permission sits in the cell where they cross — 32 resources in ten groups, seven fixed actions. A column header opens that action across every resource; a row header opens that resource's whole row.
Orders, payments, products, stock, staff, reports, devices. 32 resources, gathered under ten headings.
Read, create, update, delete, export, price update, status update. The seven columns are the same for every resource.
A dashed cell is not empty, it is closed: reports and analytics are read-only, staff and roles take no price or status action. The grid has a shape.
Three groups are drawn; the editor holds ten groups and 32 rows. The counter in the header counts ticked cells.
Custom roles live on a page of their own: each row carries the role's name, how many people hold it and the resources its permissions touch. A role with no permission cannot be saved — whoever held it could open no page at all.
Floor, payments and end of day. Cannot add staff.
Devices, screens and printer settings. Sees no sales data.
Kitchen display and stock counts only.
Floor, payments and end of day. Cannot add staff.
Devices, screens and printer settings. Sees no sales data.
Kitchen display and stock counts only.
A user's access window is written day by day: a start and an end for each day, one time zone, and an end date if you want one. Outside the window the admin panel locks.
A user's authority does not come from one place. That is why the team list writes four fields side by side: what the role can do, where the scope holds, when the window is open, and the state of the PIN at the till. All four are set independently.
Revoking access is reversible: the person's sign-in account and their roles in other organisations are untouched.
Where authority is set and where it is enforced are not the same screen — one is in the panel, the other at the till.
The role's permission matrix, and the branches a PIN will hold in.
A custom role is where 32 resources in ten groups cross seven actions: read, create, update, delete, export, price update, status update. Combinations that mean nothing cannot be ticked; reports and analytics stay read-only.
The till PIN is four digits, and it belongs to a person and a branch rather than to a person. You choose the branches it holds in when you set it. It has three states — set, none, locked — and a manager opens a locked one.
Which action asks for approval, and how that approval is given.
Order void, payment refund, discount, comp, on-the-spot price change, cash drawer and charging a house account. Seven actions, each opened as its own branch policy, and all seven off by default.
The till reads the branch policy first: if the feature is off, the action is refused without asking for a PIN. If it is on, the manager approval sheet opens, verifies on the fourth digit, and only manager roles pass it.
We list your current team, write each role's permission matrix with you, and set the branch scopes and the till PINs. The average business goes live in 14 days.