The three built-in roles cover most vendors, but as you grow you'll want roles that match exactly how your business divides work. The cleanest way to learn the custom-role builder is to build a real one — so in this guide we'll create a Procurement Manager: someone who orders stock and enters purchase bills, but who must never see what you sell at or how much you make. Then we'll knock out a read-only Auditor role in a couple of minutes.
Plan requirementCustom roles are available on Growth and Enterprise plans. On the Starter plan you have the three built-in roles — Admin, Sales Rep, and Installer — covered in Team & roles.
Overview
A custom role is just a name plus a set of toggled permissions, organised into the five categories — Sales, Inventory, Finance, Installations, and Settings. You enable what the role should do and leave everything else off. Default-deny: anything you don't switch on stays hidden.
public/images/docs/custom-roles-example.pngThe goal
Picture Ramesh, who manages your warehouse and supplier relationships. He needs to:
- See and edit the product catalog and stock levels, so he knows what to reorder.
- Create and view purchase bills from your distributors.
But Ramesh must not be able to:
- See the sale price you quote customers or your margins — purchase cost is his world, profit is not.
- Open customer financials, quotations, or invoices.
- Touch company settings, branding, or the team.
None of the three built-in roles fit: a Sales Rep sees quotations, an Installer sees nothing useful for purchasing, and an Admin sees everything including margins. So we build a new one.
Create the role
- Open Settings → Team → Roles.
- Click New role.
- Name it Procurement Manager and, optionally, add a short description like "Manages stock and purchase bills; no sales or margin access."
- Click Create to open the permission editor for the new role.
Set the permissions
The role starts with everything off. Now switch on only what Ramesh needs, category by category:
- Under Inventory, enable View catalog and Edit products / stock.
- Under Finance, enable only the purchasing permissions — View purchase bills and Create purchase bills. Leave View margins and Record customer payments switched off.
- Under Sales, leave everything off — no view quotes, no create quotes, no customer financials. This is what hides your sale pricing.
- Under Installations, leave everything off (Ramesh isn't on the roof).
- Under Settings, leave everything off so he can't change company config or invite users.
- Click Save role.
Purchasing lives under FinanceIt's tempting to think purchase bills belong to Inventory, but in evSuryam they're a Finance permission because they carry cost figures. The trick is that purchase-cost permissions and margin permissions are separate toggles — so you can grant the first and deny the second, which is exactly what hides your selling margin from a procurement role.
The permission table
Here's the finished Procurement Manager role, permission by permission. Use it as a checklist when you build yours.
| Permission | Procurement Manager |
|---|---|
| Inventory: view catalog | Enabled |
| Inventory: edit products & stock | Enabled |
| Finance: view purchase bills | Enabled |
| Finance: create purchase bills | Enabled |
| Finance: view margins | — Disabled |
| Finance: record customer payments | — Disabled |
| Finance: view GST reports | — Disabled |
| Sales: view quotations | — Disabled |
| Sales: create quotations | — Disabled |
| Sales: view customer financials | — Disabled |
| Installations: all | — Disabled |
| Settings: all | — Disabled |
Assign and test
Creating the role doesn't give anyone access — you still assign it to people. Then verify it does what you intended before trusting it.
- Go to Settings → Team and either invite Ramesh fresh (see Getting started for the invite flow) or open his existing record and change his role to Procurement Manager.
- Ask Ramesh to log in (or use an incognito window with a test account).
- Confirm he can open the catalog, edit stock, and add a purchase bill.
- Confirm he cannot see the Quotations menu, sale prices, the margin column on the catalog, or Settings.
Always test with a real loginPermissions are enforced on the server, including on exports and PDFs — but the only way to be certain a role behaves is to log in as someone who holds it and try to reach the screens you meant to block.
A second example: Auditor
At GST filing time your CA needs to look at everything but should never change anything. A read-only Auditor role takes two minutes:
- Create a new role named Auditor.
- Enable every view permission — view quotations, view invoices, view purchase bills, view GST reports, view margins, view catalog.
- Leave every create / edit / delete permission off, and leave all of Settings off.
- Save, assign it to your accountant, and revoke it after filing season if you prefer.
The result: your CA can pull every number they need for the return without any risk of accidentally editing an invoice or changing a setting. For the full picture of how roles and financial visibility work together, head back to Team & roles.