Roles and permissions
Shop owner, Location manager, Team leader, Cashier, Bookkeeper — who can do what.
Every member of your workspace has exactly one built-in role, and may additionally hold a custom job that adds permissions on top. A read-only version of this matrix also lives in the dashboard under Team → What each job can do, generated from the same permission table the server enforces.
The built-in roles
- Shop owner — full control. Each workspace has exactly one shop owner: the person who completed onboarding. Only the shop owner can invite or remove members, manage roles, manage updates to your website and API keys, accept or decline fee proposals, and request a payout wallet change.
- Location manager — runs the branches they are given: payment links, payments, reports and their staff. Cannot change payout or billing.
- Team leader — creates payment links for their location and views its payments. No reports, billing, team management, or settings.
- Cashier — creates and shares payment links and sees payments.
- Bookkeeper — read-only financial access. A bookkeeper can view payments, reports, and billing history, and change nothing.
Custom jobs
A teammate may also hold a custom job (dashboard: Team → What each job can do (custom jobs are at the bottom); the invite form calls it Custom role), which strictly adds permissions on top of their built-in role — it never takes any away. A few permissions can never be granted through a custom job: managing API keys, managing Checkout account, managing updates to your website, responding to fee proposals, and managing roles always stay with the owner.
Quick matrix
| Action | Shop owner | Location manager | Team leader | Cashier | Bookkeeper |
|---|---|---|---|---|---|
| View payments and links | Yes | Yes | Yes | Yes | Yes |
| Create payment links | Yes | Yes | Yes | Yes | No |
| Edit or cancel payment links | Yes | Yes | No | No | No |
| View reports and billing | Yes | Yes | No | No | Yes |
| Manage updates to your website | Yes | No | No | No | No |
| Manage API keys | Yes | No | No | No | No |
| Invite or remove team members | Yes | No | No | No | No |
| Accept or decline fee proposals | Yes | No | No | No | No |
| Request payout wallet change | Yes | No | No | No | No |
Managing updates to your website is owner-only: only the owner can add, edit, disable, or delete the addresses Zoyn sends updates to. A location manager can view them, open their delivery logs, and send test events.
Role checks are enforced by the server, not just hidden in the interface — a cashier cannot cancel a link even with a crafted request. Because a custom job can widen what is shown here, open a member from the team roster to see everything that member can actually do.
