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.
- Service (Work Orders) → Mobile time clock entries on work orders create timesheet entries automatically when “Mobile Time Sync WO Time to Payroll” is enabled in Settings.
- 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 cash account for net pay, 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 (crediting each earning’s GL account, debiting withholding liabilities, and crediting the payroll-accrual/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, Check Total, and Direct Deposit Total. From each historical payroll you can:
- Download ACH — Download the ACH direct deposit file
- Print Stubs — Print pay stubs for all employees
- Re-Print Checks — Reprint check documents for all employees in the payroll
- Reprint Single Check — Reprint an individual employee’s check from a previous payroll without reprinting the entire batch
- Re-Send Stubs — Email pay stubs again
- Reports — Run payroll-related reports for the period
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”| Action | Description |
|---|---|
| Recompute | Recalculate all amounts based on current configuration |
| Approve / Unapprove | Toggle the approval status of this statement |
| Delete Statement | Remove this statement from the payroll |
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 all direct deposit employees |
| 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 # [checkNumber]?” 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: voidPayrollCheck
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 Only toggle limits the list to active employees.
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) |
| 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 |
| 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 (Earning GL Override). No per-employee rate override or effective dates. |
| Email Addresses | Multiple email addresses — primary and secondary designations |
| 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 |
| 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. |
| Add Pay Rate | Creates a new pay rate entry — requires Effective Date and Pay Amount (must be > 0), plus Hourly/Salary indicator |
| Add Accrual | Adds an accrual balance — requires Accrual Type, Effective Date, and Amount; optional Expiration Date and Note |
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 |
|---|---|
| Entry Date | Date of the time entry |
| Employee 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 payrollShowRates permission) |
| Amount | Dollar cost — for Hours-type entries it requires the payrollShowRates permission; for Amount-type entries it requires the payrollShowAmounts 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) |
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.
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 two import actions — Auto-Import and Import Selected — that pull these loose entries 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 payrollShowRates permission) |
| Amount | Dollar amount — for Hours-type entries it requires the payrollShowRates permission; for Amount-type entries it requires the payrollShowAmounts 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.
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 payrollShowRates permission) |
| Amount | Dollar amount; subtotaled per job (shown only with the payrollShowAmounts 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) |
| Job | No | Job Costing job to assign this time to |
| Work Order | No | Work order to assign this time to |
| Appointment | No | Service appointment associated with this entry |
| Job Category | No | Cost category for job costing |
| 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. |
- 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 accrual information. The portal is unlocked by SSN verification and is accessible without administrator credentials.
Sections
Section titled “Sections”Employee Information
- Employee ID, full name, start (hire) date, and tenure
- Pay rate and pay type (Hourly or Salary)
- Contact information (address, home/cell phone, email)
Summary Cards
Four stat cards at the top of the portal:
- 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
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
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 |
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.
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.
Privacy Toggle
Employees can toggle the visibility of dollar amounts and sensitive information for privacy when viewing on shared screens.
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
tokenvalue 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/employeePortalso 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 clicking Add Entry, 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:
-
Click Add Entry 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 an approved timesheet, helping employees and managers track pending time.
11. Settings
Section titled “11. 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 |
| 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 |
| Sync Mobile Work Order Time to Payroll | Automatically syncs mobile work order time 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) |
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) |
| Name | Yes | Display name |
| Default Ledger Account | 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 |
| 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 |
| Name | Yes | Display name |
| Type | Yes | Amount or Hours |
| Default Ledger Account | Yes | GL account for posting earnings |
| Rate Override | No | Fixed rate to apply instead of employee pay rate |
| Rate Multiple | No | Multiplier applied to the employee’s pay rate |
| Is Taxable | No | Whether the earning is subject to tax |
| Is Reimbursement | No | Whether the earning is a non-wage reimbursement |
| Compute FLSA Overtime | No | Whether to include this earning in 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. Each type maps to an earning type and can have default cost center and export settings.
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 |
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 |
| Assigned Employees | No | Employees attached to this payroll template |
| Include All Active Employees | No | Automatically include all active employees instead of attaching them individually (disables the Employees picker when on) |
| Disable All Non-Tax Deductions | No | Skip non-tax deductions during this payroll run |
| Show Payroll Accruals on Pay Stub | No | Display accrual balances on printed pay stubs |
12. Permissions
Section titled “12. Permissions”| 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 |
13. Worked Examples
Section titled “13. 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 → all 14 DD employees receive pay stubs.
- 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.”
14. Business Rules
Section titled “14. Business Rules”Rules are grouped by category. Each rule has an ID for cross-referencing.
Constraints
Section titled “Constraints”- BR-PAY-C1: Approved Before Sync — Timesheets must be approved before they can be synced to payroll statements.
- BR-PAY-C2: Approved Before Run — Payroll statements must be approved before the payroll run can execute.
- BR-PAY-C3: Termination Date Floor — Termination effective date must be on or after the employee’s latest hire/rehire date.
- BR-PAY-C4: Overshot Deduction Check — Deductions exceeding the allowed maximum or available net pay are flagged; the Overshot Deductions Dialog offers auto-adjust or manual fix.
- BR-PAY-C5: Delete Payroll Lock — A payroll that has already been processed cannot be deleted. Additionally, all associated timesheets must be unlinked before deletion is allowed.
Automations
Section titled “Automations”- BR-PAY-A1: Timesheet Sync — The Sync Timesheets action pulls approved timesheet entries into payroll statements as earning lines.
- BR-PAY-A2: Rate Multiple — Earning types with rate multiples (e.g., 1.5× for overtime) auto-compute compensation from the base pay rate.
- BR-PAY-A3: FLSA Overtime — When enabled, the system auto-calculates overtime based on FLSA rules and configured earning type thresholds.
- BR-PAY-A4: GL Post on Run — Running payroll posts a balanced GL document per statement: each earning is credited to its configured earning GL account, each deduction is debited to its configured deduction 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.
- BR-PAY-A5: 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.
Workflows
Section titled “Workflows”- BR-PAY-W1: Payroll Cycle — Create Period → Enter/Sync Timesheets → Compute → Approve Statements → Run → Generate ACH/Checks.
- BR-PAY-W2: 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.
- BR-PAY-W3: 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.
- BR-PAY-W4: Rehire Flow — Rehire creates new employment record → Employee status returns to Active → Employee becomes available for payroll and timesheets → Full employment history preserved.
Cross-Module Effects
Section titled “Cross-Module Effects”- BR-PAY-X1: Job-Allocated Labor — Timesheet entries allocated to jobs create labor cost entries in Job Costing at employee rate × hours.
- BR-PAY-X2: WO Time Sync — When enabled, mobile time clock entries on work orders auto-create timesheet entries for payroll.
15. Troubleshooting / FAQ
Section titled “15. Troubleshooting / FAQ”Q: Timesheets won’t sync to payroll — nothing happens when I click Sync. Timesheets must be approved before they can be synced (BR-PAY-C1). Navigate to the timesheet screen and approve all pending timesheets for the current period, then retry the sync.
Q: The Run button is disabled — payroll won’t execute. All payroll statements must be approved before the payroll run (BR-PAY-C2). 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 (BR-PAY-C3). 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 (BR-PAY-C4). 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 (BR-PAY-A3). 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 (BR-PAY-X1). 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 system prints a check instead. The payroll run warns about employees without direct deposit as a non-fatal issue.
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 (BR-PAY-W3). You need the voidPayrollCheck 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 (BR-PAY-C5). 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 (BR-PAY-W4).
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.
16. Tips & Notes
Section titled “16. 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, accrual balances, and YTD charts without staff assistance.
-
Show Payroll Amounts permission: Users without the Show Payroll 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 Submit. 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 Add Entry and fill in the date, times, and optional job allocation.