A reconciliation that reports four hundred exceptions has not found four hundred problems. It has usually found a dozen problems buried in three hundred and eighty formatting artefacts, and the reason reconciliation has a reputation for being miserable is that people spend their evening on the artefacts.
Below are the nine causes that account for almost every difference, sorted by how much of your attention each deserves.
The ones that are not really differences
1. Invoice number formatting
This is the largest single source of noise, by a wide margin, and it is entirely mechanical.
The supplier files INV/2026-27/0042. Your purchase register says 42. Or INV-42. Or inv/42. A literal string comparison calls that a mismatch, and if your reconciliation is a spreadsheet VLOOKUP, that is precisely what it does.
The fix is to normalise both sides before comparing. Strip everything that is not a letter or a digit, drop leading zeros from the numeric part, and compare in a single case. On a typical purchase ledger this alone eliminates well over half the exception list.
Be careful in one direction. Aggressive normalisation can collide two genuinely different invoices, for example A-42 and B-42 reducing to the same key. Always match on the combination of GSTIN, normalised number and period, never on the number alone.
2. Cut-off timing
An invoice dated 28 March, which the supplier reports in his April GSTR-1, sits in your March books and your April 2B. Nothing is wrong. The two statements are drawn on different bases: yours on the document date, the portal’s on the filing period.
These reverse by themselves next month. The right treatment is a carry-forward schedule, not an investigation. What matters is that the schedule is genuinely carried forward and cleared, rather than being rewritten from scratch each month, because an item that stops reversing has quietly become a real exception and you want to notice.
3. Rounding
Tax computed per line and rounded, against tax computed on the invoice total and rounded, differ by a rupee or two. So do systems that round half up against systems that round half even.
Set a materiality threshold, in rupees, below which a value difference is accepted automatically. Most organisations land somewhere between ₹1 and ₹10 per invoice. Chasing rupees costs more than the rupees.
4. Documents that were never going to be in 2B
Three categories belong in your books and have no business appearing in the supplier-reported part of 2B.
Reverse charge. Your self-invoice is your own document. There is no supplier GSTR-1 behind it.
Imports. Bill of entry credit reaches 2B through ICEGATE separately, on its own timing.
Composition suppliers and exempt or non-GST purchases. No credit, no 2B entry, and they should not be in the population you are reconciling at all.
Filter these out before you match. Reconciling them produces exceptions that can never be cleared.
The ones worth an hour
5. The supplier filed under the wrong GSTIN
The supplier billed your Gujarat GSTIN and reported it against your Maharashtra one, or against a sister concern. This is common in groups with several registrations and similar legal names.
It does not resolve at your end. The supplier has to issue a credit note against the wrong GSTIN and a fresh invoice against the right one. Start that conversation early, because it takes him a filing cycle.
6. Value or tax differs materially
Beyond rounding, real value differences usually come from one of four things: a discount recorded in your books that the supplier invoiced gross, a rate difference, a freight or insurance component treated differently, or a credit note that one side has recorded and the other has not.
The rate cases deserve particular attention for any period spanning 22 September 2025, when the rate structure changed. An invoice at the old rate reported at the new one, or the reverse, is a substantive error rather than a reconciliation artefact.
7. Credit notes out of period
A credit note reduces your credit in the period the supplier reports it. That is frequently not the period in which you booked the return. Left unmatched, credit notes read as unexplained reductions in 2B, and they are the reason a month can show 2B lower than the books with every invoice matching perfectly.
The ones that are the actual point of the exercise
8. In your books, in nobody’s 2B
This is the most important exception in the whole reconciliation, and it is worth more than all the others put together.
You are holding an invoice, you have taken the credit, and the supplier has not reported it. Under Section 16(2)(aa) that credit is not available to you. If it stays unreported past 30 November following the end of the financial year, Section 16(4) extinguishes it permanently.
Every one of these needs a name against it and a date. Ring the supplier. Most cases are ordinary lateness and resolve in a cycle. The ones that do not are the ones you need to know about while you still have unpaid invoices to give you leverage.
Check 2A before you escalate. If the invoice is in 2A but not in the 2B you are looking at, the supplier filed late and it will land in a later 2B. That is a timing issue, not a default, and it changes the conversation.
9. In 2B, in nobody’s books
Credit is sitting available and you have not claimed it. Sometimes the invoice never reached accounts. Sometimes it was booked to the wrong period or the wrong vendor. Occasionally it is an invoice raised on your GSTIN by someone you have no relationship with, which needs rejecting on IMS and following up.
This is money you are entitled to and have not taken, and it expires on the same 30 November. In most practices the unclaimed pile is larger than the wrongly claimed one, which is the opposite of where the anxiety usually sits.
A sequence that works
- Filter the population. Remove RCM, imports, composition, exempt and non-GST. Reconcile only what could appear in 2B.
- Normalise both sides. Invoice numbers stripped and lower-cased, GSTINs trimmed, dates in one format, values to two decimals.
- Match in passes, tightest first. GSTIN plus exact number plus value. Then GSTIN plus normalised number plus value. Then GSTIN plus normalised number with a value tolerance. Then fuzzy on number within the same GSTIN and period. Each pass takes items off the table so the next runs on a smaller, harder set.
- Classify the residue into the nine buckets above, not into one list called exceptions.
- Act only on 5 through 9. One to four are noise, timing or filtering errors, and should be handled by the process rather than by a person.
- Carry the timing schedule forward and check that last month’s items actually reversed.
- Keep the 2B file you matched against, with the date you pulled it.
Why the department cares
Under Rule 88D, where the credit claimed in your GSTR-3B exceeds what your GSTR-2B makes available by more than the prescribed threshold, the system issues an intimation in FORM GST DRC-01C. You then either pay the difference with interest in DRC-03 or explain it on the portal, within the period allowed. Ignore it and your ability to file the next GSTR-1 can be blocked.
The practical consequence is that this reconciliation is no longer a matter of internal hygiene. The comparison is being run on the portal whether or not you run it yourself, and the only question is whether you see the result first.
The summary
Four of the nine causes are noise you should design out, three need a phone call, and two are the reason the exercise exists. Normalise before matching, filter before reconciling, match in passes rather than in one lookup, and spend your evening on the invoices that are in your books and nobody else’s.