Reconciling purchase invoices against the ledger is one of the slowest parts of preparing a UAE VAT return. It is usually done by hand, in spreadsheets, every period. This note walks through a three-step way to do it instead: upload the invoices and your ERP's VAT export, let every invoice be verified against the ledger and the VAT rules, then resolve only what needs judgement.
Why reconciliation matters
The VAT return is built from what was booked in your ERP. If the ledger and the invoices disagree, the return is wrong, even when every number in it adds up. Typical gaps are an invoice booked with a different VAT amount, an invoice that was never booked, a duplicate, or an expense where input VAT is blocked but was booked as recoverable.
Finding these gaps by hand means opening each invoice, finding its line in the export and comparing. On a few hundred invoices a quarter, that is days of work, and it is easy to miss something.
Step 1: Upload
Start with what you already have.
- The ERP export. Export the VAT report your accounting system already produces. Safa reads exports from Zoho Books, Tally Prime, QuickBooks and Firstbit, so there is no reformatting and no manual mapping.
- The invoices. Add the invoice files as PDFs, photos, or a ZIP file of the whole quarter.
Step 2: Verify
Safa then reads every invoice: the reference number, the supplier's and the buyer's tax registration numbers (TRNs), the date, and the net, VAT and gross amounts. It looks up each invoice in your ERP export and compares the figures.
It then applies the UAE VAT rules that a team checks by hand today:
- Is it a valid tax invoice? For example, is it labelled as a tax invoice, and does it show the supplier's TRN?
- Does the VAT add up? Does the VAT amount match the net amount at the right rate, and does the total hold?
- Is the supplier foreign? A foreign supplier usually means the reverse charge rather than input VAT charged on the invoice.
- Is it late? Is the invoice older than the late-invoice limit your company has set?
- Is input VAT blocked? Is it an expense, such as entertainment or a motor vehicle, where your company's VAT settings say input VAT cannot be recovered?
The settings behind these checks, such as your late-invoice limit and how motor vehicles and entertainment are treated, are set per company, because they depend on the business.
Step 3: Resolve
Every invoice gets a verdict and a reason in plain language:
| Verdict | What it means |
|---|---|
| Confirmed | The invoice and the booking agree and the VAT rules are met |
| Needs manual check | Something needs a person's judgement, with the reason shown |
| Incorrect | The booking or the VAT treatment is wrong, with the reason shown |
| Unrecognised | The invoice could not be matched to a line in your ERP export, or its invoice number could not be read |
| Out of scope | The document is not relevant to the VAT return |
Your team reviews only the invoices that need judgement, records decisions and notes, and exports the evidence for your files.
A worked example
Take a quarter with 400 purchase invoices. Suppose 360 are confirmed, 25 need a manual check, 10 are incorrect and 5 are unrecognised. Instead of opening all 400, the team opens 40. Among the 10 incorrect ones might be an entertainment invoice where AED 1,500 of input VAT was booked as recoverable, and an invoice booked at AED 52,500 that the document shows as AED 25,500 including AED 1,214.29 VAT. Both are caught before the return is filed.
From verified invoices to the VAT return
Once every flagged invoice has been reviewed, Safa summarises the verified expenses into the expense boxes of the VAT return: standard-rated expenses in Box 9 and supplies subject to the reverse charge in Box 10. You file with figures you have checked line by line.
What it means for your business
Reconciliation stops being a last-minute scramble. The team's time goes to the few invoices that need judgement, every decision has a recorded reason, and the evidence is ready if the FTA asks.
A practical first step is to run last quarter's invoices through the process and compare the result with the return you filed. The differences show exactly where your current process leaks.