Revenue-line transactions month-to-date with no VAT code. Each one is MTD non-compliant: HMRC requires a digital VAT record for every VAT-eligible transaction.
At a glance
The running month-to-date count of revenue lines posted with no VAT code. This is the compliance accumulation behind the real-time failures: where Transactions Failing Validation (imbalance / missing VAT) shows the last hour’s rejections, this card shows everything that has slipped through or been posted without a code since the period began. Under Making Tax Digital, HMRC requires a digital VAT record for every VAT-eligible transaction, so a missing code is not a cosmetic gap, it is a hole in the digital records that underpin the VAT return. A non-zero value going into the filing window is a return that cannot be built clean. The target is zero by close, and the card exists to make sure you get there.
Calculation
Calculated automatically from your Sage data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A UK multi-channel retailer on Sage Intacct, VAT registered, filing monthly MTD returns, selling DTC through Shopify Plus and B2B through BigCommerce B2B. Snapshot 23 Jun 26, mid-period (the June VAT period runs to 30 Jun 26). Reporting currency GBP. Alert held at zero.
Five things to notice:
- Seventy-seven lines sounds small until you realise it is GBP 16,620 of revenue with no digital VAT record, two weeks before the return is due, and that is the whole point of catching it now. None of these lines can be correctly built into the MTD VAT return as they stand. If they reach the filing window uncoded, someone has to manually find each one, work out the correct treatment, and post a correction, which is the manual VAT spreadsheet work MTD was specifically created to abolish. The card surfaces the accumulation mid-period so the codes get mapped now, while there are two weeks of runway, rather than during a frantic filing-day cleanup. The target is zero by 30 Jun 26.
- The forty-one-line new-product-line cohort is one fix, not forty-one, which is how you should read this card. A new product type was added to the Shopify catalogue with no VAT code mapped in the integration, so every order of that product since launch has posted a revenue line with a blank code. Map the VAT code for that product type once, and all forty-one existing lines can be corrected in a batch and every future line posts clean. The card’s value is showing you the cohort so you fix the cause, not the symptoms. Pair with Transactions Failing Validation (imbalance / missing VAT) to confirm this same product type is generating live failures hour by hour.
- The eighteen zero-rated B2B lines are the trap that catches almost everyone. Zero-rated does not mean no code; it means a code that records the line as zero-rated, which is itself the digital record HMRC requires. Someone mapped these items as if zero VAT meant no VAT treatment, so the lines posted with a blank code instead of a zero-rated code. At GBP 5,400 of at-risk revenue this is the second-largest cohort, and it would have produced an incomplete zero-rated box on the return. The fix is to map the zero-rated code, not to exempt the items from VAT handling.
- The manual and import cohorts are different failure modes that need different fixes. The six manual sales credits were keyed by a person who did not select a code, so the fix is a process and training fix plus a prompt or default in the entry screen. The twelve marketplace settlement lines came in through an import template that simply did not include a VAT column, so the fix is on the import template, which is an engineering fix. The card carries finance and engineering roles because the missing codes come from both human entry and integration imports, and the two need different owners.
- The trajectory matters more than the snapshot, so read this card as a burn-down through the period. A value of 77 on day 23 with the cause identified and the codes about to be mapped is a healthy in-progress state; the same 77 lingering on day 29 with no owner is a filing-day emergency forming. The right operating rhythm is to drive the count toward zero across the period so the return is buildable clean on day one of the filing window. Pair with Current VAT Return Status (MTD) to see where the return sits in the cycle and Period Close / VAT Return Past Deadline for the surcharge consequence if the cleanup does not happen in time.
Sibling cards merchants should reference together
Reconciling against Sage
Where to look in Sage Intacct: The native Sage Intacct views to run side by side with this card:
Applications → Tax → VAT Detail Report lists VAT-eligible transactions and their codes; lines with no code are the population this card counts.
Reports → General Ledger → Transaction Detail filtered to revenue accounts shows each revenue line and whether a VAT code is attached.
Applications → Tax → VAT Setup shows the available VAT codes, including the zero-rated and exempt codes that uncoded lines should carry.
Platform Services → Integration field mapping shows where each commerce product type maps its VAT code; a blank mapping here is the upstream cause.
Interactive Custom Report (ICR) on the GL/AR data sources filtered to revenue lines in the current VAT period with VATCODE empty, grouped by source and product class.
For Multi-Entity Console accounts, run the VAT Detail Report per VAT-registered entity, because each entity files its own MTD return and a consolidated view can hide which subsidiary owns the uncoded lines.
Common reconciliation pitfalls:
- VAT period vs calendar month. MTD VAT periods follow the entity’s stagger and may not align to the calendar month. The card defaults to the current VAT period (which is what the return is built on); a calendar-month report can include or exclude days at the period boundary. Match the period basis before reconciling the count.
- Revenue-eligible definition. The card counts revenue lines that are VAT-eligible. A non-revenue line, or a line correctly outside the scope of VAT, is not counted. A Sage report that lists all blank-VAT lines (including out-of-scope ones) will read higher than this card.
- Posted vs unposted. A line on an unposted or rejected transaction is not yet in the GL. The card focuses on posted revenue lines missing a code; a report that includes draft entries can read higher.
Cross-connector reconciliation:
The cross-connector point is that a missing VAT code is the seam between commerce and compliance. The storefront sold the item and charged the customer; the ledger recorded the revenue; but the tax treatment that turns that revenue into a filable VAT return was never attached, almost always because a product type was added to the catalogue without a VAT mapping. Neither the commerce platform (which does not build VAT returns) nor a casual glance at the GL (where the revenue looks fine) surfaces the gap. Only an MTD-aware view of the revenue lines catches it, and only catching it mid-period leaves time to map the code, batch-correct the existing lines, and file a clean return. This card is how a UK finance team keeps MTD a non-event instead of a filing-day scramble.