See it in actionBook a demo →

Roles and permissions

Give each employee a role with granular permissions — build custom roles, clone existing ones, and see exactly which permission gates each feature.

Updated August 1, 2026

Granular, role-based access

The Roles & Permissions page holds granular role-based permissions for dashboard users. Every employee is assigned a role when you add them (see Employees, time tracking, and payroll), and the role decides what they can see and do — on the web dashboard and in the technician mobile app alike.

Permission-gated buttons and rows are simply hidden from people without the permission — for example, the "Void" button next to a recorded payment doesn't appear at all without the void-invoices permission. The mobile app gates its rows the same way: each row in the Route tab's actions list is permission-gated, and a heading only appears when at least one of its rows does, so a plain technician sees a much shorter list than an owner.

Create a custom role

The Roles & Permissions page listing built-in and custom roles with their granular permissions
  1. 1Open the Roles page.
  2. 2Click Create Custom Role.
  3. 3Give the role a name and description, optionally clone from an existing role as a starting point, then pick its permissions.
  4. 4Assign the role to employees on the Employees page — the role field is part of the Add Employee form.

Built-in roles include Owner, Administrator, Office Manager, and Bookkeeper. Some sensitive permissions belong only to Owners and Administrators by default — for example, connecting the company Stripe account is something an Office Manager or Bookkeeper cannot do.

What each permission gates

These are the permissions you'll run into most often around the product, and what each one unlocks:

PermissionWhat it gates
Manage phone & AI front deskChanging assistant settings, per-conversation assistant controls (auto-reply / draft-for-approval / take over), standing instructions, and the mobile app's "Forward Your Calls" screen. Owners and admins by default.
Respond to customer inquiriesReplying to texts in the Phone inbox and approving or dismissing the assistant's drafted replies.
Inbox read accessReading the Phone inbox. On mobile, roles with inbox read access see the Comms tab (texts, portal threads, and calls).
Approve schedulingApproving or declining the assistant's proposed appointments — under Pending Approvals on the Phone dashboard, inline on a lead's page, and on the mobile Approvals screen.
View website leadsSeeing the Leads section, including the "Leads" button in the mobile app's Route tab.
Manage website leadsLead quick actions: editing a lead's details, Convert to Customer, Schedule Walkthrough, Mark Contacted, Mark Converted, and Archive/Restore.
Manage API keysThe API page under Company Settings — creating and revoking API keys and reading the endpoint docs. Owners and admins by default.
Manage referralsThe Referrals page — both the Refer & Earn program and your own customer referral program. Owners and admins by default.
Connect the company Stripe accountConnecting Stripe to accept payments. Only Owners and Administrators have it by default.
Call customers from the web appThe "Call" button on a customer's page, which places a browser call showing the business number as caller ID (the company also needs a business number).
void-invoicesVoiding an invoice and voiding recorded manual payments — the "Void" button is hidden without it.
create-invoicesCreating custom invoices, including the "Create Invoice" button in the mobile app.
view-invoicesBrowsing invoices, including the mobile app's full invoice list and per-customer invoice cards.
update-customersRecording who referred a new customer via the "Referred by…" pill on the customer's page.
transferTransferring jobs between technicians and days, and the "Reschedule Stops" banner for missed stops on a closed route.
alerts (read)Viewing Technician Alerts — the mobile "Technician Alerts" card and the alerts shown inline on completion detail views.
alerts (manage)Acknowledging alerts and marking them resolved, including from the mobile app.
work-ordersCreating work orders from the mobile app's Route tab.

One special case: the Manage referrals permission is held only by the built-in Owner and Administrator roles. It does not appear in the custom-role editor, so it can't be added to a custom role — the Referrals page stays owner/admin-only.

How gating shows up day to day

  • On the web dashboard, actions someone isn't allowed to take are hidden, not greyed out — if a teammate says a button "isn't there", check their role's permissions first.
  • In the mobile app, the Route tab's actions list only shows the rows the role allows, grouped under headings that disappear entirely when none of their rows apply.
  • Field access follows the same rules — for example, working leads from a truck needs "View website leads", and approving an assistant-proposed booking from the phone needs "Approve scheduling".

Frequently asked questions

Why can't my office manager connect Stripe?

Connecting the company Stripe account is limited to Owners and Administrators by default — an Office Manager or Bookkeeper cannot connect Stripe. This is a deliberate safeguard on a sensitive action.

A button my teammate needs is missing. Is that a bug?

Usually not — permission-gated buttons and rows are hidden entirely when the role lacks the permission. Check their role on the Roles page and either switch them to a role that has it or create a custom role that does.

Can I start a new role from an existing one?

Yes. Create Custom Role lets you clone from an existing role, then adjust the name, description, and individual permissions from there.

Do permissions apply to the mobile app too?

Yes — the technician mobile app gates its rows the same way as the web dashboard. Each row in the Route tab's actions list is permission-gated, so a plain technician sees a much shorter list than an owner.

Related articles

Make Monday easier than last Monday.

30-day free trial. No credit card required. Cancel anytime.