Worked example: October payroll
This follows Bright Haven Services from setup to an approved October run. Every number matches the other pages of this guide. Practise in a training tenant and use the IDs your own system returns.
Before you start
| Check | Where | Bright Haven |
|---|---|---|
| Payroll, Employee, Party and Organization are on | Administration | Yes |
| Employee feature Compensation is on | Administration | Yes |
| Each employee has one employment, assignment and pay agreement covering October | Employees | Amira: annual 36,000 GBP monthly. Omar: hourly 12.50 GBP monthly. |
| Three people with the right permissions | Administration | Farah, Ben, Carol (see Access) |
Step 1: set up (Farah, once)
Payroll groups → Create payroll group:
| Code | Name | Employer | Country | Currency | Frequency | Calendar | Jurisdiction |
|---|---|---|---|---|---|---|---|
MONTHLY-LDN | Monthly London | Bright Haven – Head Office | GB | GBP | Monthly | GB-MONTHLY | GB-MANUAL |
Component versions → Create component version three times:
| Code | Name | Kind | Tax treatment | From | Rule version |
|---|---|---|---|---|---|
OVERTIME | Overtime | Earning | Taxable | 2024-01-01 | V1 |
PENSION | Employee pension | Deduction | Pre tax | 2026-04-01 | 2026-1 |
ER_PENSION | Employer pension | Employer contribution | Not applicable | 2024-01-01 | V1 |
Step 2: create the run (Farah)
Pay runs → Create pay run: Run number 2026-10, Payroll group Monthly London, Period start
2026-10-01, Period end 2026-10-31, Planned payment date 2026-11-02, Notes "October payroll".
Status DRAFT, totals Uncalculated.
Step 3: capture employees (Farah)
| Employee | Service from | Service to | Quantity | Divisor | Explanation |
|---|---|---|---|---|---|
| Amira Hassan | 2026-10-01 | 2026-10-31 | 1 | 12 | Annual salary paid in 12 monthly instalments |
| Omar Haddad | 2026-10-01 | 2026-10-31 | 160 | 1 | Timesheet TS-2026-10-011, 160 h approved |
Step 4: add lines (Farah)
On Amira's entry:
| Component | Quantity | Rate | Source reference | Reason |
|---|---|---|---|---|
Overtime V1 | 10.5 | 21.6346 | OT-2026-10-001 | 10.5 overtime hours approved 30 Oct |
Employee pension 2026-1 | 1 | 150 | PEN-2026-10-001 | Pension 5%, assessed externally |
Employer pension V1 | 1 | 90 | ERPEN-2026-10-001 | Employer pension 3%, assessed externally |
Omar has no lines.
Step 5: calculate (Farah)
calculate → reason "October inputs complete" → Confirm calculate.
| Employee | Base | Earnings | Gross | Deductions | Net | Employer contrib. | Employer cost |
|---|---|---|---|---|---|---|---|
| Amira | 36,000 × 1 ÷ 12 = 3,000.00 | 10.5 × 21.6346 = 227.16 | 3,227.16 | 150.00 | 3,077.16 | 90.00 | 3,317.16 |
| Omar | 12.50 × 160 ÷ 1 = 2,000.00 | 0.00 | 2,000.00 | 0.00 | 2,000.00 | 0.00 | 2,000.00 |
| Run | 5,227.16 | 150.00 | 5,077.16 | 90.00 | 5,317.16 |
(10.5 × 21.6346 = 227.1633, rounded to 227.16.)
Step 6: review (Ben)
Ben opens both statements and checks:
| Check | Amira | Omar |
|---|---|---|
| Snapshot matches the HR record | Annual 36,000, Monthly | Hourly 12.50, Monthly |
| Quantity and divisor match the explanation | 1 ÷ 12 for monthly | 160 hours = timesheet |
| Each line has a source reference and reason | Yes | (none) |
| Net is not negative | 3,077.16 | 2,000.00 |
review → "Checked against timesheets and pension schedule" → Confirm review. Status REVIEWED.
If Farah had tried this, it would be refused: "Reviewer/approver must differ from payroll preparers".
Step 7: approve (Carol)
Carol checks the totals: gross 5,227.16, net 5,077.16, employer cost 5,317.16.
approve → "Approved for payment on 2 November" → Confirm approve. Status APPROVED.
Step 8: after approval
Payroll's job is done. Outside Payroll, Bright Haven:
- pays Amira 3,077.16 and Omar 2,000.00 through its bank;
- pays the pension provider 150.00 + 90.00 = 240.00;
- books the payroll cost in its accounts.
Variation: a correction before approval
At step 6 Ben spots that Amira's overtime should be 8 hours.
| Step | Who | Action |
|---|---|---|
| 1 | Farah | reopen "Overtime hours wrong: 8 approved" → DRAFT |
| 2 | Farah | Remove the overtime line, reason "Replaced by corrected line" |
| 3 | Farah | Add Overtime: 8 × 21.6346, source OT-2026-10-001-R1 |
| 4 | Farah | calculate → Amira gross 3,173.08, net 3,023.08; run gross 5,173.08 |
| 5 | Ben | review (allowed: Ben changed nothing) |
| 6 | Carol | approve |
Variation: November with a pay rise
Amira's salary rises to 39,000 from 16 November. Capture two entries in run 2026-11, split at
the change (November has 30 days; Bright Haven agreed a basis of 12 × 30 = 360):
| Entry | Service | Quantity | Divisor | Base |
|---|---|---|---|---|
| 1 | 1–15 Nov | 15 | 360 | 36,000 × 15 ÷ 360 = 1,500.00 |
| 2 | 16–30 Nov | 15 | 360 | 39,000 × 15 ÷ 360 = 1,625.00 |
Capturing one entry for the whole month is refused: "Payroll service period requires exactly one covering compensation record; split periods at HR changes".
Next: Help and troubleshooting.