Before an Arcoro Payroll sync reads or writes any actual records, it runs a short setup step called preload. Preload gathers the reference data the sync will need for that entity, things like your Work Locations, Pay Schedules, active Employees, and Earning Codes, so it can match and validate records as they come through.
If any single piece of that reference data cannot be found, or comes back empty, the setup step fails, and the entire sync run stops immediately, before any records are read or written. That is why a preload failure almost always means you see nothing added or updated for that run, even though nothing about their individual employee, time, or expense records was wrong.
Error Messages
| Message text | Direction | Occurs when | Outcome | Fix |
|---|---|---|---|---|
| Contractor Preload encountered one or more errors. Review the logs, correct the issues and execute the Sync again. | Read (Payroll to Arcoro), Contractor | One or more Contractor preload lookups failed. In practice only the Work Locations lookup can fail here (no locations returned, or none active); the Department, Labor Classification, and Business Unit lookups cannot fail. | Sync stopped. The entire sync run ends in Failure before any Contractors are read. | Open the specific Work Locations error logged alongside this message and resolve it in Payroll, then run the sync again. |
| Employee Preload encountered one or more errors. Review the logs, correct the issues and execute the Sync again. | Read (Employee) and Write (Employee) | One or more Employee preload lookups failed. Depending on which scopes are enabled this can be Work Locations missing, the Master Tax Form list empty, the connector's Company not found, Earning Codes missing, or the Pay Schedule not found. Note: this same message text also appears from the Contractor write preload, which is a naming carryover in the code rather than a Contractor-specific message. | Sync stopped. The entire sync run ends in Failure. | Open the specific error logged alongside this message and resolve it in Payroll, then run the sync again. |
| Time Record Preload encountered one or more errors. Review the logs, correct the issues and execute the Sync again. | Read (Time Record) and Write (Time Record) | One or more Time Record preload lookups failed: Employees, Pay Schedule, Earning Codes, a Payroll in the required status, or Work Locations. Note: this same message is intentionally reused by the Time Off Balance write preload as well. | Sync stopped. The entire sync run ends in Failure. | Open the specific error logged alongside this message and resolve it in Payroll, then run the sync again. |
| Expense Preload encountered one or more errors. Review the logs, correct the issues and execute the Sync again. | Write (Expense) | One or more Expense preload lookups failed: Employees, Pay Schedule, a draft-status Payroll, or Work Locations. | Sync stopped. The entire sync run ends in Failure. | Open the specific error logged alongside this message and resolve it in Payroll, then run the sync again. |
| Time Record Preload did not read any Employees or Contractors. The provider will not be able to process Time Records. Review the logs, correct the issues and/or populate Payroll with People and execute the Sync again. | Read (Time Record) | Intended to fire when zero Employees were read for this entity. In the current code the Employees lookup already fails, and reports the "Time Record Preload encountered one or more errors" message above, whenever no Employees are found, so this specific message text is not expected to appear on its own. | Sync stopped. The entire sync run ends in Failure. | Add active Employees to Payroll, or review the connector's Employee Id filter, then run the sync again. |
| Expense Preload did not read any Employees or Contractors. The provider will not be able to process Expenses. Review the logs, correct the issues and/or populate Payroll with People and execute the Sync again. | Write (Expense) | Same intent as the Time Record version above. The Expense write service's own mapping notes confirm this check is currently unreachable, since the Employees lookup already fails first for the same zero-employee condition. | Sync stopped. The entire sync run ends in Failure. | Add active Employees to Payroll, or review the connector's Employee Id filter, then run the sync again. |
| Preload failed to find a Company with id '[connector company id]' on Payroll. Make sure your connector configuration is correct and execute the Sync again. | Write (Contractor, Employee) | The connector's configured company id does not match any company Payroll returns. | Sync stopped. The entire sync run ends in Failure. | Confirm the Company Id (or Business Unit selection) in the connector's configuration matches an actual company in Payroll, then run the sync again. |
| Preload failed to return any Work Locations. Populate Payroll with Work Locations and execute the Sync again. | Read (Contractor, Employee, Time Record) and Write (Contractor, Employee when the Location scope is enabled, Expense, Time Record) | Payroll returned zero Work Locations at all, or, for Time Record, none survive after removing locations with a blank name. | Sync stopped. The entire sync run ends in Failure. | Add at least one Work Location in Payroll, then run the sync again. |
| Preload couldn't find any active Locations on Payroll. | Read and Write (Contractor) | Payroll has Work Locations, but none of them are marked active. | Sync stopped. The entire sync run ends in Failure. | Mark at least one Work Location active in Payroll, then run the sync again. |
| Employee Preload couldn't find any active Locations on Payroll. | Read (Employee) | Intended to fire when no active Work Locations exist for Employee. In the current code the Employee Work Locations lookup does not filter to active-only before this check runs, so this message cannot currently be triggered on its own; a zero-Work-Location condition is always caught first by "Preload failed to return any Work Locations" above. | Sync stopped. The entire sync run ends in Failure. | Add and activate Work Locations in Payroll, then run the sync again. |
| Preload encountered a workplace with a Null or Empty Name. Correct the workplace in Payroll and execute the Sync again. | Read (Time Record) and Write (Employee when the Location scope is enabled, Expense, Time Record) | An active Work Location in Payroll has a blank or missing name. Each blank-named location is logged individually and left out of the lookup, but the surrounding preload step still reports failure overall. | Sync stopped. Only the one unnamed location is excluded from the lookup, but the whole sync run still ends in Failure. | Add a name to the Work Location in Payroll, then run the sync again. |
| Preload encountered more than one workplace with the Name of [workplace name]. Each workplace in Payroll must have a Unique Name. Correct the workplace in Payroll and execute the Sync again. | Write (Employee when the Location scope is enabled, Expense, Time Record) | Two or more active Work Locations share the exact same name. | Sync stopped. The duplicate entry is simply dropped from the lookup, but the whole sync run still ends in Failure. | Rename one of the duplicate Work Locations in Payroll so each name is unique, then run the sync again. |
| Preload failed to find any Pay Schedule with name '[pay schedule name]'. Make sure Pay Schedule '[pay schedule name]' exist in Payroll and execute the Sync again. | Read (Employee, Time Record) and Write (Employee when the Pay Schedule scope is enabled, Expense, Time Off Balance, Time Record) | A specific Pay Schedule was configured for the sync (and it is not the Terminated pay schedule), but no Pay Schedule in Payroll matches that name. Note: on some entities the pay schedule name is not filled into the message, so the log may show the placeholder text literally instead of the actual name. | Sync stopped. The entire sync run ends in Failure. | In Payroll, confirm a Pay Schedule exists with the exact name configured for the sync, checking spelling and case, then run the sync again. |
| Preload failed to return any Employees. Populate Payroll with Employees and execute the Sync again. | Read (Time Record) and Write (Expense, Time Off Balance, Time Record) | Zero employees remain in Payroll after applying the active/terminated rule and any configured Employee Id filter. | Sync stopped. The entire sync run ends in Failure. | Confirm active Employees exist in Payroll and review the connector's Employee Id filter, then run the sync again. |
| Preload failed to return any Cost Code. Populate Payroll with Cost Codes and execute the Sync again. | Not active in the current build | This check exists in the code but is disabled for every Payroll entity. It cannot currently fire. | Cannot occur today. | If this exact text appears in a log, escalate; it should not be possible in the current release. |
| Preload failed to return any Jobs. Populate Payroll with Jobs and execute the Sync again. | Not active in the current build | This check exists in the code but is disabled for every Payroll entity. It cannot currently fire. | Cannot occur today. | If this exact text appears in a log, escalate; it should not be possible in the current release. |
| Preload failed to return any Labor Classifications. Populate Payroll with Labor Classifications and execute the Sync again. | Not active in the current build | This check exists in the code but is disabled for every Payroll entity. It cannot currently fire. | Cannot occur today. | If this exact text appears in a log, escalate; it should not be possible in the current release. |
| Preload failed to return any Company Earning Codes. Populate Payroll with Earning Codes and execute the Sync again. | Read (Time Record) and Write (Employee when the Compensations scope is enabled, Time Record) | Payroll returned zero Earning Codes. | Sync stopped. The entire sync run ends in Failure. | Add at least one Earning Code in Payroll, then run the sync again. |
| Employee Preload couldn't find any Earning Codes on Payroll. | Write (Employee, Compensations scope) | Payroll has Earning Codes, but every one of them is a type Arcoro Payroll excludes from Compensations, for example cash tips, group term life benefits, or certain adjustment types. | Sync stopped. The entire sync run ends in Failure. | Add at least one supported Earning Code type in Payroll, then run the sync again. |
| Preload failed to return any Payrolls in a paid status. Complete a payroll process in the Payroll Application and execute the Sync again. | Read (Time Record) | Payroll has no payroll runs in a Paid status. | Sync stopped. The entire sync run ends in Failure. | Complete (finalize and pay) a payroll run in Payroll so at least one reaches Paid status, then run the sync again. |
| Preload failed to return any Payrolls in a draft status. Begin a payroll process in the Payroll Application and execute the Sync again. | Write (Expense, Time Off Balance, Time Record) | Payroll has no payroll runs in Draft status. | Sync stopped. The entire sync run ends in Failure. | Start a new payroll run in Payroll so a Draft payroll exists, then run the sync again. |
| The Sync could not read the Master list of Tax Forms from CheckHq. Attempt the Sync again and if the problem persists contact Support. | Read (Employee, Federal Taxes scope) and Write (Employee, Federal or State Taxes scope) | Payroll's master tax form list came back empty. | Sync stopped. The entire sync run ends in Failure. | Run the sync again. If it fails the same way a second time, escalate to Support. |
Confirming the Error
- Open the Sync History screen and find the sync execution for the date and connector in question.
- Open the step for the Payroll connector, on either the source or destination side depending on the direction shown in the table above.
- Find the row for the affected entity (Employee, Contractor, Time Record, Expense, or Time Off Balance).
- Check that entity's Errors, Warnings, Information, and Failures columns. A preload failure typically shows a non-zero Failures count with zero Added and zero Updated, since the sync stopped before it processed any records for that entity.
- Open the entity's error list and match on the fixed part of the sentence, for example "Preload failed to return any", rather than on any value shown in quotes, since that value is specific to your data.
- Remember that because a preload failure stops the entire sync run, any entities scheduled to run after the failed one in the same step may show no Errors, Warnings, Information, or Failures at all; that does not mean they succeeded, it means they were never attempted.
Resolving the Error
Missing Lookup Data in Payroll
- In the Payroll application, confirm the reference data named in the error exists: Employees, Earning Codes, Work Locations, or a Pay Schedule with the exact configured name.
- For an Earning Codes complaint on the Employee entity specifically, confirm at least one Earning Code is not one of the excluded types (cash tips, group term life, and similar adjustment types are excluded from Compensations).
- For a Master Tax Form list failure, no customer-side data change applies; retry the sync first (see When to escalate).
Workplace Name Problems
- In the Payroll application, open Work Locations and find any active location with a blank name; give it a name.
- Find any two active Work Locations sharing the exact same name and rename one of them so every name is unique.
No Payroll Cycle in the Right Status
- In the Payroll application, check whether the sync direction requires a Paid payroll (reading Time Records) or a Draft payroll (writing Expenses, Time Off Balances, or Time Records).
- Complete a payroll run to Paid status, or begin a new payroll run so a Draft exists, matching what the message asks for.
Connector Company ID
- In the connector's configuration page, confirm the configured Company Id (or Business Unit selection) matches an existing company in Payroll.
- Correct the Company Id or Business Unit selection if it points at the wrong or a deleted company.
Aggregate Preload Failure
- When the log shows one of the four "encountered one or more errors" or "did not read any" messages, do not treat that message alone as the root cause; open the entity's error list in the Sync History screen and find the more specific message logged alongside it.
- Resolve the specific underlying condition using the matching section above.
After making any change above, run the sync again and confirm the entity's row in Sync History now shows the expected Added, Updated, or Unchanged counts instead of a Failures entry.
When to Escalate
If any of the following occur, you may need to reach out to Arcoro support for additional assistance.
- The Master Tax Form list message repeats on a second attempt; the message text itself calls for contacting Support at that point.
- The log text does not match the fixed part of any message in this article.
- A fix from one of the sections above was applied and confirmed in Payroll, but the sync fails again with the same message.
- The log shows a Cost Code, Job, or Labor Classification preload failure for Payroll; these are not expected to occur in the current release and may indicate a defect.
- The connector's Company Id looks correct in configuration, but the Company Not Found message still fires.