This guide provides an overview of the data model supporting the Skedulo integration with SAGE/2C9/People Pay. A clear understanding of this model is essential for administrators and schedulers to effectively manage the flow of employee and timesheet data between the systems, ensuring accuracy for payroll processing and job costing.
The primary objective of this integration is to facilitate the seamless transfer of data between Skedulo and SAGE/2C9/People Pay. This ensures that employee and timesheet information remains synchronized and consistent without manual intervention. SAGE/2C9 serves as the system of record for core employee details, while Skedulo manages the work and leave data that is subsequently used by SAGE/2C9 for payroll.
Data Mastery
Data mastery defines which system is the primary source of truth for specific types of information.
- SAGE/2C9/People Pay: Is the master system for employee details, which are stored in the Payee object. These details are synchronized to create and update Resource records in Skedulo.
- Skedulo: Is the master system for all work and leave-related data. This includes Jobs, Activities, Shifts, and Unavailability.
- Location Data: Location data is maintained independently in both systems and is not shared or synchronized through the integration.
- Custom Settings: The Skedulo SAGE/2C9 package contains a number of custom settings that can be used to configure solution capabilities and ensures data between the two systems in sync.
Note: Custom settings and foundational data required for effective award interpretation is stored and maintained in the SAGE/2C9 package.
Core Object Relationships
The integration functions through established relationships between key objects in both Skedulo and SAGE/2C9/People Pay. Communication is managed through direct data updates via triggers or other Salesforce mechanisms, requiring no separate authentication.
Payee and Resource
- A Payee in SAGE/2C9 represents an individual to be paid.
- A Resource in Skedulo represents a support worker who performs work.
- Payee records from SAGE/2C9 are synchronized to create and update the corresponding Resource records in Skedulo. The Skedulo Resource checkbox on the Payee object determines if a Payee is created as a Resource.
- A custom lookup field on the Resource object links it directly to the corresponding Payee record.
Assignment
- An Assignment is a record in SAGE/2C9 that ensures support workers are configured with the correct payment rates.
- It is linked to the Payee and the Resource via the Resource’s Interpretation Rule and Category/Record Type.
- An Assignment is typically created automatically when a new Resource is created or when their first timesheet is processed.
Jobs, Shifts, Activities, and Unavailability
- These Skedulo objects represent all work and leave events.
- This data is mastered in Skedulo and forms the basis for timesheet creation.
Timesheets
- Skedulo Timesheets consolidate all work and leave data (Jobs, Activities, Shifts, Unavailability) for a specific period.
- When a Skedulo Timesheet is approved, it triggers the creation of a corresponding Timesheet in SAGE/2C9.
- A custom field on the Skedulo Timesheet links it to the corresponding Sage Timesheet for reference.
Timesheet Entry
- A Timesheet Entry in SAGE/2C9 represents an individual work or leave period transferred from Skedulo.
- Timesheet Entries are created from approved Jobs, Activities, or Shifts.
- Multiple Jobs or Activities occurring on the same day within a configurable time threshold may be summarized into a single Timesheet Entry.
- Leave events from Skedulo are also transferred as Timesheet Entries.
Timesheet Item
- A Timesheet Item in SAGE/2C9 represents Allowance or Cost Code information.
- This data is captured on Skedulo objects (e.g., Jobs, Activities) and sent to SAGE/2C9 as Timesheet Items when the associated timesheet is approved.
Leave Events
- Approved Unavailability requests in Skedulo, particularly those that conflict with scheduled work, may generate a Skedulo Leave Event.
- These events are then sent to SAGE/2C9 as Payee Leave Events for formal leave processing.
- SAGE/2C9 manages all leave balances, which can be made visible to resources through a custom form in the Skedulo mobile app.
Cost Centre and Accounting Segment
- A Cost Centre in Skedulo is a tag used to assign revenue or expenses to a specific company division for reporting.
- In SAGE/2C9, this concept is represented by an Accounting Segment.
- Skedulo timesheet entries require a cost centre code, which is passed to the Accounting Segment in SAGE/2C9.
- Cost centres can be sourced from various Skedulo objects, including Jobs, Activities, and Job Allocations, based on configuration.
Project Code
- The Project Code feature allows for a higher pay rate to be applied based on an award classification and level.
- A lookup field on the Job Allocation object links it to a Project Code.
- The selected Project Code is sent to the SAGE/2C9 Timesheet Entry, which may create a corresponding “Assignment Level” record in SAGE/2C9.
Interpretation Rule
- An Interpretation Rule in SAGE/2C9 represents a pay award.
- It can be defaulted for an employee or linked directly to a Resource/Assignment.
- Selecting an Interpretation Rule Type on the Job scheduling window is interpreted as a “Timesheet Activity” in the SAGE/2C9 Timesheet Entry.
- Skedulo validates that the selected Interpretation Rule exists in SAGE/2C9 before the timesheet can be approved.
Allowances
- Allowances are standard or custom payments captured on Jobs (and potentially Activities, for travel) in Skedulo.
- They are sent to SAGE/2C9 as Timesheet Items with corresponding pay codes.
- A Custom Metadata Type is used to map Skedulo allowance fields to the correct pay codes in SAGE/2C9.
Job Costing Temporary Objects
- To estimate job costs before payroll is run, Skedulo creates temporary records (e.g., Temp Job Allocation) and communicates with SAGE/2C9.
- SAGE/2C9 creates corresponding temporary Timesheets, Timesheet Entries, and Pay Transactions. These are marked to distinguish them from actual payroll data, using the tc9_et__Apply_Estimation__c field on the Timesheet Entry and the ‘Other‘ record type for Pay Transactions.
- These temporary records are periodically deleted from the system.
Terminology
| Term | Description |
|---|---|
| Payee | A person who is to be paid by SAGE/2C9 Payroll. This record is mastered in SAGE/2C9. |
| Resource | A support worker who uses the Skedulo Mobile App to perform assigned work. This record is synchronized from a Payee in SAGE/2C9. |
| Scheduler | A person responsible for scheduling jobs, activities, and shifts using the Skedulo platform. |
| Assignment | A record in SAGE/2C9 that ensures support workers are correctly configured for necessary payment rates. It is created when a Resource is created or their first timesheet is processed. |
| Cost Centre | A tag applied to revenue or expenses in Skedulo, representing a division within a company for reporting purposes. |
| Accounting Segment | The SAGE/2C9 equivalent of a Cost Centre. |
| Timesheet Entry | A record in SAGE/2C9 representing a Job, Shift, Activity, or Leave Event sent from Skedulo for payroll processing. |
| Timesheet Item | A record in SAGE/2C9 representing Allowance or Cost Code information sent from Skedulo. |
| Payee Leave Event | A record representing approved leave in SAGE/2C9. It is created from a Skedulo Leave Event linked to an approved Skedulo Timesheet. |
| Project Code | A feature that facilitates a higher pay rate for resources based on a combination of award classification and level. It is linked from a Job Allocation. |
| Interpretation Rule | Represents a pay award in SAGE/2C9 used for payment processing. Skedulo validates its existence before timesheet approval. |
| Allowance | Standard or custom payments captured on Skedulo Jobs (or Activities) and sent to SAGE/2C9 as Timesheet Items with corresponding pay codes. |
| Estimated Interpretation (Job Costing) | The process of predetermining pay rates for a shift before timesheet processing for informational purposes. This process uses temporary data in SAGE/2C9. |