Timecard Save Validation
Note: This business process An organized flow of activities or tasks that achieves a business goal. An automated business process minimises the amount of paperwork and manual tasks to complete that process by way of automatic actions, online forms, and automatically generated messages. is an extension model that is developed outside the normal release schedule to meet specific customer needs. To request one of these models, you must submit a Salesforce Service Request to UKG. After the model is delivered to your tenant, you can edit it to meet your needs.
The Timecard Save Validation process provides a framework that offers granular control over transactional data passed to the Workflow Engine by a manager who saves timecard changes.
Organizations have the option to enforce one or more validation workflows at any given time. When the process is initiated by the manager timecard save action, supported validation workflows include:
Manager Access to Employee
Manager access to an employee timecard is based on the employee group assignment. When the employee works for a manager at least one day during the selected time period, the manager has access to all days in the time period.
When you enable the Manager Access to Employee function and an employee works on different contracts or has multiple primary locations and jobs that are not part of the manager's employee group, the manager is prevented from making paycode A category of time or money that employees earn, for example, Regular Hours, Bonus, or Sick. edits on days when the employee reports to some other manager.
Mandatory Paycode Comments — Timecard entry
Adding a comment to a paycode edit in a timecard is a common business requirement. A missing comment can disrupt an established business process, as in the following examples.
-
Operational reasons
A production line encounters downtime, which prevents its operators from working. A comment attached to the excused paycode edit identifies the reason, such as malfunction or material shortage, and is then used for reporting purposes. The absence of a comment prevents correct reporting related to the cause of the incident.
-
Payroll reasons
In certain regions, customers use one generic paycode for a series of different absences. A comment identifies the absence type and is referenced during payroll export. When no comment is provided, payroll is not processed correctly, resulting in payment errors.
-
Missing time audit
When employees are late, a duration paycode is added to justify missing time. The missing time must be accompanied by a comment for tracking purposes.
To prevent disruption of an organization's established business processes, the Mandatory Paycode Comments function prevents a timecard save action by using a two-step validation. First, the validation checks whether the paycode requires a comment. Second, the validation checks the appropriateness of the comment selection. When no comment or an incorrect comment is attached to the paycode, the system displays an error message and prevents the timecard save action.
The Mandatory Paycode Comments validation process initiates only when a paycode is added to the timecard. Paycodes added during a group edit Changes made to more than one employee record at a time, for example, add or delete a pay code or punch to a group of timecards., such as a dataview A configurable tool for analysing data and taking actions on a group of employees or an organisation., are not routed through the validation workflow.
Mandatory Paycode Comments — Global Time Off Requests validation
See the Global Time Off Requests (GTOR) Validation Rules topic.
The GTOR validation process supports mandatory paycode comments when submitting requests. Enable this validation process according to customer need.

Manager Access to Employee
A contract employee works on multiple short-term contracts for the organization. Manager A oversees contract A; and Manager B oversees contract B.
The contract employee works the first 3 days of the pay period on contract A, and then works the last 3 days of the pay period on contract B.
If Manager A adds a paycode on the last day of the pay period, which is outside Manager A's span of control, the system displays an error message and prevents the timecard save action.
Mandatory Paycode Comments — Timecard entry
When adding the "Sick" paycode to a timecard, the paycode must be accompanied with at least one of the following comments:
-
COVID
-
Doctor visit
-
Blood donation
-
Migraine
A manager who is responsible for entering the "Sick" paycode to an absent employee's timecard forgets to select a comment before saving the paycode edit.
Because the paycode is configured with mandatory comments, the unsuccessful validation generates an error and prevents the timecard save action.

Feature switch
Enable the Timekeeping.ManagerTimecardSaveValidationCallout.enable feature switch on the customer tenant; see the
System settings
Configure system settings that enable manager timecard attestation The act of confirming or attesting that something is true. For example, when punching out, users may need to attest that they took their meal breaks., and specify the attestation workflow; see the
These settings are not visible by default and must be enabled on your tenant by a Service Representative.
site.timekeeping.ManagerTimecardAttestation.enable = true
site.timekeeping.ManagerTimecardAttestation.workflow = TimecardValidation_v2
Process profiles
Configure a process profile to support the managers that use the Timecard Save Validation business process.
See the
-
Go to Application Setup > Business Process Setup > Process Profiles.
-
Do one of the following:
-
Click Tap New to create a process profile, and then enter a Name.
-
Select a profile and click tap Edit. You cannot edit All Process Templates A file that automates and directs the flow of a business process. It contains the tasks, people, and rules that define the process. or Empty Profile.
-
-
From the Available Items area, select the TimecardSaveValidation_v2 business process, and then move it to the Selected Items box.
-
Click Tap Save.
-
Associate the process profiles to appropriate managers for which the validation applies.

Migrate the business process model to the tenant
Migrate the Timecard Save Validation process model to the customer tenant using Setup Data Manager (SDM Set-up Data Manager moves and manages configuration data across software and hardware environments.).
-
Log in to the appropriate tenant.
-
Go to Main Menu > Administration > Setup Data Manager.
-
Select the Source tenant where the Process Model resides, and select the template to copy. It is a .zip file. A message appears in the Source column: Source: Import from <filename>.zip.
-
Click Tap Review and Publish. The Publish Summary panel appears.
-
Review the Publish Summary panel. It lists the items that were extracted from the migration file. If you approve, click tap Publish with Comment or just Publish.
-
Click Tap Go to Publish History at the bottom of the panel to view the status of the data transfer. The Publish History page contains a table that lists the items you have published. If there were errors during the transfer, the button under the Errors column for that row is black.
-
To view details, click tap the appropriate row and click tap View Selected.
-
On the History for publish run page, click tap Show all to view the setup data that you published, and the errors that occurred, if any, listed by item type and name.
Configure the decision tables
Configure the Timecard Save Validation decision tables.
-
Go to Main Menu > Administration > Application Setup > Business Process setup > Process Models.
-
Select the TimecardValidation_v2 process and click tap Edit. The process model enters edit mode.
-
Select the Decision Tables tab.
-
Click Tap Everyone's, and then select the decision table to edit.
-
Click Tap Decision Table Editor to add or update the rows in the table.
-
Click Tap Save and close.
TimecardValidation_v2_Parameters — Controls the active validation processes in the workflow framework.
Parameter name | Description | Default value |
---|---|---|
MandatoryPayCodeComment |
Enables the mandatory paycode comment functionality. Yes — enables the functionality. No — does not enable the functionality. |
Yes |
ManagerAccessToEmployee |
Enables the manager access to employee functionality. Yes — enables the functionality. No — does not enable the functionality. |
Yes |
MandatoryPayCodeComment_ExcludeProcessProfile |
A semicolon-separated list of process profiles that are excluded from the mandatory paycode comment functionality. Supports wildcard use. Each process profile must be configured in UKG Pro Workforce Management™. |
|
ManagerAccessToEmployee_ExcludeProcessProfile |
A semicolon-separated list of process profiles that are excluded from the manager access to employee functionality. Supports wildcard use. Each process profile must be configured in UKG Pro Workforce Management™ |
TimecardValidation_v2_InternalParameters — Controls internal timecard validation parameters.
Parameter name | Description | Default value |
---|---|---|
Admin |
Internal user; do not change. |
SERVICES-LEVEL3 |
ExcludeEmployees |
A semicolon-separated list of employees that are excluded from the validation. |
TimecardValidation_v2_ManagerAccessToEmployee_Parameters — Contains configurable parameters for manager access to employee functionality.
Parameter name | Description | Default value |
---|---|---|
ValidateTransferredIn |
Primary Job:
Transfer Job Jobs that an employee can perform but that are not the employee's primary job.:
|
Transfer Job |
ValidateTransferredOut |
Primary Job:
Transfer Job:
|
Transfer Job |
ValidateLaborCategory |
Determines whether the workflow validates the labor category. Yes — validates the labor category. No — does not validate the labor category. |
No |
ValidateAllEntries |
Determines when to display error messages generated by the workflow. Yes — displays the error after validating all entries. No — displays the error immediately after the first validation failure. |
Yes |
Shared_MandatoryPayCodeComment — Contains a list of paycodes that require a comment and identifies the associated acceptable comments.
Column name | Description |
---|---|
Pay Code |
Identifies paycodes that require a mandatory comment. Each paycode must be configured in UKG Pro Workforce Management™ |
Comments |
A semicolon-separated list of comments that identifies the acceptable comments for the associated paycode. Each comment must be configured in UKG Pro Workforce Management™ |
-
Do not create Null or Default comments.
-
The last row in the decision table must remain empty ("!=empty".)
-
This decision table is utilized by other business processes. It is recommended that a backup of the existing table is created before deploying other business processes that use the same decision table.
TimecardValidation_v2_ManagerAccessToEmployee_Locale — Allows customization of the text in the workflow form and notifications related to Manager Access to Employee functionality for different locales.
Variable name | Variable type | Description |
---|---|---|
Locale Parameter Name | Text | Internal field label; do not change. |
Locale Policy | Text |
Name of the locale policy for which the text applies. When the text applies to all locales, retain the empty value. |
Locale Message | Text | Text displayed in the workflow form or notification. |
Locale Description | Text | (Optional) Additional information. |
TimecardValidation_v2_MandatoryPayCodeComment_Locale — Allows customization of the text in the workflow form and notifications related to Mandatory Paycode Comment functionality for different locales.
Variable name | Variable type | Description |
---|---|---|
Locale Parameter Name | Text | Internal field label; do not change. |
Locale Policy | Text |
Name of the locale policy for which the text applies. When the text applies to all locales, retain the empty value. |
Locale Message | Text | Text displayed in the workflow form or notification. |
Locale Description | Text | (Optional) Additional information. |
-
Localization of business process workflows remains optional, but is supported.
-
The decision table holds all messages represented with standard English labels; these apply to all locales when the Locale is set to a wildcard (*).
-
Some or all messages can be translated by adding lines to the table in their preferred translation for specific locales. Messages for the most commonly used Locale Policy should be defined at the top of the decision table. Text within tags ("<>") must not be changed.
-
Names of the parameters in the decision table column Parameter Name must be used as is. If any parameter value needs to be localized for a different Locale Policy, copy the Parameter Name with the * Locale Policy, add a new row to the decision table with the appropriate Locale Policy, and then add the localized values in the Message column.
-
The last row in the decision table must remain empty ("!=empty".)
Deploy the updated business process model
Process models must be redeployed every time changes are made to an existing model. Re-deployment is not required for decision table changes.
Model deployment steps:
-
Go to Main Menu > Administration > Application Setup > Business Process Setup > Process Models.
-
Select the TimcardValidation_v2 model.
-
Click Tap Edit, and then configure the required parameters and deployment dates. Select External Actions from the Template Categories list.
-
Click Tap Save, and then select Return to deploy.

API name | Type | Resource path | Description |
---|---|---|---|
Retrieve Person by Extension | GET | /v1/commons/persons/{extensionType}?person_number={personNumber} | Retrieves the employee’s primary job and primary labor categories. |
Retrieve User Preferences for Current User | GET | /v1/commons/user_preferences/locale_policy?userCurrent=true | Retrieves manager’s locale. |
Retrieve Comments — Manager | GET | /v1/commons/comments | Retrieves all comments details. |
Retrieve Pay codes as Manager | GET | /v2/timekeeping/setup/pay_codes | Retrieves all paycode details. |
Retrieve Manager Role Assignments | POST | /v1/commons/persons/manager_role_assignments/multi_read | Retrieves Manager’s manager role assignment. |
Retrieve Employee Group by ID | GET | /v1/commons/employee_groups/{Id} | Retrieves employee group details. |
Retrieve Location Set by ID | GET | /v1/commons/location_sets/{id} | Retrieves location and jobs from org set assigned in employee group. |
Retrieve Labor Category Profile by ID | GET | /v1/commons/labor_category_profiles/{id} | Retrieves labor categories entry from labor category profile assigned in employee group. |
Retrieve Display Profile by ID | GET | /v1/commons/display_profiles/{displayProfileID} | Retrieves manager's display profile. |
Retrieve All Labor Categories | GET | /v2/commons/labor_categories | Retrieves all labor categories. |