Permissions control which buttons, fields, and screens each staff member can see and use in Rundoo. They sit on each person's record so two people sharing a register can have entirely different access — a cashier who can ring sales but can't view costs, a manager who can void and refund but can't edit company-level settings, an admin with everything on.
In the Admin mode, open Staff in the left sidebar, click a staff member, and open the Permissions tab.

The panel groups the permissions Rundoo ships into six sections that mirror the parts of the product they gate: Admin, Blocks, Customer Management, Inventory, Point of Sale, Reporting. Each section header carries Enable section / Disable section actions that flip every checkbox in that section together; All permissions at the top flips every section at once.
The top of the staff list shows each person's permission count as a fraction — e.g. 28 of 42 — so you can see at a glance who's a full admin and who's near a baseline cashier. Total today: 42 permissions, across the six sections.
Changes save per-checkbox; there's no Save button on this tab. Reload the panel after a change to confirm it stuck.
<aside> 💡 Permissions and POS security are separate layers. The Permissions tab decides whether the staff member can see the action at all; POS security decides whether they need a manager's PIN or login key to execute it. Voids, price overrides, refund-to-card, and below-cost sales typically need both — the permission turns the action on, POS security gates the actual click.
</aside>
Every row in the tables below was checked by toggling the specific permission OFF on a dedicated test staff member (PERM, [email protected]), re-logging PERM into demo.rundoo.app so the client authorization cache reflects the new state, navigating to the gated surface as PERM, and observing what a real user would see in the UI. Nothing here was probed via direct API calls or network sniffing — every verdict comes from a screenshot or DOM-state observation. The Verified column captures the kind of UI evidence that grounds each row:
Four particularly clean before/after pairs from the harness — the kind of contrast that drove the ✓ render tag — are shown below.
Custom prices, promotions, spiffs — ON (left) vs OFF (right): Add custom price / Import custom prices disappear


Generate, import, deactivate gift cards — ON vs OFF: Generate / Import buttons and pending-card numbers disappear