Roles & Permissions
SparkShop uses a role-based access control system. Every employee is assigned a role that determines what they can see and do within the system.
Roles
| Role | Description |
|---|---|
| Admin | Full system access — manages employees, settings, catalogue, and all records |
| Advisor | Creates and manages job cards, communicates with customers, handles invoicing |
| Technician | Views and updates job cards assigned to them |
| Parts Manager | Manages the parts catalogue, stock levels, and supplier relationships |
| Apprentice | Supervised technician-in-training. Sees and works only on job cards assigned to them; cannot transition status, edit financials, or touch the catalogue |
| Estimator | Prepares quotes ahead of work being booked in. Creates/edits job cards and registers customers/vehicles; catalogue is view-only for pricing reference |
| Receptionist | Front-of-house check-in. Registers new customers/vehicles and views job card status to answer enquiries; no financials or catalogue access |
| Workshop Manager | Floor supervisor. Full operational control over job cards and customer/vehicle records, plus visibility into the team; no employee/permission administration |
| Warranty Clerk | Processes warranty claims against existing job cards — edits financials and status, view-only on customers, vehicles, and catalogue; cannot create or delete |
| Bookkeeper | Reconciles invoices and payments. Broad view-only access to job cards, financials, customers, and vehicles, plus PDF downloads; no operational edits |
Default Permissions Matrix
| Resource | Admin | Advisor | Technician | Parts Manager | Apprentice | Estimator | Receptionist | Workshop Manager | Warranty Clerk | Bookkeeper |
|---|---|---|---|---|---|---|---|---|---|---|
| Dashboard | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Job Cards | ✅ Full | ✅ Full | ✅ Assigned only | ✅ View | ✅ Assigned only | ✅ Create/Edit | ✅ View | ✅ Full | ✅ Edit | ✅ View |
| Financial (job card) | ✅ Full | ✅ Full | — | — | — | ✅ View | — | ✅ Full | ✅ Full | ✅ View |
| Customers | ✅ | ✅ | — | — | — | ✅ Create/Edit | ✅ Create | ✅ Create/Edit | ✅ View | ✅ View |
| Vehicles | ✅ | ✅ | — | — | — | ✅ Create/Edit | ✅ Create | ✅ Create/Edit | ✅ View | ✅ View |
| Parts | ✅ | ✅ View | — | ✅ Full | — | ✅ View | — | ✅ View | ✅ View | — |
| Services | ✅ | ✅ View | ✅ View | ✅ Full | ✅ View | ✅ View | — | ✅ View | ✅ View | — |
| Suppliers | ✅ | — | — | ✅ Full | — | ✅ View | — | ✅ View | ✅ View | — |
| Employees | ✅ | — | — | — | — | — | — | ✅ View | — | — |
| PDF Downloads | ✅ | ✅ | — | — | — | ✅ | — | ✅ | ✅ | ✅ |
| Notifications Preferences | ✅ | — | — | — | — | — | — | — | — | — |
| Role Permissions | ✅ | — | — | — | — | — | — | — | — | — |
These are the defaults applied on fresh install — admins can adjust any role's permissions via the matrix described below.
Managing Roles & Permissions
Administrators can customise the permission matrix via the Role Permissions page under the Settings group in the navigation.
Permissions are configured using a toggle grid — each role is a column, each permission is a row. Toggle individual permissions on or off and save. Changes take effect immediately.
Managing Employees
Employee accounts are created under Employees in the navigation. Each employee record can be linked to a Laravel user account, which grants them login access to the system.
To create a new employee with login access:
- Go to Employees and click New Employee
- Fill in their name, email, phone, and role
- In the User Account field, either select an existing user or create a new one
- Save the record
The employee can now log in at /admin with their user account credentials.
Technician & Apprentice Visibility
Technicians and Apprentices only see job cards that have been assigned to them. This keeps their view focused and prevents information overload. All other roles see the full workshop record set (subject to their resource permissions above).