Roles and permissions
Admin → Staff → Roles and permissions
Availability and access
Requires role-management permission; restaurant scope always applies.
Create a role
Open the role library, create a named role and select the required permissions. Save before assigning employees.
Assign and verify
Assign the role from the employee profile. Verify the permitted pages and actions with that employee; menu visibility alone is not proof of authorization. The Verifone Terminal deposits screen and its batch-changing actions require payments.manage; payments.view is not enough.
Change or retire a role
Review assigned employees before changing permissions or deleting a role. Respect protected system/owner roles and check resulting access after saving.
Access the new controls
Settings → Usage and quotas displays this restaurant’s Google/Geoapify allowances and usage with settings view/edit permission. Fallback credits and deliveries submitted for optimization are distinct from request counts. Foody adjusts limits without resetting counters. See limits and renewal.
POS code at staff activation
Staff activation checks the permissions assigned in this restaurant, including custom roles: orders.manage or payments.manage requires a private POS code. Read-only couriers and kitchen-only roles do not need one. Existing unused invitation links apply the same current rule. Changing a role label, courier address or route destination does not grant POS permissions. See activation and recovery.
Authorize end-of-day closing
End of day requires payments.manage on an already enrolled POS with an active personal PIN session. Including a cash drawer also requires orders.manage. Permissions are checked again on each write; opening a screen or reading a capability grants none. Transmission and finalization remain bound to the original actor and relevant POS. Changing role or signing into another device does not transfer an operation. See the steps and recovery.