## TL;DR
Fix this in payroll time import by acting on the exact problem first: change the import matching rule to use the shift start date for overnight punches, remove the duplicate punches already loaded for the period, rerun the import, and check the timecard for one in punch and one out punch per overnight shift. Do not rerun the whole payroll workflow unchanged, because the same inputs produce the same failure. Prove the fix on one employee first, then rerun the full scope and reconcile the results against the payroll register.

```text
payroll time import failed error clock punches duplicated overnight shift
```

## Use this when
- The operation in payroll time import fails with this exact problem: payroll time import failed error clock punches duplicated overnight shift.
- The same failure repeats on retry with unchanged inputs.
- A payroll run, tax filing, garnishment check or pay close is blocked until this is resolved.

## Not for this skill when
- The notice is a platform outage from the vendor. Resolve that first, then return here if this problem remains.
- The payroll completes and you only disagree with a pay policy decision such as a rate or a benefit rule. That is a policy change, not this failure.

## Steps
1. Reproduce the failure on one named employee in payroll time import and record the full problem text plus the employee, pay period or filing involved. Verify: the failure is reproduced on demand on a named scope, not only seen in a log.
2. Apply the specific fix for this problem: change the import matching rule to use the shift start date for overnight punches, remove the duplicate punches already loaded for the period, rerun the import, and check the timecard for one in punch and one out punch per overnight shift. Verify: the single failing employee now behaves as the fix predicts, or the corrected value is visible on the record.
3. Check neighbouring employees, pay groups or filings that share the same pay code, deduction setup or import, because this class of failure rarely affects only one employee. Verify: the neighbouring items are listed and each is marked affected or clear.
4. Rerun the original operation in payroll time import on the previously failing scope, watching for the same problem rather than assuming success from a quiet log. Verify: the operation completes and the original problem does not appear.
5. Compare the result against the source of truth, the payroll register, the tax filings or the employee records, so a silent partial success is caught. Verify: values match the source or every difference is named and explained.
6. Record the fix, the triggering input and the verification result on the employee or run record so the next occurrence is recognised immediately. Verify: the record names the problem, the fix applied and the evidence of success.

## Variant phrasings

### payroll time import failed error clock punches duplicated overnight shift
The verbatim form searchers paste from the console, report or run log. Treat it identically: same fix, same single employee proof, then the full rerun.

### How to fix - how to fix payroll time import failed error clock punches duplicated overnight shift fails error
The how to phrasing for the same failure in payroll time import. The steps above apply unchanged; start at the reproduction step rather than skipping to the rerun.

### payroll time import troubleshooting for this failure
The symptom first phrasing used when the console hides the full problem. Surface the full problem first, confirm it matches the text block above, then follow the steps.

## Why it happens
Matching on calendar date splits a midnight crossing shift across two days, and keying the import to the shift start date keeps the whole shift together and prevents the duplicate.

## Edge cases
- The employee was terminated, transferred or given a rate change after the failing run started. Refresh the employee state and reapply the fix against the current values, not the values from the failed run.
- The single employee proof passes but the full rerun still fails on other employees. Treat each remaining failure as its own scope, because a shared pay code or import can hide more than one cause.
- The source systems disagree on the correct value. The payroll register governs amounts paid, the tax filings govern amounts reported, and the employee record governs setup; record which source won and why.

Compatibility: payroll time import at current versions, plus the payroll system, time system or general ledger the query names; no extra tooling beyond access to the payroll register, tax filings and employee records needed to verify results.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_x9MVQkxxdXF1w2q3AwRczg
