Payroll
1. Overview
Section titled “1. Overview”The Payroll module handles the full payroll cycle — from timesheet collection through payroll computation and posting — along with complete employee records management and a self-service employee portal.
2. Key Concepts
Section titled “2. Key Concepts”-
Payroll Period — A defined time window (e.g., bi-weekly, semi-monthly) for which employees are paid. Each payroll period has a start date, end date, and check date. Payroll statements are grouped by period.
-
Timesheet — A record of an employee’s hours worked during a payroll period, broken down by day and entry type. Timesheets can be allocated to jobs and work orders for cross-module cost tracking. They must be approved before syncing to payroll.
-
Payroll Statement — A single employee’s pay calculation for a payroll period. Contains earnings (regular, overtime, holiday, etc.), deductions (taxes, insurance, 401k), and accrual usage. Each statement must be approved before the payroll run.
-
Earning Type — A classification for compensation (e.g., Regular, Overtime, Holiday, Commission). Each earning type has a code, a GL account, a rate multiple (e.g., 1.5× for overtime), and tax treatment settings.
-
Deduction Type — A classification for payroll withholdings (e.g., Federal Tax, Health Insurance, 401k, Garnishment). Each deduction type has a code, a GL account, and settings for pre-tax treatment, FICA exemption, and employer vs. employee responsibility.
-
Accrual — A running balance of earned time off (Vacation, Sick, PTO). Accruals track a running balance that is adjusted on payroll statements. When an employee uses PTO, the accrual balance is reduced on their payroll statement.
-
Direct Deposit Split — Employees can split their net pay across multiple bank accounts by percentage or flat amount. The ACH file generated after payroll run includes all split instructions for the bank.
-
Time Clock — A browser-based (desktop) or mobile clock-in/clock-out interface for employees. Employees select a pay type, clock in to start tracking time, and clock out when finished. The system captures timestamps, geolocation, and calculates hours and amounts. Time clock entries feed into timesheets for payroll processing.
3. How It Connects
Section titled “3. How It Connects”Upstream — Where Payroll gets its data:
- Timesheets → Approved timesheets are synced to payroll statements via the Sync Timesheets action. During sync, timesheet entries are aggregated by earning type, rate, and tax/GL settings into earning lines on the employee’s statement — entries sharing the same earning type and rate combine into one line — with overtime premiums added as separate lines. When Link Service Labor to Time Clock is enabled, each work-order time entry is additionally split by GL account: the portion matching the cost recorded on the work order’s linked labor lines posts against the Accrued Service Wages Ledger (netting out the accrual that work-order billing posts there), and any remainder posts against the unapplied labor account. Only labor rows that have been clocked out are included in the split; a row still on the clock stays editable and its time remains in unapplied labor.
- Service (Work Orders) → When Link Service Labor to Time Clock is enabled in Settings, technicians clocking in and out on work orders from the mobile app create timesheet entries that are linked to the work order’s labor cost lines. When it is disabled, mobile work-order clock-ins create labor cost lines only, without timesheet entries (work-order-linked time can still be entered manually on timesheets).
- Job Costing → Timesheet entries allocated to jobs feed labor cost tracking. Syncing creates the payroll earning line on the statement; when the payroll is run (processed), each job-allocated, post-to-GL timesheet entry also creates a job cost entry (with labor hours and overhead).
Downstream — Where Payroll sends its data:
- General Ledger → Running payroll posts GL entries: debit the configured wage expense accounts for earnings, debit the configured employer tax accounts for employer contributions, credit the configured payroll-accrual (clearing) account for net pay (settled to the bank account when checks/ACH are issued), and credit the configured tax liability accounts for withholdings.
- Job Costing → Job-allocated timesheet hours create labor cost entries on the job, appearing in the Actual vs. Estimate comparison. An employee’s hourly rate × hours worked flows as a labor expense.
- Bank (ACH) → The ACH file (downloaded on demand from Previous Payrolls → Download ACH File) contains direct-deposit instructions only for employees set up for direct deposit, ready for bank submission. Employees paid by check are excluded from the ACH file and receive printed checks instead.
Key Integration Point — Timesheet-to-Job-to-GL Flow: When Mike Torres logs 8 hours on Job J-1050 via his timesheet, the system creates three connected records: (1) a timesheet entry for 8 hours, (2) a payroll earning on his statement for 8 hrs × $30/hr = $240, and (3) a job cost entry on J-1050 for $240 of labor. Processing the payroll posts several separate balanced GL documents rather than one combined posting: a per-employee check document (debiting each earning’s GL account for the gross wages, crediting the withholding liability accounts for the deductions, and crediting the payroll-accrual account for net pay; for employees paid by check, a paired posting then debits the payroll-accrual account and credits the bank account) plus a separate “Payroll Job Hours Posting” document for each job-allocated timesheet entry (with its own debit/credit pair and any overhead), and “OT Premium Job Allocation” documents where overtime premiums are redistributed to jobs.
4. Compute Payroll
Section titled “4. Compute Payroll”Navigate to Payroll → Compute Payroll to process payroll for a period.
Header Controls
Section titled “Header Controls”| Control | Description |
|---|---|
| Payroll | Dropdown — select the active payroll period to work with |
| Start Date | Read-only — period start from the selected payroll |
| End Date | Read-only — period end from the selected payroll |
| Check Date | Read-only — check date from the selected payroll |
| Bank | Bank account to use for payroll disbursement |
Statements Table
Section titled “Statements Table”All payroll statements for the current period appear in the grid:
| Column | Description |
|---|---|
| Approved | A checkbox per statement; the group row shows an “X of Y approved” summary |
| Direct Deposit | Whether the statement is paid by direct deposit (yes/no) |
| ID | The employee’s ID |
| Employee | Employee name (last, first) |
| (per earning type) | One column per earning type, showing that earning’s amount |
| Gross Pay | Total compensation before deductions |
| Net Pay | Take-home amount after all deductions |
Use the Search bar to filter statements by employee name. Toggle Only Unapproved to focus on statements that still need review.
Actions
Section titled “Actions”| Action | Description |
|---|---|
| New Payroll Statement | Create a statement for an additional employee in this period |
| Sync Timesheets | Pull approved timesheet entries into payroll statements |
| Run | Execute payroll computation — validates all statements and posts |
| Approve Entire Payroll | Approve all statements at once |
| Un-Approve Entire Payroll | Reverse approval on all statements |
| Turn On Direct Deposit | Set all statements to direct deposit — but only for employees who have a bank account on file |
| Turn Off Direct Deposit | Remove direct deposit from all statements |
| Previous Payrolls | View and work with completed historical payrolls |
| Payroll Summary | Run the payroll summary report |
| Delete Payroll | Permanently remove the current payroll (requires permission) |
Delete Payroll
Section titled “Delete Payroll”Deleting a payroll permanently removes the payroll period and all its associated statements.
Prerequisites:
- The payroll must not be processed — if payroll has already been run, it cannot be deleted. Refresh the page if you see a stale record.
- There must be no timesheets still associated with the payroll — unlink or delete associated timesheets first.
- User must have the Delete Payroll permission.
A confirmation dialog appears before the deletion proceeds. This action cannot be undone.
New Payroll Statement Dialog
Section titled “New Payroll Statement Dialog”| Field | Required | Description |
|---|---|---|
| Employee | Yes | Employee to add to this payroll |
| Notes | No | Optional notes for this statement |
Previous Payrolls Dialog
Section titled “Previous Payrolls Dialog”Lists completed payrolls showing Start Date, End Date, Check Date, Description, Check Total, Direct Deposit Total, and Total. From each historical payroll you can:
- Download ACH File — Download the ACH direct deposit file
- Print Direct Deposit Stubs — Download the direct-deposit stubs as a PDF
- Re-Print All Checks — Reprint check documents for all employees in the payroll
- Re-Print Single Check — Reprint an individual employee’s check without reprinting the entire batch
- Re-Send Direct Deposit Stubs — Re-email stubs to direct-deposit employees, at each address marked Email Pay Stubs on their Email Addresses tab
- Check Register Report — Open the check register report
- Payroll Summary Report — Open the payroll summary report
- Timesheet Summary Report — Open the timesheet summary report
Run Payroll Flow
Section titled “Run Payroll Flow”Clicking Run triggers a series of validation steps before payroll posts:
- Overshot Deductions Dialog — Runs first. If any deductions exceed their allowed maximum, this dialog shows the overage and offers to auto-adjust; payroll continues once there are no overshot deductions.
- Check Issues — Lists any fatal or non-fatal validation issues (for example, unapproved timesheets or a direct-deposit/bank misconfiguration are fatal; a negative accrual balance is non-fatal). Fatal issues must be resolved; when only non-fatal issues remain, a Run Anyways button bypasses them.
- Payroll Messages Dialog — Enter an optional message to include on pay stubs, then click Run Payroll to finalize.
After running, you are taken to the Payroll Complete screen.
5. Payroll Statements
Section titled “5. Payroll Statements”Clicking an employee’s statement from the Compute Payroll grid opens the statement detail screen.
Header (Read-Only)
Section titled “Header (Read-Only)”| Field | Description |
|---|---|
| Payroll | The payroll this statement belongs to (read-only label) |
| Employee | The employee for this statement (selectable) |
| Notes | Free-text notes for the statement |
| Accrual Balances | Current balance for each accrual type |
| Direct Deposit | Checkbox marking the statement to be paid by direct deposit |
Computed totals — Total Hours, Gross Pay, Taxes, Other Deductions, Reimbursement, and Net Pay — are shown in the footer beneath the earnings and deductions grids, not in the header.
Earnings Section
Section titled “Earnings Section”Lists all earning entries for this statement:
| Column | Description |
|---|---|
| Earning Type | The earning type, chosen from a dropdown (a single selectable column) |
| Hours | Hours worked (for hour-based types) |
| Rate | Pay rate |
| Amount | Dollar amount for this earning |
| Ledger | Ledger account this earning posts to |
| Overridden | Whether the amount was manually overridden (for computed earning types) |
Add an earning with the Add Earning button in the column header, and remove a row with its Delete button; cells are edited inline. When you select an earning type configured for FLSA overtime, an Overtime Date Range dialog opens automatically, letting you set the overtime start and end dates or mark the overtime Discretionary. (Earnings synced from a timesheet show a Synced chip instead of a delete button and cannot be edited here.)
Deductions Section
Section titled “Deductions Section”Lists all deduction entries:
| Column | Description |
|---|---|
| Deduction Type | The deduction type, chosen from a dropdown (a single selectable column) |
| Amount | Dollar amount for this deduction |
| YTD Total | Year-to-date total for this deduction type (read-only) |
| Overridden | Whether the amount was manually overridden |
Recompute and the Overridden Checkbox
Section titled “Recompute and the Overridden Checkbox”Editing earnings or deductions on a statement triggers a background recompute that recalculates the affected amounts and the footer totals (Gross Pay, Taxes, Other Deductions, Reimbursement, Net Pay). Whether the engine recalculates a given line depends on its Overridden flag.
For each deduction line:
- When Overridden is unchecked and the deduction type is computed (system-calculated) or percent-based, recompute recalculates the line’s amount from the current configuration — a computed deduction is recalculated by its rule, and a percent deduction is recalculated as its percentage of gross pay.
- When Overridden is checked, recompute leaves the amount exactly as you entered it.
Typing an amount into a computed deduction line — or into a line that came from an employee deduction setup — automatically checks Overridden for that line, so your manual figure is preserved on the next recompute.
The same logic applies to computed earnings: an earning whose type is system-computed is recalculated by recompute unless its Overridden box is checked, in which case the entered amount is kept.
FLSA Overtime Premium Lines
Section titled “FLSA Overtime Premium Lines”Some earning types are configured to compute FLSA overtime automatically. When you select one of these earning types on a statement, the Overtime Date Range dialog opens.
-
Set the Overtime Start Date and Overtime End Date for the range over which overtime should be computed. The range defaults to the payroll period’s start and end dates.
-
Alternatively, check Discretionary. This clears the date range and treats the earning as a discretionary payment that does not generate an overtime premium.
-
Click Save to close the dialog.
For a non-discretionary overtime earning, the system automatically adds a separate OT Premium earning line tied to the originating earning and its date range (it is not added a second time if a matching OT Premium line already exists). The OT Premium line’s amount is calculated by the recompute engine as the FLSA overtime premium for the selected date range, and like other computed earnings it is recalculated on recompute unless its Overridden box is checked.
Accruals Section
Section titled “Accruals Section”Displays the employee’s current accrual balance for each accrual type — a single balance number shown above the accrual type name. It does not break out opening balance, amount used, and remaining balance separately.
Actions
Section titled “Actions”The statement recalculates automatically as you edit earnings and deductions. Click Save to store your changes; saving also marks the statement as approved and returns you to Compute Payroll. To approve/unapprove or delete a statement without opening it, use the Approved checkbox and the delete (trash) icon on the Compute Payroll grid.
6. Payroll Complete
Section titled “6. Payroll Complete”After running payroll, the completion screen confirms the results and provides output options.
Summary Information
Section titled “Summary Information”- Check Date and GL Date
- Pay Period (start and end dates)
- Total Direct Deposit Amount
- Total Check Amount
Employee counts, earning-type breakdowns, per-employee detail, and YTD figures are not shown here — they appear in the separate Payroll Summary Report.
Output Actions
Section titled “Output Actions”| Action | Description |
|---|---|
| Email Direct Deposit Stubs | Email pay stubs to direct deposit employees, at each address marked Email Pay Stubs (employees with no such address are skipped) |
| Download ACH File | Download the ACH file for bank submission |
| Print Checks | Print physical payroll checks |
| Print Direct Deposit Stubs | Download/print the direct deposit pay stubs |
| Check Register Report | Open the check register report |
| Payroll Summary Report | Open the payroll summary report |
Void Payroll Check
Section titled “Void Payroll Check”Voiding a payroll check creates reversing GL entries that offset the original check posting. The original posting is preserved for audit purposes — it is not deleted.
Navigation: Go to Payroll → Manage Employees, select the employee, then open the Payroll History tab. On the check’s row, click the Void (cancel) icon button and confirm.
Void Dialog
Section titled “Void Dialog”A confirmation dialog titled Void Payroll Check appears: “Are you sure you want to void Check # [check number]?” Click the red Void button to proceed or Close to abort.
The void date is set to the original check date of the payroll run.
GL Impact
Section titled “GL Impact”The system creates a complete set of reversing GL entries with amounts negated (multiplied by −1). The reversal is recorded as a “Void Payroll Check” source posting. After voiding, the check displays a red Void chip in the payroll history.
Permission required: Void Payroll Check
Email Pay Stub
Section titled “Email Pay Stub”From the Payroll History tab you can email the pay stub for any individual past payroll statement directly to an email address. The stub is sent as a PDF attachment named paystub.pdf.
Navigation: Go to Payroll → Manage Employees, select the employee, then open the Payroll History tab. On a check’s row, click the Email Pay Stub (envelope) icon button.
The icon appears only on non-void rows; voided checks show a red Void chip in place of the row actions and cannot be emailed.
Email Pay Stub Dialog
Section titled “Email Pay Stub Dialog”A dialog titled Email Pay Stub opens with the following fields:
| Field | Required | Description |
|---|---|---|
| Email Address | Yes | Recipient address. Choose one of the employee’s saved email addresses from the autocomplete, or type any valid email address. Must be a valid email. |
| Subject | No | Email subject line. |
| Body | No | Email message body (multi-line). |
The Email Address autocomplete is populated from the email addresses recorded on the employee’s Email Addresses tab. Click Send to deliver the stub, or Close to cancel. On success, a “Pay stub sent!” confirmation appears and the dialog closes.
7. Manage Employees
Section titled “7. Manage Employees”Navigate to Payroll → Manage Employees to create, edit, and manage employee records.
Employee List
Section titled “Employee List”| Column | Description |
|---|---|
| ID | System-assigned employee identifier |
| Name | Employee full name |
| Pay Type | Hourly, Salary, or Commission |
| Pay Method | Check or Direct Deposit |
| Status | Active or Terminated |
Use the search bar to filter by name or Employee ID. An Active / All / Terminated toggle filters the list by employee status (defaults to Active).
Create / Edit Employee
Section titled “Create / Edit Employee”Upper Tabs
Section titled “Upper Tabs”General Tab
| Field | Required | Description |
|---|---|---|
| Employee ID | No (create) / Yes (edit) | Human-readable ID (max 50 characters) |
| Effective Hire Date | Yes (create only) | The employee’s initial hire date; required when creating, read-only when editing |
| First Name | Yes | Employee first name |
| Middle Initial | No | Middle initial |
| Last Name | Yes | Employee last name |
| Address | Yes | Street address |
| Apartment Number | No | Suite or unit (field is labeled “Apartment Number”) |
| City | Yes | City |
| State | Yes | State (dropdown) |
| Zip | Yes | Postal code (field is labeled “Zip”) |
| Cell Phone | Yes | Primary mobile phone |
| Home Phone | No | Home phone number |
| Department | No | The employee’s organizational department — used as a filter in payroll and timesheet reports |
| Divisions | No | Payroll divisions this employee is assigned to (multi-select); managed on the employee View screen |
| Notes | No | Free-text notes (multi-line) |
Tax Info Tab
| Field | Required | Description |
|---|---|---|
| Social Security Number | Yes | SSN in masked format. Must be unique — saving a Social Security Number that already belongs to another employee (active or terminated) is rejected with a message naming the existing employee, so you can find and rehire that record instead of creating a duplicate. |
| Birth Date | Yes | Must be in the past |
| Tax State | Yes | State used for tax withholding |
| Marital Status | Yes | Single, Married, or Head of Household |
| Sex | Yes | Male or Female |
| Exemptions | No | Number of tax exemptions |
| Wage Garnishment Limit (%) | No | Maximum garnishable percentage of pay (edit only) |
| Use Post 2020 W4? | No | Checkbox — uses the updated W4 withholding method |
| Box 2(c) | No | Checkbox — W4 multiple-jobs / spouse-works indicator (labeled “Box 2(c)”); enabled only when Use Post 2020 W4? is checked |
| Dependents Credit | No | Dependent tax credit amount |
| Other Income | No | Additional income for withholding purposes |
| Other Deductions | No | Additional deductions for withholding |
| Non-Resident Alien | No | Checkbox — applies NRA tax rules |
| Workers Comp Code | No | Workers compensation classification code |
Notes Tab
Free-text notes field for general employee notes.
Custom Fields Tab
Organization-specific custom data fields.
Lower Tabs
Section titled “Lower Tabs”| Tab | Description |
|---|---|
| Accruals | Accrual balances — type, effective date, expiration date, balance. Add/edit/delete entries. |
| Attachments | Uploaded documents (W2s, tax forms, etc.) |
| Deduction Types | Employee-specific deduction configuration — deduction type, amount/percent, target amount, and minimum/maximum amounts (no effective date) |
| Direct Deposit Splits | Bank account routing for split direct deposits — percentage or flat amount per account |
| Earning Types | Earning types available to this employee, each with an optional GL account override (shown in the GL Override column). No per-employee rate override or effective dates. |
| Email Addresses | Multiple email addresses — primary and secondary designations, and an Email Pay Stubs checkbox per address. Direct deposit stubs are emailed only to addresses with Email Pay Stubs checked; saving an address does not opt it in. |
| Employment History | Hire, rehire, and termination event history with dates and notes |
| Pay Rates | Historical pay rates with effective dates and hourly/salary indicator |
| Payroll History | Past payroll statements — check dates, gross/net pay, YTD totals |
Payroll History Tab
Section titled “Payroll History Tab”The Payroll History tab lists an employee’s past payroll statements from processed payroll runs. Each row is a single statement and can be expanded to show its earnings and deductions detail.
Filters
Section titled “Filters”| Filter | Description |
|---|---|
| Start Date | Includes only statements whose check date is on or after this date |
| End Date | Includes only statements whose check date is on or before this date |
| Earning Type | Includes only statements that contain at least one earning of the selected earning type. The list shows non-archived earning types. |
Set any combination of filters and click Search to reload the grid. The history loads automatically when you first open the tab. Only statements from payroll runs that have been processed are shown.
Columns
Section titled “Columns”| Column | Description |
|---|---|
| Check Date | The check date of the payroll run |
| Check Number | The statement’s check number |
| Hours | Total hours-based earning hours on the statement |
| Gross Pay | Gross pay for the statement |
| Deductions | Total employee (non-employer) deductions |
| Net Pay | Net pay for the statement |
| Direct Deposit | Indicates whether the statement was paid by direct deposit |
A footer row aggregates the sum of Hours, Gross Pay, Deductions, and Net Pay across the displayed rows. The grid is sorted by check date with the most recent statement first.
Show / Hide Void
Section titled “Show / Hide Void”By default, voided statements are hidden. The eye icon in the header of the rightmost (action) column toggles between Show Void and Hide Void. When voided statements are shown, each voided row displays a red Void chip in place of its row actions.
Row Actions
Section titled “Row Actions”For statements that are not voided, the action column provides:
| Action | Description |
|---|---|
| Email Pay Stub | Opens the Email Pay Stub dialog to send the statement’s pay stub to an email address, with an optional Subject and Body |
| Void Payroll Statement | Voids the statement after confirmation |
Earnings and Deductions Detail
Section titled “Earnings and Deductions Detail”Click the expand toggle on a row to open a detail panel showing two grids for that statement:
| Grid | Columns |
|---|---|
| Earnings | Earnings (earning type name), Rate, Hours, Amount |
| Deductions | Deductions (deduction type name), Amount |
In the Hours column, hours are shown only for earning types whose type is Hours. The Deductions grid lists employee deductions only; employer deductions are not shown.
Employee Actions
Section titled “Employee Actions”| Action | Description |
|---|---|
| Audit Employee | Opens the employee’s audit (change) history — see Audit Employee below |
| Edit Employee | Opens the employee record for editing |
| Terminate Employee | Opens a dialog requiring an Effective Date (must be on or after the latest hire/rehire date) and optional Note |
| Rehire Employee | Reactivates a terminated employee — requires an Effective Date and optional Note. Creates a new employment history record. |
Adding a pay rate or an accrual is done from the employee record’s Pay Rates and Accruals tabs, not from this Actions menu.
Rehire Employee
Section titled “Rehire Employee”Rehiring reactivates a terminated employee and creates a new employment history record.
Rehire Dialog
Section titled “Rehire Dialog”| Field | Required | Description |
|---|---|---|
| Effective Date | Yes | The rehire date. Defaults to today. |
| Note | No | Optional note documenting the reason for rehire. |
On submission, the system:
- Creates a new employment record with the effective date as the start date and no end date.
- Updates the employee’s status from Terminated to Active.
- The employee becomes available for payroll processing and timesheet entry.
The Rehire Employee action appears only when the employee’s status is Terminated. The employee’s full employment history (hire, termination, and rehire events) is preserved on the Employment History tab.
Audit Employee
Section titled “Audit Employee”The Audit Employee action opens a read-only change history for the employee record, showing each recorded change along with when it happened and which user made it.
Navigation: Payroll → Manage Employees, open the Actions menu on an employee, then choose Audit Employee.
Date Range Filter
Section titled “Date Range Filter”The screen loads with a date range and lists only the audit activity within it. By default the range spans the previous month through today. Adjust the range and select Search to reload.
| Field | Description |
|---|---|
| Start Date/Time | Beginning of the audit range. Defaults to one month before today. |
| End Date/Time | End of the audit range. Defaults to today. |
Transaction List
Section titled “Transaction List”Each row is one recorded change transaction:
| Column | Description |
|---|---|
| Timestamp | Date and time the change was recorded |
| User | The user who made the change |
| Description | A summary of what the transaction did |
Expand a row to see the individual field changes within that transaction. Each change shows a Description, the Old Value, and the New Value. Empty values are shown as (empty). Old values are highlighted in red and new values in green.
8. Timesheet Entry
Section titled “8. Timesheet Entry”Navigate to Payroll → Manage Timesheets to record and manage employee time.
List Screen
Section titled “List Screen”Controls
Section titled “Controls”| Control | Description |
|---|---|
| Payroll | Select the payroll period to view timesheets for |
| Start / End / Check Date | Read-only — derived from the selected payroll |
| Division Filter | Filter timesheets by division |
| Only Unapproved | Toggle to show only unapproved timesheets |
| Tab | Description |
|---|---|
| Timesheets | Grouped list of timesheets by employee |
| Un-Imported Entries | Individual time-entry records not yet imported into a timesheet |
Timesheets Tab Columns
Section titled “Timesheets Tab Columns”| Column | Description |
|---|---|
| Approved | Checkbox to approve/unapprove the timesheet |
| ID | Employee ID |
| Employee Name | Employee the timesheet belongs to |
| Timesheet Start | Earliest entry date in the timesheet |
| Timesheet End | Latest entry date in the timesheet |
| (per pay/earning type) | Dynamic columns showing hours or amounts for each timesheet entry type |
| Total Hours | Total hours in the timesheet |
| (actions) | Edit and Delete the timesheet |
Time Entries Tab Columns
Section titled “Time Entries Tab Columns”| Column | Description |
|---|---|
| Date | Date of the time entry |
| Name | Employee who worked |
| Pay Type | Timesheet entry type classification |
| Time On | Clock-in time |
| Time Off | Clock-out time |
| Hours | Calculated hours |
| Rate | Pay rate (visible with the Payroll Show Rates permission) |
| Amount | Dollar cost — for Hours-type entries it requires the Payroll Show Rates permission; for Amount-type entries it requires the Payroll Show Amounts permission |
| Source | Where the entry originated |
| Memo | Free-text notes on the entry |
Actions
Section titled “Actions”| Action | Description |
|---|---|
| New Timesheet | Open a new timesheet for an employee and period (Timesheets tab) |
| Auto-Import | Automatically pull in matching un-imported time entries (Un-Imported Entries tab) |
| Import Selected | Import the currently selected un-imported entries (Un-Imported Entries tab) |
| Process Timesheets | Push approved time into the payroll statements; available only when enabled in Payroll Settings |
| Timesheet Summary | Open the timesheet summary report |
| Timesheet Summary by Job | Open the timesheet summary report grouped by job (PDF/Excel) |
| Delete All Timesheets | Delete every timesheet in the selected payroll at once, respecting the Division Filter (Timesheets tab; requires the Delete All Payroll Timesheets permission) |
| Import Incentives | Pull eligible spiffs and commissions onto the selected payroll as earning lines (Un-Imported Entries tab) |
Editing and deleting a timesheet are per-row icon actions in the timesheets grid, and approval is the per-row Approved checkbox — not top-level menu actions.
Delete All Timesheets
Section titled “Delete All Timesheets”Available on the Timesheets tab to users with the Delete All Payroll Timesheets permission, Delete All Timesheets clears every timesheet in the selected payroll in one step instead of deleting them row by row. It honors the Division Filter: with a specific division selected it deletes only that division’s timesheets; with the filter set to show all, it deletes every division you manage. Only timesheets you have access to are affected.
Deleting a timesheet does not discard its work — the time entries are moved back to Un-Imported Entries, where they can be re-imported later. Any labor already linked to a work order keeps that link, so synced or invoiced labor is left intact. A confirmation dialog spells out what will be deleted before you proceed. Delete All Timesheets is not available on a payroll that has already been processed.
Un-Imported Entries: Auto-Import and Import Selected
Section titled “Un-Imported Entries: Auto-Import and Import Selected”The Un-Imported Entries tab lists individual time-entry records that are not yet attached to any timesheet. While this tab is active, the Actions menu replaces New Timesheet with import actions — Auto-Import, Import Selected, and Import Incentives — that pull these loose entries (and eligible incentives) into timesheets for the selected payroll.
Both actions attach entries to each employee’s existing timesheet for the selected payroll, or create a new timesheet for that employee if one does not yet exist. Any timesheet that receives entries is reset to unapproved and unsynced, so it must be re-approved before it is processed.
Auto-Import
Section titled “Auto-Import”Auto-Import opens the Entries for Auto-Import dialog, which previews every un-imported entry that qualifies for the selected payroll before anything is changed. The dialog title shows the selected payroll’s date range.
An entry appears in the preview when all of the following are true:
- It is not yet attached to a timesheet.
- Its date falls within the selected payroll’s start and end dates.
- It belongs to an employee you are allowed to manage.
- It is not a time-clock entry that still requires a clock-out — that is, time-clock entries whose pay type requires a Time Off value are excluded until that value is filled in.
The preview grid shows these columns:
| Column | Description |
|---|---|
| Date | Date of the entry |
| Name | Employee, shown as “Last, First” |
| Pay Type | The entry’s timesheet entry type |
| Time On | Clock-in time |
| Time Off | Clock-out time |
| Hours | Calculated hours |
| Rate | Pay rate (visible with the Payroll Show Rates permission) |
| Amount | Dollar amount — for Hours-type entries it requires the Payroll Show Rates permission; for Amount-type entries it requires the Payroll Show Amounts permission |
| Source | Where the entry originated |
| Memo | Free-text notes on the entry |
- On the Un-Imported Entries tab, open Actions and choose Auto-Import.
- Review the entries listed in the Entries for Auto-Import dialog.
- Choose Continue Import to import every previewed entry, or Cancel to close without importing. Continue Import is disabled when there are no qualifying entries.
Import Selected
Section titled “Import Selected”Import Selected imports only the entries whose checkboxes you have selected in the Un-Imported Entries grid, regardless of their dates. If no entries are selected, the action does nothing.
- On the Un-Imported Entries tab, select the checkbox on each entry you want to import.
- Open Actions and choose Import Selected.
- If any selected entry’s date falls outside the selected payroll’s start/end dates, confirm the Entries Outside of Selected Payroll dialog (see below). Otherwise the selected entries are imported immediately.
After a successful import, the imported rows leave the Un-Imported Entries list and the selection is cleared.
Entries Outside of Selected Payroll
Section titled “Entries Outside of Selected Payroll”When you use Import Selected and one or more selected entries have a date before the selected payroll’s start date or after its end date, an Entries Outside of Selected Payroll warning dialog appears before the import completes. The dialog shows the selected payroll’s date range and a warning that these entries are outside the payroll dates and will be imported into the selected payroll anyway. It lists the out-of-range entries in the same columns as the Auto-Import preview.
Choose Continue Import to import the selected entries — including the out-of-range ones — into the selected payroll, or Cancel to back out without importing.
Import Incentives
Section titled “Import Incentives”On the Un-Imported Entries tab, Import Incentives pulls Eligible incentives (spiffs and commissions; see Incentives) onto the selected payroll as earning lines. It opens a dialog titled with the selected payroll’s date range and lists the eligible incentives for the employees you manage, with all rows preselected:
| Column | Description |
|---|---|
| Incentive # | System-assigned incentive number |
| Employee | The payee |
| Rule | The incentive rule |
| Kind | Spiff or Commission |
| Invoice # | The linked customer invoice |
| Eligible Since | Date the incentive became eligible |
| Amount | The incentive amount |
Clear any rows you do not want to import, then choose Import Incentives. Each imported incentive is added to that employee’s statement under its rule’s earning type and moves to Imported. The result reports how many were imported and how many were skipped, with reasons — for example an employee with no statement on this payroll (the incentive stays Eligible for a later run), a statement that is already approved (un-approve it first), or a rule earning type with no GL account.
Process Timesheets
Section titled “Process Timesheets”Navigation: Go to Payroll → Manage Timesheets, select a payroll in the Payroll control, then open the Actions menu and choose Process Timesheets.
The Process Timesheets action is shown in the Actions menu only when Process Timesheets Enabled is turned on in Payroll Settings. When it is not enabled, the action does not appear. The menu item is disabled until a payroll is selected.
Selecting the action opens a Process Timesheets confirmation dialog asking “Are you sure you want to process the timesheets?”. Click Confirm to run the process, or close the dialog to cancel.
When confirmed, the system processes the selected payroll’s timesheet entries:
-
Each timesheet entry whose entry type is set to post to the general ledger is posted, creating the corresponding ledger documents and ledger lines (debit and credit) for the time amount, plus job-cost overhead postings where the entry is tied to a job.
-
For entries tied to a job, a job cost entry is recorded, splitting the time into regular, overtime, and double-time hours according to the entry type.
-
The payroll is marked as processed.
-
The payroll is cleared from the Payroll selector for users who had it selected, so it no longer appears as the active in-progress payroll.
On success, a “Timesheets Processed” confirmation appears and the payroll list refreshes.
Timesheet Summary by Job Report
Section titled “Timesheet Summary by Job Report”Navigation: Payroll → Manage Timesheets → Actions → Timesheet Summary by Job
This action opens the Timesheet Summary by Job Report dialog, which produces a report of timesheet entries for the selected payroll grouped by job. It is distinct from the Timesheet Summary report: rather than recapping hours by employee, it lists each timesheet entry under its job and subtotals hours (and amounts, where permitted) per job.
The report is scoped to the currently selected payroll and includes all timesheet statuses (approved and unapproved).
Output Options
Section titled “Output Options”| Button | Description |
|---|---|
| Export PDF | Generate and open the report as a PDF |
| Export Excel | Download the report as an .xlsx file |
| Close | Dismiss the dialog without generating a report |
Columns
Section titled “Columns”| Column | Description |
|---|---|
| Job | Job (Job Costing) the entry is assigned to; entries are grouped under this value |
| Department | Employee’s department (included in the Excel export only) |
| Approved | Whether the timesheet is approved |
| Date | Date of the time entry |
| Name | Employee name (last, first) |
| Type | Timesheet entry type |
| Job Category | Job cost category for the entry |
| Time On | Clock-in time |
| Time Off | Clock-out time |
| Hours | Hours on the entry; subtotaled per job |
| Rate | Pay rate (shown only with the Payroll Show Rates permission) |
| Amount | Dollar amount; subtotaled per job (shown only with the Payroll Show Amounts permission) |
| Notes | Notes on the timesheet entry |
Rows are ordered by job, then date, then employee name, and each job group shows a subtotal of Hours (and Amount, when shown).
Timesheet Warnings
Section titled “Timesheet Warnings”On the Timesheets tab, individual timesheet rows can display warning icons that flag problems with the time covered by that timesheet. These warnings are advisory: they appear next to the affected employee’s name and are driven by the timesheet’s entry dates compared against the selected payroll period.
| Warning | Meaning |
|---|---|
| Timesheet contains dates outside of payroll range | The timesheet’s earliest entry falls before the payroll’s Start Date, and/or its latest entry falls after the payroll’s End Date. |
| This timesheet is invalid | The timesheet has an overtime-eligible entry that is missing required overtime date information, so it cannot be approved as-is. |
When a timesheet is flagged as invalid, its Approved checkbox is disabled and the timesheet cannot be approved until the underlying entry is corrected. The out-of-range warning does not block approval — it only highlights that some entry dates lie outside the selected payroll period.
The “dates outside of payroll range” warning is determined by comparing each timesheet’s Timesheet Start and Timesheet End values against the selected payroll’s Start Date and End Date, so reviewing those columns alongside the warning icon shows which dates are out of range.
Timesheet Detail Screen
Section titled “Timesheet Detail Screen”Opening a timesheet shows the header (employee, period, approval status) and a grid of time entries.
Time Entry Fields
Section titled “Time Entry Fields”| Field | Required | Description |
|---|---|---|
| Date | Yes | Date of the entry |
| Pay Type | Yes | Classification for this entry |
| Time On | Conditional | Clock-in time (required for timed entry types) |
| Time Off | Conditional | Clock-out time (required for timed entry types) |
| Hours | Conditional | Duration in hours, calculated automatically from Time On and Time Off for Hours-type pay types |
| Rate | No | Pay rate for the entry |
| Job | Conditional | Job Costing job to assign this time to (required when the selected Pay Type is job-linked) |
| Work Order | Conditional | Work order to assign this time to (required when the selected Pay Type is work-order-linked) |
| Appointment | Conditional | Service appointment associated with this entry (required when the selected Pay Type is work-order-linked) |
| Job Category | Conditional | Cost category for job costing (required when the selected Pay Type is job-linked) |
| Amount | No | Dollar amount (for reimbursement entry types) |
| Memo | No | Free-text notes |
Per-Entry Actions
Section titled “Per-Entry Actions”Each time entry row on the Timesheet Detail Screen has its own set of icon actions on the right side of the row, separate from the timesheet-level actions below.
| Action | Description |
|---|---|
| Unlink from timesheet and move to un-imported | Marks the entry to be removed from this timesheet. The entry’s editable fields (date, pay type, times, job, hours, rate, amount, memo) are disabled while it is marked for unlinking. |
| Link back to timesheet | Shown in place of the unlink action once an entry has been marked to unlink; clears the mark and re-enables the entry’s fields so it stays on the timesheet. |
| Overtime Date Range | Opens the overtime date-range dialog for the entry. This action is available only for entries whose pay type is configured to compute FLSA overtime, and is disabled while the entry is marked for unlinking. |
| Delete timesheet entry | Removes the entry from the timesheet entirely. A time entry cannot be deleted once its linked work-order labor has been synced to payroll (correct it with an adjusting payroll entry) or the work order has been invoiced (credit the work-order billing first, then delete). |
- On the Timesheet Detail Screen, find the entry you want to move and select Unlink from timesheet and move to un-imported. The entry’s fields become disabled to indicate it is marked for removal.
- If you change your mind before saving, select Link back to timesheet on the same row to restore the entry.
- Select Save. Each unlinked entry is detached from this timesheet and returned to the un-imported pool, where it can be imported into another timesheet via Auto-Import or Import Selected on the Un-Imported Entries tab.
Timesheet-Level Actions
Section titled “Timesheet-Level Actions”- Approved checkbox — Toggle the timesheet’s approval status (available on the timesheet detail screen and in the timesheets list)
- Delete — Remove the timesheet from the timesheets list
- Process Timesheets — A list-level action (not a per-timesheet button) that pushes approved time into the payroll statements; available when enabled in Payroll Settings
9. Employee Portal
Section titled “9. Employee Portal”Open Employee Portal from the standalone item in the main sidebar (it is not nested under Payroll) for self-service access to pay history and personal information. The portal is unlocked by SSN verification and is accessible without administrator credentials.
Summary Cards and Privacy Toggle
Section titled “Summary Cards and Privacy Toggle”Above the tabs, the portal always shows a row of summary stat cards and a privacy toggle, no matter which tab is selected.
Summary Cards — Four stat cards:
- Last Paycheck Net Pay — net pay of the most recent paycheck, with a subtitle of either “Direct Deposit” or the check number
- YTD Gross — year-to-date gross pay, with the number of pay periods
- YTD Deductions — total year-to-date taxes and benefits withheld
- YTD Net Pay — year-to-date take-home pay
Privacy Toggle — Employees can toggle the visibility of dollar amounts and sensitive information for privacy when viewing on shared screens.
Below the summary cards, the portal organizes information into four tabs: Personal Info, Employment, Pay History, and Tax Info.
Personal Info
Section titled “Personal Info”- Personal Details — employee ID, full name, date of birth, filing status, and Social Security Number (which can be revealed or hidden)
- Contact Information — address, home phone, cell phone, and email
Employment
Section titled “Employment”- Current Employment — start (hire) date and tenure
- Current Pay Rate — pay rate, effective date, and pay type (Hourly or Salary)
Pay History
Section titled “Pay History”YTD Charts
- Pay History (Last 12 Periods) — a bar chart comparing Gross Pay and Net Pay for each of the last 12 pay periods
- YTD Deductions Breakdown — a donut chart showing year-to-date deductions by type
Active Deductions — Lists each active deduction for the employee, showing its name and code, the amount or percentage withheld, any configured Target / Min / Max goal amounts, and a Pre-tax indicator where applicable. The portal does not display accrual balances.
Pay Statements Table
| Column | Description |
|---|---|
| Check Date | Date of the paycheck |
| Check # | Check number, or “DD” for direct deposit |
| Type | ”Check” or “Direct Dep.” |
| Gross Pay | Total before deductions |
| Deductions | Total deductions withheld |
| Reimbursement | Reimbursed amount (hidden on mobile) |
| Net Pay | Take-home amount |
| Actions | View the full statement detail or download the pay stub as a PDF |
Use the View Details action (or expand the row) to open the full statement detail, which shows the earnings and deductions breakdown for that pay period.
Use the Download action on a statement’s row to download that pay period’s stub as a PDF showing current and year-to-date earnings, deductions, and net pay. The downloaded stub honors the Show Payroll Accruals on Pay Stub setting: when that setting is turned on for the payroll type, the stub lists your accrual balances; when it is off, they are omitted. Downloads work whether the portal was opened from the sidebar or from a token link, and each employee can download only their own pay stubs.
Tax Info
Section titled “Tax Info”Displays your tax filing information — tax state, filing status, exemptions, and W-4 details — along with any wage garnishment limit on file. These fields are read-only.
Accessing the Portal
Section titled “Accessing the Portal”The Employee Portal can be reached two ways. Both load the same self-service screen.
- From the main sidebar — Open Employee Portal from the standalone item in the main sidebar. When opened this way as a signed-in organization user, the portal loads the data for the employee linked to your own user account.
- From a token link — The portal can also be opened from a link that carries an access token in its web address (a token value in the URL query string). When a token is present, the portal loads the data for the employee that the token identifies, then immediately rewrites the address bar to the plain Employee Portal address so the token is not left visible in the URL. Access tokens are time-limited and expire 5 minutes after they are generated, so a link must be used promptly.
Identity Verification (Unlock Screen)
Section titled “Identity Verification (Unlock Screen)”However the portal is opened, it always opens locked. Before any pay or personal information is shown, you are presented with an Employee Portal unlock screen that reads “Please verify your identity to access your information.”
| Field | Required | Description |
|---|---|---|
| Social Security Number | Yes | Your 9-digit Social Security Number. The field accepts up to 11 characters and auto-formats your entry as XXX-XX-XXXX while you type. The value is masked as you enter it. |
-
On the unlock screen, type your full Social Security Number into the Social Security Number field. Dashes are added automatically; you may type digits only.
-
Select Unlock Portal.
-
If the number you entered matches the Social Security Number on your employee record (compared as digits only, ignoring formatting), the portal unlocks and your information is displayed.
-
If the number does not match, an “Invalid Social Security Number” message is shown, the field is briefly highlighted in red, and the portal stays locked. Re-enter the number to try again.
Note: Verification is performed against the Social Security Number stored on your employee record, so that number must be on file for the unlock to succeed. The portal does not offer an alternative verification method if the Social Security Number cannot be matched.
10. Employee Time Clock
Section titled “10. Employee Time Clock”Navigation: Account/avatar menu (top bar) → Time Clock
The Employee Time Clock provides a browser-based clock-in/clock-out interface for employees. It is opened from the user account (avatar) menu in the top bar rather than from a Payroll menu item, and the menu option is available only to users granted time clock access. It can also be accessed from the mobile app when Mobile Time Clock Enabled is turned on in Payroll Settings.
Clock Display
Section titled “Clock Display”The time clock screen displays:
- An analog clock showing the current time
- The current date and digital time (updated every second)
- A Privacy Mode toggle to hide rates and dollar amounts on shared screens
Clock In / Clock Out
Section titled “Clock In / Clock Out”| Control | Description |
|---|---|
| Pay Type | Select the timesheet entry type for this clock-in session (e.g., Regular, Overtime) |
| Clock In | Creates a new timesheet entry with the current timestamp as the Time On. Disabled if already clocked in. |
| Clock Out | Updates the current open entry with the current timestamp as Time Off and calculates hours worked. Disabled if not clocked in. |
When clocking in or out, the system captures geolocation data (latitude, longitude, IP address) for audit purposes.
Time Entry Grid
Section titled “Time Entry Grid”Below the clock controls, a grid shows the employee’s recent time entries:
| Column | Description |
|---|---|
| Date | Entry date |
| Pay Type | Timesheet entry type |
| Time On | Clock-in timestamp |
| Time Off | Clock-out timestamp |
| Hours | Calculated duration (4 decimal places) |
| Rate | Pay rate (hidden in privacy mode) |
| Amount | Dollar amount (hidden in privacy mode) |
| Source | ”Desktop Time Clock” for clock punches |
| Notes | Optional notes |
Manual Entry
Section titled “Manual Entry”Employees can also create manual time entries (for historical or offline hours) by selecting the + (Create Timesheet Entry) button above the time-entry grid, which opens the Create Timesheet Entry dialog.
At the top of the dialog, a Hide Rates and Amounts toggle controls whether the Rate and Amount fields are shown. It is turned on by default, so rate and amount fields are hidden until you turn it off.
| Field | Required | Description |
|---|---|---|
| Pay Type | Yes | Timesheet entry type for the entry. Its configuration determines which other fields are enabled and required. |
| Date | Yes | Date of the entry |
| Time On | Conditional | Clock-in time. Enabled and used only for hours-based pay types. |
| Time Off | Conditional | Clock-out time. Enabled and used only for hours-based pay types. |
| Hours | Conditional | Duration in hours (4 decimal places). Calculated automatically from Time On and Time Off, and editable, for hours-based pay types. |
| Rate | No | Pay rate (read-only; shown only when Hide Rates and Amounts is off) |
| Amount | Conditional | Dollar amount. Enabled for amount-based pay types; shown only when Hide Rates and Amounts is off. |
| Job | Conditional | Job Costing job to allocate time to. Enabled and required only when the selected pay type is linked to a job. |
| Job Cost Category | Conditional | Cost category for job costing. Enabled and required only when the selected pay type is linked to a job. |
| Work Order | Conditional | Work order to assign time to. Enabled and required only when the selected pay type is linked to a work order. |
| Appointment | Conditional | Appointment on the selected work order. Enabled and required only when the selected pay type is linked to a work order. The appointment list is populated from the chosen work order. |
| Notes | No | Free-text notes |
Whether the Job, Work Order, and Appointment fields apply is driven by the selected Pay Type. Choosing a different pay type clears any values for fields that no longer apply.
To link a manual entry to a work order appointment:
-
Select the + (Create Timesheet Entry) button above the time-entry grid to open the Create Timesheet Entry dialog.
-
Select a Pay Type that is linked to a work order. This enables (and requires) the Work Order and Appointment fields.
-
Select the Work Order. The Appointment list is then loaded from that work order.
-
Select the Appointment for the work order.
-
Fill in the remaining required fields and click Create.
Rate Calculation
Section titled “Rate Calculation”Hours are multiplied by the employee’s pay rate, adjusted for the pay type’s rate multiple (e.g., 1.5× for overtime) or rate override if configured.
Unimported Hours
Section titled “Unimported Hours”A counter displays total hours not yet linked to any timesheet, helping employees and managers track pending time.
11. Incentives (Spiffs & Commissions)
Section titled “11. Incentives (Spiffs & Commissions)”Navigation: Payroll → Incentives (ledger) · Payroll → Incentive Approvals (approval queue) · Payroll → Settings → Incentive Rules (setup)
Incentives are extra pay — spiffs and commissions — owed to an employee for a specific sale. Each incentive is created from an incentive rule (a template configured in Payroll Settings; see Incentive Rules below) that decides what qualifies, who is paid, how the amount is computed, and which payroll earning type pays it out. An incentive travels through a fixed lifecycle from creation to payroll payout, and every step is visible on the Incentives screen.
Incentive Lifecycle
Section titled “Incentive Lifecycle”| Status | Meaning |
|---|---|
| Pending | Created but not yet reviewed. Awaits a decision on the Incentive Approvals screen. |
| Approved | Approved for payout, but not yet payable — it becomes payable only after the sale is collected. |
| Denied | Rejected during approval, with a denial reason on file. |
| Eligible | The gating condition is met (the customer invoice is paid in full) and the incentive is ready to be imported onto a payroll. |
| Imported | Added to an employee’s payroll statement (on an unprocessed payroll) as an earning line. |
| Paid | The payroll was processed and the incentive was disbursed. It is not clawed back on its own, but voiding the paycheck (or deleting the statement or payroll) releases it — back to Eligible so a later payroll can pick it up, or to Cancelled if the underlying sale was credited. |
| Cancelled | Voided before payout — e.g. the work order was cancelled, its invoice was credited, or the source line was removed at billing. Reversing a work-order cancellation returns its incentives to Pending; a bill-credit or removed-line cancellation is permanent. |
How Incentives Are Created
Section titled “How Incentives Are Created”There are two ways an incentive comes into being:
- Automatically at billing. When a work order is billed, every active incentive rule whose effective window covers the invoice date and whose Auto Create at Billing option is on is matched against the work order and its line items. A matching rule creates a Pending incentive for the resolved payee (the appointment technician or the work order salesman, per the rule’s Payee). Rules whose amount cannot be computed from the sale (such as GPPM Tiered), whose payee cannot be resolved or is terminated, or that would compute a zero or negative amount are skipped.
- Manually with Add Spiff. On a work order’s Line Items tab, use the per-line Add Spiff action to attach an incentive to that line by hand (see the Service module). Manual spiffs are also created Pending. Pre-billing manual spiffs are adopted onto the invoice when the work order is billed.
Incentives Screen
Section titled “Incentives Screen”Navigation: Payroll → Incentives
A read-only ledger of every incentive (excluding archived), across all statuses.
| Column | Description |
|---|---|
| Incentive # | System-assigned incentive number |
| Status | Lifecycle status (see above) |
| Created | Date the incentive was created |
| Employee | The payee |
| Rule | The incentive rule it was created from |
| Kind | Spiff or Commission |
| Work Order | The source work order (click to open) |
| Invoice # | The linked customer invoice, once billed (click to open) |
| Basis | The figure the amount was computed from (e.g. the sale amount or gross profit) |
| Amount | The incentive amount |
| Eligible Since | Date the incentive became eligible |
| Approved By | User who approved it |
| Denial Reason | Reason recorded if denied |
| Notes | Free-text notes |
Incentive Approvals Screen
Section titled “Incentive Approvals Screen”Navigation: Payroll → Incentive Approvals
Lists Pending incentives awaiting a decision. Select one or more rows (the header checkbox selects all filtered rows), then:
- Approve — moves the selected incentives to Approved. A confirmation notes that “Approved incentives become payable once the customer invoice is paid in full.”
- Deny — opens a dialog requiring a Denial Reason (up to 255 characters), then moves the selected incentives to Denied.
Only still-Pending rows are acted on; any that changed status since the list loaded are skipped, and the result reports how many were updated and how many were skipped.
Requires the Approve Incentives permission.
Getting Incentives onto Payroll
Section titled “Getting Incentives onto Payroll”Eligible incentives are pulled onto a payroll with the Import Incentives action in Manage Timesheets (on the Un-Imported Entries tab; see Timesheet Entry). Importing adds each incentive to the payee’s payroll statement as an earning line under the rule’s Payroll Earning Type. When the payroll is processed, that earning is disbursed like any other and the incentive is marked Paid.
General Ledger Effect
Section titled “General Ledger Effect”An imported incentive posts through its Payroll Earning Type exactly like any other earning on the statement: when the payroll is run, the earning is debited to that earning type’s GL account (or to an employee-specific override account when one is configured) as part of the balanced payroll document (see GL Post on Run). If the earning type is a reimbursement, the incentive is paid without tax withholding. An incentive whose earning type has no GL account configured cannot be imported and is skipped.
12. Settings
Section titled “12. Settings”Navigate to Payroll → Settings to configure system-wide payroll options and reference data.
Main Settings
Section titled “Main Settings”| Field | Required | Description |
|---|---|---|
| Employer FICA Expense Ledger | Yes | GL account for the employer’s FICA contributions |
| Payroll Payable Ledger | Yes | GL account for accrued payroll liabilities |
| Accrued Service Wages Ledger | No | GL account where wages for time-clock-linked work-order labor accrue. Required in practice when Link Service Labor to Time Clock is enabled — Sync Timesheets stops with an error if it is not set |
| Work Order Travel Timesheet Entry Type | Yes | Timesheet entry type used for work order travel time |
| Work Order Site Timesheet Entry Type | Yes | Timesheet entry type used for work order site time |
| Default Bank | No | Default bank for payroll disbursement |
| Check Printer | No | Printer configuration for check printing |
| Payroll Email | No | Email address for payroll-related notifications |
Time Clock Options
| Setting | Description |
|---|---|
| Desktop Time Clock Enabled | Enables the browser-based time clock for employees |
| Mobile Time Clock Enabled | Enables the mobile app time clock |
| Link Service Labor to Time Clock | Links work-order labor to the time clock: clocking in and out on a work order creates a timesheet entry tied to the labor cost line, wages for linked labor accrue to the Accrued Service Wages Ledger, and labor lines lock once their timesheet is synced to payroll |
| Hide Sensitive Information on Time Clocks | Hides sensitive information on the time clock display |
Processing Options
| Setting | Description |
|---|---|
| Compute FLSA Overtime Hours | Enables automatic FLSA overtime calculation |
| Process Timesheets Enabled | Enables the timesheet-to-payroll sync workflow |
Reference Data Tabs
Section titled “Reference Data Tabs”Accrual Types
Section titled “Accrual Types”Define the types of accruals employees can accumulate (e.g., Vacation, Sick, PTO):
| Field | Required | Description |
|---|---|---|
| Name | Yes | Display name for the accrual type (must be unique across accrual types) |
| Earning Types | No | The earning types whose hours/amounts contribute to this accrual (multi-select) |
Accrual Engine
Section titled “Accrual Engine”The Accrual Engine tab controls a newer, rule-based accrual system that can run alongside — and eventually replace — the classic per-employee accrual balances described above. The tab appears for users granted its permission. At the top of the tab, a status control drives the rollout; below it are three reference tables: Buckets, Policies, and Employee Assignments.
Engine status and rollout
The engine is always in one of three states, shown as a status chip with the available transition actions:
| State | What it means | Actions |
|---|---|---|
| Legacy | The classic accrual system is authoritative. | Start Shadow Trial |
| Shadow Trial | The new engine posts in parallel, but legacy stays authoritative — paychecks, statements, and balances are unchanged. | Re-run Seeding, Cancel Trial, Go Live |
| Live | The new engine is authoritative for all accrual balances and statements; legacy data is kept read-only. | Roll Back to Legacy |
- Start Shadow Trial begins running the new engine in parallel and seeds each employee’s current legacy balance as the new engine’s opening balance.
- Re-run Seeding resumes an interrupted seeding pass; employees already seeded are skipped.
- Cancel Trial rolls back to the legacy engine.
- Go Live makes the new engine authoritative, applying the per-employee seed decisions chosen in the reconciliation grid.
- Roll Back to Legacy returns to the legacy engine; any accrual activity recorded while live must be reconciled back into legacy by hand.
During a shadow trial a reconciliation grid compares each employee’s legacy balance against the new engine’s computed balance (with the difference and a flag for employees that have no legacy type or no configured bucket). Each row carries an At Go-Live choice: Grandfather legacy (the default — keep the legacy balance) or Correct to new value (adopt the new engine’s balance). Those choices are applied when you Go Live.
Buckets
A bucket is a category of accrued time (for example, Vacation, Sick, or PTO) that balances accumulate in.
| Field | Required | Description |
|---|---|---|
| Name | Yes | Bucket name |
| Description | No | Free-text description |
A bucket can be activated or deactivated from its row; only active buckets can be chosen when creating a policy.
Policies
A policy defines how a bucket accrues — the method, rate, balance caps, and carryover — and which activity triggers accrual and spending. Policies are immutable once created: to change the amount terms, create a replacement policy and set it as the current policy’s successor, which takes over at each assignment’s renewal.
| Field | Required | Description |
|---|---|---|
| Bucket | Yes | The bucket this policy accrues into |
| Accrual Method | Yes | Per Pay Period, Per Hour Worked, Fixed Annual, or Front Loaded |
| Accrual Period | Conditional | For the Fixed Annual method: daily, weekly, pay period, monthly, or annual |
| Accrual Rate (hours) | No | Hours accrued per method interval (hidden for Front Loaded, whose amount is the front-loaded value) |
| Min Balance | No | Minimum balance; 0 blocks overdrawing the balance |
| Max Balance (hours) | No | Maximum balance; shown as Front-Loaded Amount (hours) for the Front Loaded method |
| Carry Over Limit | No | Hours that carry to the next period; 0 means none (hidden for Front Loaded) |
| Carry Over Expiration Days | No | Days after which carried-over hours expire; 0 means never (hidden for Front Loaded) |
| Earning Types (accrual triggers) | Conditional | Earning types that trigger accrual; shown, and requiring at least one, only for the Per Hour Worked method |
| Timesheet Entry Types (spend triggers) | No | Timesheet entry types that draw down (spend) the balance |
Editing a policy exposes only the forward-looking, non-amount fields — Successor Policy, the trigger earning types (per-hour policies), and the spend-trigger timesheet entry types; the method, rate, caps, and carryover cannot be changed. A policy can be marked assignable or not from its row, which controls whether it is offered for new employee assignments.
Employee Assignments
Assign a policy to an employee for a defined period.
| Field | Required | Description |
|---|---|---|
| Employee | Yes | The employee the policy applies to |
| Policy | Yes | The accrual policy to assign (only assignable policies are listed) |
| Period Start | Yes | First date of the assignment period |
| Period End | Yes | Last date of the assignment period (must be on or after the start) |
| Auto-Renew | No | Whether the assignment renews automatically at period end (on by default) |
Assignments can be deactivated or reactivated from their row, and the list can be filtered to show inactive assignments.
Deduction Types
Section titled “Deduction Types”Define payroll deduction categories (e.g., Health Insurance, 401k, Garnishment):
| Field | Required | Description |
|---|---|---|
| Code | Yes | Unique code (must be unique across all deduction types; locked for system and computed deduction types) |
| Name | Yes | Display name |
| Default Ledger | Yes | GL account for posting this deduction |
| Is Pre-Tax | No | Whether the deduction reduces taxable income |
| Is FICA Exempt | No | Whether the deduction is exempt from FICA |
| Treat Amounts as Percentages | No | Whether the amount is calculated as a percentage of pay rather than a flat amount (can only be set when the deduction type is created) |
| Is Non Disposable (for Wage Garnishment) | No | Whether the deduction is treated as non-disposable income (used for wage garnishment) |
Earning Types
Section titled “Earning Types”Define earning categories (e.g., Regular, Overtime, Holiday, Commission):
| Field | Required | Description |
|---|---|---|
| Code | Yes | Unique code (must be unique across all earning types) |
| Name | Yes | Display name |
| Type | Yes | Amount or Hours |
| Default Ledger | Yes | GL account for posting earnings |
| Rate Override | No | Fixed rate to apply instead of the employee’s pay rate |
| Rate Multiple | No | Multiplier applied to the employee’s pay rate (defaults to 1) |
| Taxable | No | Whether the earning is subject to tax |
| Reimbursement | No | Whether the earning is a non-wage reimbursement; disabled (and unavailable) while Taxable is on |
| Compute FLSA Overtime | No | Whether to include this earning in the FLSA overtime calculation |
| Is Overtime Exempt | No | Whether this earning is exempt from overtime rules |
Timesheet Entry Types
Section titled “Timesheet Entry Types”Configure the entry classifications available in timesheets and on the time clock (for example, Regular, Overtime, Holiday, PTO). Each type maps to an earning type that drives how the time is paid, and can override the earnings GL account and pay rate, link the time to a job or work order, control whether it appears on the time clock, and optionally post its own GL document. Timesheet entry types have no cost center. Codes must be unique across all entry types, and a type can be disabled rather than deleted.
| Field | Required | Description |
|---|---|---|
| Code | Yes | Unique code (must be unique across all timesheet entry types) |
| Name | Yes | Display name |
| Type | Yes | Amount or Hours |
| Earning Type | Yes | The payroll earning type this entry maps to; it determines how the time is paid and taxed |
| Earnings GL Override | No | GL account that replaces the earning type’s default earnings account when this entry posts |
| Rate Override | No | Fixed rate to apply instead of the employee’s pay rate |
| Rate Multiple | No | Multiplier applied to the employee’s pay rate; leave blank for none |
| Rate Differential | No | Flat amount added to the rate |
| Link Job | No | Posts the time as a labor cost on a job; requires a Job Expense Type. Mutually exclusive with Link Work Order |
| Time Required | No | Requires the user to enter a time (not just an amount) on the entry |
| Post to GL | No | Posts a GL document for this entry; requires a Subledger, and (unless Link Job is on) a Debit GL and Credit GL |
| Link Work Order | No | Links the time to a work order’s labor. Mutually exclusive with Link Job |
| Time Clock Enabled | No | Makes this entry type selectable on the time clock |
| Time Clock Manual Entry Enabled | No | Allows manually keyed time (not just clock in/out) for this entry type on the time clock |
| Subledger | Conditional | Subledger the GL document posts against; required when Post to GL is on |
| Debit GL | Conditional | Debit account for the GL document; required when Post to GL is on and Link Job is off |
| Credit GL | Conditional | Credit account for the GL document; required when Post to GL is on and Link Job is off |
| Job Expense Type | Conditional | The job cost entry type the labor posts as on the job; required when Link Job is on |
| Job Regular / Job Overtime / Job Doubletime | Conditional | Which job-labor rate the hours count as; a single choice, available only when Link Job is on |
| Overtime Premium GL Override | No | GL account for the overtime premium portion; available only when the chosen earning type computes FLSA overtime |
Payroll Divisions
Section titled “Payroll Divisions”Define organizational divisions for grouping employees and filtering timesheets:
| Field | Required | Description |
|---|---|---|
| Name | Yes | Division name (must be unique across payroll divisions) |
| Managed By | No | Other divisions that manage this division |
| Manages | No | Divisions this division manages |
| Manages All Employees | No | When checked, this division manages every employee |
Departments
Section titled “Departments”Maintain the list of organizational departments that can be assigned to employees. A department is used as a filter in payroll and timesheet reports and appears on the employee record (see Manage Employees).
| Field | Required | Description |
|---|---|---|
| Name | Yes | Department name |
Departments can be edited or deleted from their rows.
Payroll Types
Section titled “Payroll Types”Define payroll templates that control which earning types are included, which deductions are excluded, and which employees are assigned:
| Field | Required | Description |
|---|---|---|
| Name | Yes | Template name |
| Description | Yes | Description |
| Default Earning Types | No | Earning types automatically included when running this payroll |
| Excluded Deduction Types | No | Deductions skipped when running this payroll; disabled when Disable All Non-Tax Deductions is on |
| Employees | No | Employees attached to this payroll template; disabled when Include All Active Employees is on |
| Disable All Non-Tax Deductions | No | Skip all non-tax deductions during this payroll run (clears the Excluded Deduction Types list when turned on) |
| Include All Active Employees | No | Automatically include all active employees instead of attaching them individually (clears and disables the Employees picker when turned on) |
| Show Payroll Accruals On Pay Stub | No | Display accrual balances on printed pay stubs |
Incentive Rules
Section titled “Incentive Rules”Configure the rule templates that drive the incentive engine (spiffs and commissions; see Incentives). The tab appears with the View Incentive Rule permission and lists existing rules; use the + (New Rule) button to create one and the visibility toggle to show or hide inactive rules. Rules on a GPPM Tiered basis expand to show their configured tiers.
| Column | Description |
|---|---|
| Name | Rule name |
| Kind | Spiff or Commission |
| Scope | Work Order Line Item or Work Order |
| Basis | How the amount is computed |
| Earning Type | The payroll earning type the incentive pays out under |
| Payee | Who is paid |
| Auto Create | Whether the rule creates incentives automatically at billing |
| Active | Whether the rule is currently in effect |
Create / Edit Incentive Rule
| Field | Required | Description |
|---|---|---|
| Name | Yes | Rule name (must be unique) |
| Kind | Yes | Spiff or Commission |
| Scope | Yes | What the rule attaches to: Work Order Line Item or Work Order |
| Effective Date | Yes | First date the rule applies |
| End Date | No | Last date the rule applies (must be on or after the effective date) |
| Payroll Earning Type | Yes | The earning type incentives from this rule pay out under (drives the GL account). A warning appears if a reimbursement earning type is chosen, because such incentives bypass tax withholding. |
| Match On | Conditional | For Work Order Line Item scope only: which lines qualify — Product, Product Category, Flat Rate, Flat Rate Category, Line Item Type, or Dynamic Charge. A second picker then selects the specific product/category/flat rate/dynamic charge, or the line item type. |
| Payee | Yes | Who receives the incentive: Appointment Tech or Work Order Salesman |
| Basis | Yes | How the amount is computed: Flat Per Unit, Percent Of Total Sale, Percent Of Gross Profit, or GPPM Tiered |
| Amount Per Unit | Conditional | The flat amount, for the Flat Per Unit basis |
| Rate % | Conditional | The percentage, for the Percent Of Total Sale / Percent Of Gross Profit bases |
| Tier Metric | Conditional | For GPPM Tiered: GPPM or GP Percent |
| Tiers | Conditional | For GPPM Tiered: one or more tiers, each with a Minimum Threshold and a Rate % |
| Auto Create at Billing | No | When on, matching incentives are created automatically when a qualifying work order is billed. Forced off (and disabled) for GPPM Tiered rules. |
| Active | No | Whether the rule is currently in effect |
13. Permissions
Section titled “13. Permissions”For the complete list of permissions in this module and what each one allows, see the Permissions Reference.
| Permission | Description |
|---|---|
| View Payroll | View payroll periods and statements |
| Create Payroll | Create new payroll periods |
| Edit Payroll | Modify payroll settings and select bank |
| Delete Payroll | Delete payroll records |
| View Employee | View employee records |
| Create Employee | Create new employees |
| Edit Employee | Edit employee information |
| Delete Employee | Remove employee records |
| Compute Payroll | Compute payroll and view, create, and edit statement earnings, deductions, and amounts |
| Manage Timesheets | Create, view, edit, and delete timesheets and their time entries, and access the timesheet management screens |
| View Payroll Settings | View Payroll Settings (read-only) |
| Edit Payroll Settings | Access and modify Payroll Settings |
| Payroll Show Amounts | View dollar amounts in timesheets and timesheet reports; users without this permission see hours but not costs |
| Void Payroll Check | Void a payroll check and create reversing GL entries |
| Employee Time Clock | Access the employee time clock for clock-in/clock-out |
| Edit Time Clock Entry | Edit existing time clock entries |
| View Incentive Rule | View incentive rules in Payroll Settings |
| Create Incentive Rule | Create incentive rules |
| Edit Incentive Rule | Edit incentive rules |
| View Incentive | View incentives (Incentives screen and the work order Incentives tab) |
| Create Incentive | Add a spiff to a work order line item |
| Approve Incentives | Approve or deny pending spiffs and commissions |
| Delete All Payroll Timesheets | Clear every timesheet in a payroll at once |
14. Worked Examples
Section titled “14. Worked Examples”Example 1: Full Bi-Weekly Payroll Cycle
Section titled “Example 1: Full Bi-Weekly Payroll Cycle”Scenario: Pat (HR Manager) processes the bi-weekly payroll for 15 employees at Precision Mechanical. The period is 02/03/2026–02/14/2026 with a check date of 02/21/2026.
Step 1 — Sync timesheets:
- Navigate to Payroll → Compute Payroll.
- Select Payroll = Bi-Weekly 02/03–02/14, Bank = First National.
- Click Sync Timesheets. The system imports approved timesheet entries into each employee’s statement.
- 15 statements appear. Toggle Only Unapproved to review any issues.
Step 2 — Review a statement (Mike Torres):
-
Click Mike Torres’s row to open his statement.
-
Earnings:
Code Type Hours Rate Amount REG Regular 72.00 $30.00 $2,160.00 OT Overtime 8.00 $45.00 $360.00 Gross Pay $2,520.00 -
Deductions:
Code Type Amount FED Federal Withholding $378.00 FICA Employee FICA $192.78 HLTH Health Insurance $125.00 401K 401(k) Contribution $126.00 Total Deductions $821.78 -
Net Pay: $1,698.22 — Payment Method: Direct Deposit.
-
Click Approve.
Step 3 — Approve and run:
- Back on Compute Payroll, click Approve Entire Payroll for the remaining 14 statements.
- Click Run.
- The Check Issues dialog appears only when there are validation issues. Dave Chen has no direct deposit configured, but that is not flagged — an employee without direct deposit is simply paid by a printed check — so no issues appear and the run continues. (When issues exist, fatal ones such as a direct-deposit/bank misconfiguration must be fixed first, while non-fatal ones such as a negative accrual balance can be bypassed with Run Anyways.)
- Enter payroll message: “Direct deposit will be available 02/21. Office closed 02/17 for Presidents’ Day.”
- Click Run Payroll.
Step 4 — Complete payroll:
- Payroll Complete screen shows:
- Check Date, GL Date, and Pay Period
- Total Direct Deposit Amount: $24,320.80
- Total Check Amount: $1,845.50
- Click Download ACH File → submit to bank.
- Click Email Direct Deposit Stubs → each DD employee with an address marked Email Pay Stubs receives their pay stub.
- Click Print Checks → Dave Chen’s check prints.
GL posting (summary):
| Account | Debit | Credit |
|---|---|---|
| Wages Expense (configured) | $35,400.00 | |
| Employer FICA (configured) | $2,708.10 | |
| Cash (configured) | $26,166.30 | |
| Federal Tax Payable (configured) | $8,850.00 | |
| Accrued Liabilities (configured) | $3,091.80 |
Example 2: Timesheet with Job Allocation
Section titled “Example 2: Timesheet with Job Allocation”Scenario: Mike Torres works 40 hours during the pay period, split between two jobs. His timesheet entries feed both payroll and job costing.
Timesheet entries for the week of 02/03–02/07:
| Date | Entry Type | Time On | Time Off | Hours | Job | Job Cost Category |
|---|---|---|---|---|---|---|
| 02/03 | Site Work | 7:00 AM | 3:30 PM | 8.0 | J-1050 | Ductwork |
| 02/04 | Site Work | 7:00 AM | 3:30 PM | 8.0 | J-1050 | Ductwork |
| 02/05 | Site Work | 7:00 AM | 3:30 PM | 8.0 | J-1050 | Ductwork |
| 02/06 | Site Work | 7:00 AM | 3:30 PM | 8.0 | J-1062 | Piping |
| 02/07 | Site Work | 7:00 AM | 3:30 PM | 8.0 | J-1062 | Piping |
Result after sync to payroll:
- Mike’s payroll statement: 40 regular hours × $30/hr = $1,200.00 for this week
- Job J-1050 receives: 24 hours × $30/hr = $720.00 labor cost (Ductwork category)
- Job J-1062 receives: 16 hours × $30/hr = $480.00 labor cost (Piping category)
Both jobs show the labor expense on their Actual vs. Estimate dashboards immediately after payroll posts.
Example 3: Employee Termination and Final Pay
Section titled “Example 3: Employee Termination and Final Pay”Scenario: Dave Chen is terminated effective 02/14/2026. Pat processes his final paycheck including unused PTO payout.
Step 1 — Terminate the employee:
- Navigate to Payroll → Manage Employees and open Dave Chen’s record.
- Click Actions → Terminate Employee.
- Effective Date =
02/14/2026, Note = “Voluntary resignation — accepted position elsewhere.” - Click Terminate. Dave’s status changes from Active to Terminated.
Step 2 — Review accruals:
- On the Accruals tab, Dave has:
Accrual Type Balance PTO 32.0 hours Sick 16.0 hours (not paid out per policy)
Step 3 — Process final payroll statement:
- Navigate to Compute Payroll for the current period.
- Dave’s statement includes:
- Regular: 72 hours × $28/hr = $2,016.00 (hours worked through 02/14)
- PTO Payout: 32 hours × $28/hr = $896.00
- Gross Pay: $2,912.00
- Standard deductions apply. Net Pay = $1,845.50.
- Payment Method: Check (Dave has no direct deposit).
- Approve the statement.
Step 4 — Run and print:
- After running payroll, Dave’s check is printed.
- His PTO accrual balance is now 0.0 hours.
- His Employment History tab shows: “Terminated 02/14/2026 — Voluntary resignation.”
15. Business Rules
Section titled “15. Business Rules”Rules are grouped by category.
Constraints
Section titled “Constraints”- Approved Before Sync — Timesheets must be approved before they can be synced to payroll statements.
- Approved Before Run — Payroll statements must be approved before the payroll run can execute.
- Termination Date Floor — Termination effective date must be on or after the employee’s latest hire/rehire date.
- Overshot Deduction Check — Deductions exceeding the allowed maximum or available net pay are flagged; the Overshot Deductions Dialog offers auto-adjust or manual fix.
- Delete Payroll Lock — A payroll that has already been processed cannot be deleted. Additionally, all associated timesheets must be unlinked before deletion is allowed.
- SSN Uniqueness — An employee’s Social Security Number must be unique across all non-archived employees (active and terminated). Creating or updating an employee with a Social Security Number already on file is rejected; the message names the conflicting employee so the existing record can be rehired instead of duplicated. (An empty SSN is exempt.)
Automations
Section titled “Automations”- Timesheet Sync — The Sync Timesheets action pulls approved timesheet entries into payroll statements as earning lines.
- Rate Multiple — Earning types with rate multiples (e.g., 1.5× for overtime) auto-compute compensation from the base pay rate.
- FLSA Overtime — When enabled, the system auto-calculates overtime based on FLSA rules and configured earning type thresholds.
- GL Post on Run — Running payroll posts a balanced GL document per statement: each earning is debited to its configured earning GL account, each deduction is credited to its configured deduction (liability) GL account (with an extra expense-account debit for deduction types that carry an expense account), and net pay is credited to the payroll-accrual (clearing) account. For check (non-direct-deposit) statements, a paired accruals entry then debits the payroll-accrual account and credits the configured bank account.
- ACH File Generation — After running payroll, the Payroll Complete screen offers a Download ACH File action that generates an ACH file from the direct-deposit statements (with per-employee split instructions) for bank submission. The file is produced on download, not automatically during the run.
- Auto-Create Incentives at Billing — When a work order is billed, active incentive rules whose effective window covers the invoice date and whose Auto Create at Billing option is on create Pending incentives for the matching lines/work order and the resolved payee. Rules whose amount cannot be computed from the sale, whose payee is unresolved or terminated, or that compute a non-positive amount are skipped.
- Incentive Eligibility Gate — An Approved incentive becomes Eligible only when its linked customer invoice is paid in full (key-off amounts do not count as payment). If the invoice later stops being paid in full, an Eligible incentive that has not yet been imported reverts to Approved.
Workflows
Section titled “Workflows”- Payroll Cycle — Create Period → Enter/Sync Timesheets → Compute → Approve Statements → Run → Generate ACH/Checks.
- Employee Lifecycle — Hire → Active → Terminate → optionally Rehire. Terminating only end-dates the employment and flips status to Terminated; run any final pay (including PTO payout) as a normal payroll.
- Void Check Flow — Void creates reversing GL entries with negated amounts → Original check preserved with “Void” indicator → Employee’s payroll history shows both original and void entries.
- Rehire Flow — Rehire creates new employment record → Employee status returns to Active → Employee becomes available for payroll and timesheets → Full employment history preserved.
- Incentive Lifecycle — Pending → Approved (or Denied) → Eligible (invoice paid in full) → Imported (added to a payroll statement) → Paid (payroll processed). Voiding a check, deleting a statement, or deleting a payroll releases its incentives back to Eligible (or Cancelled if the underlying sale was credited) so a later payroll can pick them up; a Paid incentive is not clawed back on its own.
Cross-Module Effects
Section titled “Cross-Module Effects”- Job-Allocated Labor — Timesheet entries allocated to jobs create labor cost entries in Job Costing at employee rate × hours.
- Linked Service Labor — When Link Service Labor to Time Clock is enabled, clocking in on a work order creates a timesheet entry linked to the work order’s labor cost line. Syncing that entry to payroll locks the labor line against changes and posts the linked portion of the wages against the Accrued Service Wages Ledger, with any remainder going to unapplied labor.
- Incentives ↔ Work Orders & Invoices — Incentives originate from work order lines/work orders and gate on the customer invoice’s payment. Billing adopts pre-billing manual spiffs onto the invoice and cancels not-yet-decided incentives on removed lines; cancelling a work order or crediting its invoice cancels its not-yet-imported incentives.
16. Troubleshooting / FAQ
Section titled “16. Troubleshooting / FAQ”Q: Timesheets won’t sync to payroll — nothing happens when I click Sync. Timesheets must be approved before they can be synced (see Approved Before Sync). Navigate to the timesheet screen and approve all pending timesheets for the current period, then retry the sync. If Link Service Labor to Time Clock is enabled, also confirm an Accrued Service Wages Ledger is set in Payroll Settings — the sync stops with an error when it is missing.
Q: The Run button is disabled — payroll won’t execute. All payroll statements must be approved before the payroll run (see Approved Before Run). Use Approve Entire Payroll to approve all statements at once, or approve each individually. Check for any statements still in draft status.
Q: I can’t set the termination date — “date before hire date.” The termination effective date must be on or after the employee’s most recent hire or rehire date (see Termination Date Floor). Verify the employee’s hire date on their record and use a termination date that doesn’t precede it.
Q: The payroll run flags “overshot deductions” for an employee. A deduction amount exceeds the employee’s available net pay or the configured maximum (see Overshot Deduction Check). The Overshot Deductions Dialog offers two options: auto-adjust (reduce the deduction to fit) or manual fix (edit the statement to resolve the conflict).
Q: FLSA overtime isn’t calculating automatically. Ensure Compute FLSA Overtime Hours is enabled in Payroll Settings (see FLSA Overtime). Also check that the relevant earning types are marked as included in the overtime calculation. The system needs both the global setting and per-earning-type configuration.
Q: An employee’s hours appear in payroll but not on the linked job. Verify the timesheet entries have a Job and Job Cost Category filled in. Only entries with job allocation create labor cost entries in Job Costing (see Job-Allocated Labor). Entries without job allocation still flow to payroll but won’t appear in job costing.
Q: The ACH file is missing an employee’s direct deposit. Check the employee’s Direct Deposit tab for active split records. If no direct deposit is configured, the employee is simply paid by a printed check — this is not flagged during the run.
Q: An accrual balance was unexpectedly zeroed out. If the accrual type has an expiration rule, balances past the expiration date are automatically zeroed. Review the accrual type’s expiration date settings and check the employee’s accrual history.
Q: How do I void a payroll check? Navigate to Payroll → Manage Employees, select the employee, open the Payroll History tab, and click the Void (cancel) icon button on the check’s row. Confirm when prompted. The system creates reversing GL entries dated to the original check date — the original check is not deleted but marked as voided (see Void Check Flow). You need the Void Payroll Check permission.
Q: I can’t delete a payroll — what are the prerequisites? The payroll must not have been processed (run), and there must be no timesheets still associated with it (see Delete Payroll Lock). If timesheets are linked, unlink or delete them first. If the payroll has been run, it cannot be deleted — consider voiding individual checks instead.
Q: How do I rehire a terminated employee? Navigate to Payroll → Manage Employees, open the terminated employee’s record, and click Actions → Rehire Employee. Enter the effective date and an optional note. The employee’s status changes to Active and they become available for payroll processing (see Rehire Flow).
Q: Where is the employee time clock? Open the Time Clock from the account/avatar menu in the top bar (it is not a Payroll menu item). The time clock must be enabled in Payroll → Settings under Time Clock Options (Desktop Time Clock Enabled). For mobile access, enable Mobile Time Clock in the same settings area.
Q: I can’t save an employee — “This SSN is already assigned to …”.
The Social Security Number you entered already belongs to another employee, active or terminated (see SSN Uniqueness). The message names that employee. If it is the same person returning, open their existing record and use Rehire Employee rather than creating a new one.
Q: I approved an incentive but it isn’t on the payroll yet.
Approved incentives become Eligible only after the linked customer invoice is paid in full (see Incentive Eligibility Gate); a key-off does not count. Once eligible, pull them in with Import Incentives in Manage Timesheets. Confirm the invoice is fully paid and the incentive shows Eligible on the Incentives screen.
Q: Import Incentives skipped some rows.
The skip reason is shown. Common causes: the employee has no statement on the selected payroll (the incentive stays Eligible for a later run), the employee’s statement is already approved (un-approve it first), the incentive is no longer eligible, or the rule’s earning type has no GL account configured.
17. Tips & Notes
Section titled “17. Tips & Notes”-
Sync Timesheets first: Before running payroll, use Sync Timesheets on the Compute Payroll screen to import approved timesheet entries into each employee’s statement. Entries that have not been approved in the timesheet screen will not sync.
-
Approval workflow: Statements must be approved before payroll runs. Use Approve Entire Payroll to approve all at once, or approve individually. Run triggers a warning if unapproved statements remain.
-
Overshot deductions: If a deduction amount exceeds the employee’s net pay or the configured maximum, the run process will flag it. You can auto-adjust the overage or resolve it manually by editing the statement.
-
FLSA overtime: Enable Compute FLSA Overtime Hours in Settings to let the system automatically calculate overtime based on FLSA rules. Configure per earning type whether it is included in the overtime calculation.
-
Direct deposit ACH: After running payroll, download the ACH file from the Previous Payrolls dialog or the Payroll Complete screen and upload it to your bank. The ACH file requires the correct bank routing configuration in Settings.
-
Pay rate history: Adding a new pay rate on the Pay Rates tab takes effect from the specified effective date. The most recent effective date is the employee’s current rate — do not delete old entries as they are needed for historical payroll accuracy.
-
Termination dates: The termination effective date must be on or after the employee’s most recent hire or rehire date. After termination, the employee no longer appears in active payroll processing.
-
Accrual expirations: If an accrual type has an expiration rule, balances past the expiration date are automatically zeroed. Review accrual balances and expiration dates before year-end.
-
Employee Portal access: The Employee Portal is self-service and does not require an admin login. Employees can view their pay history and YTD charts without staff assistance.
-
Payroll Show Amounts permission: Users without the Payroll Show Amounts permission will see timesheet hours but not dollar amounts. Grant this permission only to roles that need to view labor costs.
-
Payroll Types templates: Using Payroll Types to create templates for different payroll runs (e.g., salaried vs. hourly, regular vs. supplemental) reduces manual setup each period by pre-configuring which earning types and deductions apply.
Rehiring an Employee
Section titled “Rehiring an Employee”- Navigate to Payroll → Manage Employees and search for the terminated employee.
- Open their record and click Actions → Rehire Employee.
- Enter the Effective Date (defaults to today) and an optional Note documenting the reason for rehire.
- Click Rehire. The employee’s status changes to Active and a new employment record is created.
- The employee is now available for timesheet entry and payroll processing. Their full employment history (all hire/terminate/rehire events) is preserved on the Employment History tab.
Using the Employee Time Clock
Section titled “Using the Employee Time Clock”- Open the Time Clock from the account/avatar menu in the top bar (must be enabled in Payroll Settings).
- Select a Pay Type from the dropdown (e.g., Regular, Overtime).
- Click Clock In to start tracking time. The system records the current timestamp and geolocation.
- When finished, click Clock Out. The system calculates hours worked and the dollar amount based on your pay rate and the pay type’s rate multiple.
- Your time entries appear in the grid below. Use Privacy Mode to hide rates and amounts on shared screens.
- To add historical or manual entries, click the add (+) button (Create Timesheet Entry) and fill in the date, times, and optional job allocation.