
It’s one of the most common things we see when we start working with a new client. They open Xero, look at the PAYE liability on the balance sheet, then check the HMRC portal — and the two numbers don’t agree. Sometimes it’s a small difference. Sometimes it’s thousands of pounds. Almost always, nobody is quite sure how long it’s been like that.
If this sounds familiar, you’re not alone. And it’s fixable — but you need to understand why it happens first.
Why the numbers drift apart
The Xero balance sheet shows what your accounts think you owe HMRC. The HMRC portal shows what HMRC actually thinks you owe. For those two to agree, every payroll run needs to be correctly journalled into Xero — and every payment to HMRC needs to be allocated against the right liability.
The most common reasons they don’t:
- Payroll journals never posted. Many providers submit RTI and produce payslips but never post journals into Xero. The cost hits the bank, but the PAYE liability never appears correctly on the balance sheet.
- Journals posted incorrectly. Wrong account codes, pension contributions mixed with PAYE, NIC posted in the wrong place — small errors that compound over months.
- Payments allocated to the wrong period. A payment applied to the wrong month in Xero makes a liability appear to clear when it hasn’t — or outstanding when it is.
- CIS deductions not applied. If you operate under CIS, deductions need to offset your PAYE liability. If they’re not posted correctly, the balance sheet overstates what you owe.
Why it matters
A mismatch isn’t just an accounting inconvenience. It means your management accounts are wrong, your cashflow forecast is based on incorrect liabilities, and every month you leave it the gap potentially gets wider.
How to fix it
Pull the HMRC PAYE account statement for the last twelve months and compare it with Xero. Look for months where payments don’t match, periods where liabilities don’t clear correctly, and any CIS offsets not applied. Once you’ve identified where the discrepancy starts, you can work forward — correcting journals and reconciling from that point.
If the gap goes back more than a few months, or CIS is involved, get specialist help. What looks like a simple mismatch often has a more complex root cause.
Preventing it going forward
The fix is only half the job. You need a process that keeps it right — journals posted every month, HMRC payments allocated correctly, and a monthly reconciliation before the next payroll runs. If your current provider isn’t doing that, it’s worth asking why.
Not sure if your Xero and HMRC agree? The Free Payroll & HMRC Check will tell you — no prep needed, just a conversation.



