NY certified payroll XML converter
Turn a payroll spreadsheet into the XML file New York's Certified Payroll portal accepts for bulk upload. Every file is checked against NYSDOL's official schema before you download it.
Runs entirely in your browser. Your payroll file is never uploaded to our servers.
1. Project and week
2. Your payroll file
Use our CSV template: one row per employee, per work category, per day worked. Gross pay, net pay and deductions go on one row per employee; supplements go on one row per work category.
Enter the PRC number and week ending date, then choose your CSV file.
How to fill in the template
| Column | What to enter |
|---|---|
| first_name, middle_name, last_name | Worker name (max 45 characters each). Middle name is optional. |
| ssn_last4 or date_of_birth | One identifier per worker. If a full SSN is present, only the last 4 digits are used, and it never leaves your browser. |
| nys_registered_apprentice | yes or no. |
| address1, address2, city, state, zip, zip_ext, country | Worker's home address. Two-letter US states are converted to full names, as New York requires. Country defaults to United States. |
| work_category | The classification from the prevailing wage schedule, e.g. "Carpenter - Building". |
| st_hourly_rate, ot_hourly_rate | Straight-time and overtime hourly wage rates for that category. |
| work_date, st_hours, ot_hours | One row per day worked in that category. Dates as YYYY-MM-DD or MM/DD/YYYY; up to 24 hours per day. |
| gross_earnings, net_wages | The week's gross and net pay. Enter on one row per worker; leave blank on the others. |
| deductions | Up to 10, written as Federal Tax|150.00; State Tax|50.00. Enter on one row per worker. |
| supplements | Benefits for that work category, written as Health|8.50|8.50; Pension|5.00|5.00 (type, straight-time rate, overtime rate). Types: Health, Vacation, Apprenticeship, Pension, Other. For Other, add an explanation: Other|1.00|1.00|Tool allowance. |
What the converter checks
- Every rule in NYSDOL's Certified Payroll XML schema (version 2.0), validated with libxml2 in your browser.
- One project and one week per file, with every day inside the payroll week.
- No duplicate workers, and one identifier per worker (SSN last 4 or date of birth).
- Field lengths, ZIP code formats, rate limits (999.99), deduction limits (9,999.99), and at most 24 hours per day.
- Gross minus deductions equals net, flagged as a warning when it doesn't.
- Payrolls with more than 500 workers are split into several valid files.
New to New York's system? Read the NY bulk upload guide. Need to check fringe benefit credits first? Use the fringe benefit calculator.
PrevailReady is not affiliated with the New York State Department of Labor. Review your data in the NYSDOL portal before submitting.