PAYROLL REGISTER TO JOURNAL · RUNS IN YOUR BROWSER · NOTHING UPLOADED

Turn a payroll register into a Xero or QuickBooks journal

Paste or drop the payroll register CSV from Gusto, ADP, Paychex, QuickBooks Payroll or a spreadsheet. Every employee row is checked (gross pay less every withholding equals net pay), then written as a balanced journal per pay date or month: wages and employer taxes as expenses, every withholding as a liability, net pay to a payroll clearing account — for Xero, QuickBooks Online, QuickBooks Desktop (IIF) or plain CSV. The 941 deposit each run creates is totalled for you.

The file is read in this browser tab and never leaves your device. Only dates and amounts are used; names are never written into a journal. Independent of every payroll and accounting vendor. The register layout and the importer layouts are read from memory of public help documents; no real payroll export and no live Xero or QuickBooks import was available when this was written.

1. Your payroll register

One row per employee per pay date. Several pay dates in one file are fine: each becomes its own journal (or one per month, below).

Choose a file or paste the text, then click Read, check and build journals.

The model, and what it leaves out

Common questions

How do I turn a payroll register into a journal entry?

Export the payroll register from your payroll provider (one row per employee per pay date, with gross pay, each tax and deduction, and net pay), paste it here and press Read, check and build journals. The page checks that gross pay less every withholding equals net pay on each row, books wages and employer costs as expenses and every withholding as a liability, and writes one balanced journal per pay date with net pay going to a payroll clearing account.

Why not book the payroll bank withdrawal as an expense?

The net pay withdrawal is not what payroll costs you. Gross wages are the expense, the employer's own Social Security, Medicare, FUTA, SUTA and retirement match are extra expenses, and the withholdings are money you owe to the IRS, the state and the plan until you remit it. Booking the withdrawal leaves wages understated, employer taxes missing and the liability accounts empty, so the quarterly 941 and the state returns will not agree with your books.

What is the 941 deposit figure for?

For each pay run the page adds federal income tax withheld to both halves of Social Security and Medicare. That is the amount a monthly or semiweekly depositor sends to the IRS for the run, before any adjustment for credits. Use it to check the liability accounts the journal creates against the payments you actually make.

What does a row where gross pay is not explained mean?

Gross pay should equal net pay plus every withholding and deduction. Any remainder, for example a deduction in a column the page does not recognise, is journalled to an uncategorised liability account so the journal still balances, and it is listed for you to review. If net pay is more than gross pay less withholdings, for example a reimbursement or a hand edit, that is reported as an error. Nothing is dropped.

Which accounting software can I import to?

Xero (manual journal CSV), QuickBooks Online (journal entry CSV), QuickBooks Desktop (IIF general journal) and a plain CSV for anything else. Rename the accounts for each category before downloading so they match your chart of accounts.

Is it safe to paste a payroll register into a web page?

The page runs in your browser, the file is read locally and nothing is uploaded; a test in the code asserts there are no network calls. Employee names are shown on screen in findings only and are never written into a journal. Remove names, Social Security numbers and bank details from the file if you would rather not have them on screen: only dates and amounts are used.

What does this not check?

Whether the register matches your payroll provider or your books, that withholdings are correct for any employee or jurisdiction, payroll tax deposit deadlines or penalties, workers' compensation premiums, accruals for unpaid wages at month end, department or class allocation, and account names or codes that must already exist in your accounting software.