Payroll Processor

The payroll processor allows to group employees/contractors, especially with different regulations.

The main attributes are:

  • Type - Weekly or Monthly
  • First Day of Week (defaults to Sunday if not defined)
  • Overtime min hours/week (default, can be overwritten in Resource)
  • Default - for Resources which do not have a Payroll Processor assigned

You can also define here a cut-off date (close date) for Time and Expense entries.


Payroll Period


You need to define your payroll periods with a

  • unique name
  • payroll processor
  • start date
  • end date

The Date Range should not overlap and be in sync with the Timesheet range (week start). If this is not the case, the first applicable (not closed) payroll period will be used. Once you closed a payroll period, you can create a new one for the same date range - e.g. for late Timesheets or adjustments.


You can define parallel Payroll Periods for different user groups - e.g. US and Canadian employees.


Payroll Codes


You can define multiple payroll codes which are used as summary levels in the Payroll Periods. For the normal time, you would not select any of the indicators. For Holiday and Vacation, it is best practice to create Projects, so that users can use the normal Timesheet entry to specify off-time. Alternatively, you could also use Activity Types, but you should make sure that the payroll codes used in Projects and Activity Types are consistent.


Payroll Code Priorities


You can define the payroll code in different parts of the system. This is the priority hierarchy to derive the payroll code:

  • Activity Type
  • Project
  • Resource
  • User
  • Custom Setting - Payroll Settings (fallback) 


Payroll Reporting Flow



Payroll Processing Flow

After Timesheets have been entered and approved, the Payroll Periods needs to be updated. This can be done manually in the Payroll Period via the Update Period button - or via a scheduled Apex Class (PayrollUpdate).


If you have Overtime rules, you would run the overtime calculation via the Calculate Overtime button after you closed the period. You can (re) run the overtime calculation multiple times - also before you close the period to validate the calculation.


Users (and their Managers) can view their reported hours in the Payroll View tab by selecting the payroll period.


Payroll Summary


The Payroll Summary is a reporting entity. It summarizes the values Daily by

  • Payroll Period, User and
  • optionally Project / Phase / Line / Activity Type / Rework. 


You set the summary level in the Custom Settings in "Payroll Settings" for Summary. Note that changes are effective for new transactions. To change existing summaries, you need to recalculate the period.


Payroll Entry


This is the underlying entity for Payroll View and allows how to summarize the entries - by


  • Payroll Period, User, Payroll Code and
  • optionally Project / Phase / Line / Activity Type / Rework.


You set the summary level in the Custom Settings in "Payroll Settings" for Entry. Note that changes are effective for new transactions. To change existing entries, you need to recalculate the period.