Manager Compensation
Open Commissions → Manager in Thermal →
What it's for
Manager Compensation pays department managers a share of the margin they run — a progressive basis-point schedule against each department's P&L, plus an optional flat bonus and cap. It holds the pay schedules, the periodic runs that calculate what's owed, and the ledger of what's been approved.
Reach it from Team → Commissions in the sidebar, then the Manager
compensation tab, at /commissions/manager. The older
/manager-compensation address still works and redirects here.
Tabs
- Schedules — each manager's pay terms for a department.
- Runs — calculated compensation runs by period, with their status.
- Review — the entries on one selected run.
- Ledger — every entry ever calculated, across every run, in one flat list.
Panels and controls
Schedules
Each schedule pairs one Manager with one Department, an Effective date range, and a set of Progressive basis-point bands — each band applies its rate to the margin above its threshold, up to the next band, and at least one band is required. An optional Flat bonus and Cap round it out. Add schedule creates one; Edit opens it — manager and department can't be changed after creation, only deactivated and replaced. No compensation schedules yet is the empty state.
Runs
Run compensation calculates pay for every active schedule whose effective range covers a chosen period, straight from each department's P&L margin — the run starts Pending; nothing is paid until it's approved. Filter by status and date range. Approve locks a pending run in; Reverse on an approved run creates a new run with negated entries and auto-approves it, rather than editing history. No compensation runs is the empty state.
Review
Pick a run from Runs to see its entries: manager, department (linked to that department's P&L report), margin, revenue, cost, flat bonus, and the final compensation figure, plus which schedule produced it. No run selected and No entries on this run are the empty states — the latter means no active schedule matched a department with P&L data for that period.
Ledger
Every compensation entry ever calculated, newest first, independent of which tab you got here from. Export ledger / Export CSV downloads it. No compensation entries yet is the empty state.
What it accepts
| Field | Format | Required | Rule |
|---|---|---|---|
| Manager | Pick a manager | Yes | "A manager is required." |
| Department | Pick a department | Yes | "A department is required." |
| Effective from | Date | Yes | "A valid effective-from date is required." |
| Effective to | Date | No | "Effective-to must be a valid date."; "Effective-to must be after effective-from." |
| Basis-point bands | Threshold (cents) + rate per band | Yes, at least one | "At least one basis-point band is required."; "Invalid basis-point bands."; "Each band needs a threshold and a basis-point rate."; "Band thresholds must be non-negative whole cents."; "Band basis points must be non-negative whole numbers." |
| Flat bonus | Cents | No | "{field} must be a non-negative integer (cents)." |
| Cap | Cents | No | "Cap must be greater than zero, or left blank for no cap." |
| Period start / end | Date | Yes, to run | "A valid period start and end date are required."; "Period end must be after period start." |
How to configure it
- Departments settings define the department list a schedule can be assigned against, and whether a department is active.
- Job costing / P&L settings decide how revenue, cost, and margin are computed for each department — the same figures a compensation run reads.
- Payroll settings decide how an approved run's totals reach a payroll export.
Who can see it
This screen sits behind the Staff area.
Owners and office managers can open it. Dispatchers and technicians cannot — a manager's own compensation isn't something they self-serve here. The gate is checked on the server, not just hidden in the sidebar, so a direct link does not get around it.
The full role matrix is on Roles & permissions.