Quick answer. GSTR-2B is the static, monthly statement of inward supplies generated by GSTN that determines how much input tax credit (ITC) you can legitimately claim in a given month. The reconciliation discipline is: (1) match every line of GSTR-2B against your purchase register, (2) classify every mismatch into one of six categories, (3) drive each mismatch to closure with a vendor or an internal correction, (4) only then post the ITC into your GSTR-3B. Doing this manually in spreadsheets takes 3–5 days a month; doing it operationally takes hours.
Why GSTR-2B is the only number that matters for ITC
Until the introduction of GSTR-2B in August 2020, finance teams reconciled their books against GSTR-2A, a dynamic document that kept updating as vendors filed late returns or amendments. That meant the ITC number you reconciled to on the 5th of the month was different from the one on the 20th, which is when most teams file GSTR-3B.
GSTR-2B fixed this. It is generated on the 14th of every month for the previous tax period and is frozen, late vendor filings and amendments don’t change it. Whatever appears in GSTR-2B is the ITC universe you have to work with for that month.
This is the single most important operational consequence: your books need to match GSTR-2B before you file GSTR-3B, not after, and not “approximately”.
GSTR-2A vs GSTR-2B at a glance
| GSTR-2A | GSTR-2B | |
|---|---|---|
| Generation | Real-time, dynamic | Static, monthly (14th) |
| Use case | Vendor compliance tracking | ITC eligibility for the month |
| Includes amendments | Yes, as they happen | Only those flowing in this month |
| Authoritative for ITC | No (since Aug 2020) | Yes |
| Reflects RCM liability | Yes | Yes, with section split |
| Freeze date | Never frozen | 14th, stays frozen |
For ITC, stop looking at 2A. Use 2A for vendor compliance scoring; use 2B for the actual reconciliation.
The six categories every mismatch falls into
When you compare your purchase register against GSTR-2B line by line, every line ends up in exactly one of these buckets:
- Matched. Invoice in books, invoice in 2B, GSTIN + invoice number + tax values agree within tolerance. Claim the ITC.
- In books, not in 2B. You posted the bill; the vendor hasn’t filed (or filed late, or filed under wrong GSTIN). ITC is blocked this month under Rule 36(4). Action: chase the vendor.
- In 2B, not in books. The vendor filed an invoice you don’t have. Possible duplicate billing, ghost vendor, or misallocated GSTIN. Action: investigate before claiming.
- Tax mismatch. Same invoice in both, but tax amount or rate differs. Common cause: wrong HSN, wrong rate, or rounding. Action: amend wherever the error is.
- Invoice number mismatch. Same vendor, same date, same value, but invoice number differs. Common cause: vendor’s bill book numbering vs GSTIN portal numbering. Action: confirm and re-tag in books.
- Period mismatch. Vendor reported the invoice in a different month. Action: defer ITC claim to the matching month, post a memo.
Every line should be classified automatically by the system. The team’s job is the resolution path on categories 2–6, not the categorisation itself.
The reconciliation workflow that actually scales
A spreadsheet-based workflow falls apart somewhere around 500 invoices a month. Beyond that, the discipline below is what separates teams that close on time from teams that don’t.
Step 1, Pull GSTR-2B as the source of truth
GSTN releases 2B on the 14th. Pull it the same day. The official extracts are:
- The JSON download from the GST portal (machine-readable).
- The Excel download (human-readable, 11 tabs).
The JSON is the right input for any automation because it preserves the section split (B2B, B2BA, ISD, IMPG, IMPGSEZ, etc.) and the eligibility flag (itcAvailable: Y/N) for every line.
Step 2, Normalise the purchase register
Your books almost certainly store invoices with vendor-friendly fields (vendor name, voucher number, ledger). 2B uses portal-canonical fields (GSTIN, invoice number as filed, invoice date, taxable value, IGST/CGST/SGST/cess split). The reconciliation runs at the portal-canonical level, not the books level.
Build a normalised view:
| books field | becomes | 2B field |
|---|---|---|
| Vendor master GSTIN | GSTIN | ctin |
| Voucher number (cleaned) | Invoice number | inum |
| Voucher date | Invoice date | dt |
| Taxable value | txval | txval |
| Tax (IGST or CGST+SGST split) | iamt/camt/samt | same |
A common trap: the vendor’s invoice number is what’s on 2B, not your voucher number. Most ERPs store both; make sure you reconcile against the right one.
Step 3, Run the line-level match
For each row in 2B, find the candidate in your purchase register using a fuzzy match on (GSTIN + invoice number + invoice date), with tolerances on:
- Invoice number: strip whitespace, leading zeros, common separators (
/,-). - Invoice date: ±2 days (vendors sometimes book the receipt date, not invoice date).
- Taxable value: within ±₹1 (rounding).
- Tax amount: within ±₹1.
Lines that match cleanly go to bucket 1 (Matched). Anything else falls into buckets 2–6 by rule.
Step 4, Classify and route
The mismatch list has to be routed to a resolver, not just shown:
| Bucket | Resolver | Typical SLA |
|---|---|---|
| In books, not in 2B | AP team, chase vendor | 7–10 days |
| In 2B, not in books | AP team, investigate (duplicate? ghost?) | 3 days |
| Tax mismatch | AP team, get debit/credit note from vendor | 7 days |
| Invoice number mismatch | AP team, re-tag in books | 1 day |
| Period mismatch | Compliance team, defer ITC, memo | Same day |
If your tool doesn’t auto-route, your team is doing email tag, which is exactly why month-end takes a week.
Step 5, Post the ITC
Only bucket 1 gets posted to GSTR-3B in the current month. Bucket 2 stays parked until the vendor files (then it shows up in next month’s 2B and gets posted then). Buckets 3–6 are resolved in parallel and posted in whichever month they finally agree.
This is the single biggest behavioural shift teams need: don’t post ITC for invoices that aren’t in 2B, even if you’re “sure” the vendor will file. Rule 36(4) since January 2022 caps provisional ITC at zero, you cannot claim ITC the portal hasn’t surfaced.
Vendor non-filer recovery, the 30 / 60 / 90 cadence
Bucket 2 (in books, not in 2B) is the largest source of stranded ITC for most companies. The recovery cadence that works:
- Day 0 (the 14th): Auto-email every vendor whose invoice is in books but missing from 2B, with the specific invoice numbers and tax values you expect them to have filed.
- Day 7 (the 21st): Second auto-email; CC the vendor’s accounts contact and the procurement owner internally.
- Day 30: Escalation email to the vendor’s CFO (use the GSTIN-linked email from MCA filings if you don’t have one direct). Hold the next payment cycle.
- Day 60: Issue a debit note for the unfiled GST amount. The vendor either files (and you reverse the DN) or absorbs the cost.
- Day 90: Vendor master review, flag for off-boarding if pattern repeats.
This is unpopular internally because procurement and AP have different incentives. But the math is clear: at an 18% GST rate, every ₹1 lakh of unfiled vendor invoices = ₹18,000 of stranded ITC. For a mid-market company with a few crore of monthly purchases, the annual cost runs into tens of lakhs. The cadence pays for itself.
The blocked-credit list, what never qualifies for ITC
A line can sit in GSTR-2B with itcAvailable: Y and you still cannot claim it if the underlying expense is in the blocked credit list under Section 17(5) of the CGST Act. Common items:
- Motor vehicles for personal/employee use (with narrow exceptions for dealer/transport businesses)
- Food, beverage, outdoor catering, beauty, health, plastic surgery (unless you’re in that line of business or it’s a statutory requirement for your employees)
- Membership of clubs, health, fitness centres
- Travel benefits to employees on vacation (LTA)
- Goods/services used in construction of immovable property (other than plant and machinery)
- Goods lost, stolen, destroyed, written off, gifted, free samples
Your books should tag every expense category to a “GST eligible / blocked / partial” status at the chart-of-accounts level. Then 2B reconciliation respects that tag, never blindly claiming ITC because the portal happens to show it.
Rule 42 / 43, partial reversal for mixed-use
If your supplies are partly taxable and partly exempt (e.g., a hospital that bills both insurance-covered procedures and out-of-pocket consultations, or a real estate company doing both commercial and residential), Rule 42 (inputs/services) and Rule 43 (capital goods) require a proportional reversal of ITC.
The mechanic, simplified:
ITC reversal = (Exempt turnover ÷ Total turnover) × Common ITC pool
You do this monthly as a tentative reversal, then a final reconciliation in GSTR-9 at year-end. Most teams under-reverse during the year and pay interest at year-end. The right approach is to model the reversal in your AP system and post the entry as the bills get matched.
Common operational pitfalls
These are the things we see most often when we audit a team’s reconciliation process:
- Reconciling against 2A, not 2B. Still the #1 mistake two years after 2B was made authoritative.
- Claiming ITC “provisionally” when 2B doesn’t show it. No longer allowed since 2022; the cumulative provisional limit is zero.
- Vendor master with stale or wrong GSTINs. Every quarter, validate vendor GSTINs against the GST portal. Stale GSTINs cause invoices to not appear in 2B at all.
- Treating SEZ procurement as regular. SEZ supplies appear in a separate 2B section (
IMPGSEZ) and have different ITC treatment. - Ignoring import IGST. The
IMPGsection of 2B (imports paid via Bill of Entry) often gets overlooked because it’s not in the main B2B section. Reconcile against ICEGATE bills of entry separately. - Not deferring period-mismatched ITC. If the vendor filed your March invoice in their April return, your March books and April 2B will conflict. The correct treatment is to defer your ITC claim to April.
- Forgetting ineligibility tags during the reconciliation. A line marked
itcAvailable: Yin 2B still must be cross-checked against your blocked-credit policy.
Month-end timeline that actually works
For a team operating on a 20th-of-the-month GSTR-3B deadline:
| Date | Action |
|---|---|
| 1st–10th | Continuous AP, bills posted as they arrive, vendor emails go out the moment a bill enters the system |
| 14th | Pull GSTR-2B (JSON). Run automated reconciliation against the purchase register. Distribute mismatch worklist to AP. |
| 14th–17th | AP closes mismatch worklist. Daily standup against the ageing list. |
| 18th | Compliance team reviews the bucket-1 line items, confirms ITC posting, locks the books for the period. |
| 19th | GSTR-3B prepared and reviewed. RCM ITC and reversals computed. |
| 20th | GSTR-3B filed. |
The teams that hit this cadence have automated the reconciliation match and the vendor emails. The teams that don’t are the ones hand-matching in spreadsheets, and they’re typically filing a day or two late, or claiming “approximate” ITC and reversing it later.
Tooling: what to look for
You don’t need a tool to reconcile 2B, you need a tool when the volume passes the point where spreadsheets break. Specifically, look for:
- Native GSTN integration, the tool pulls 2B JSON automatically on the 14th, you don’t email it around.
- Books connector, pulls your purchase register from Tally, Zoho, QuickBooks, NetSuite, SAP, or your own ledger, daily.
- Fuzzy match with configurable tolerances, invoice number, date, value, tax, and a way to lock approved matches as “permanent” so they stop showing up.
- Vendor email automation with the bucket-2 cadence built in.
- Rule 42/43 modelling, the tool understands your taxable/exempt mix and reverses the right amount automatically.
- Audit trail, every mismatch resolution is logged with actor, timestamp, before/after.
- Dashboard for the CFO, stranded ITC by aging bucket, vendor non-filer leaderboard, monthly trend.
OneFinOps does all of this on one record, books, 2B, vendor follow-ups, GSTR-3B, so the reconciliation isn’t a separate project, it’s a by-product of doing the books. Start a free trial or book a 30-min walkthrough on your own data.
Frequently asked questions
Can I claim ITC if the supplier hasn’t paid the GST to the government?
No. Section 16(2)(c) of the CGST Act requires that the tax charged to you has actually been paid by the supplier. GSTR-2B is the practical mechanism, if it doesn’t show up in 2B, presume the tax hasn’t been paid yet and don’t claim. The GSTN portal flagged this hard from January 2022 by removing the 5% provisional buffer that earlier existed.
What’s the deadline to claim ITC for a financial year?
For invoices issued in FY 2025–26, ITC must be availed by the earlier of: (a) the due date of GSTR-3B for November 2026 (i.e., 20th December 2026), or (b) filing of the annual return for FY 2025–26. Miss it and the ITC is permanently lost.
What happens if my supplier files in the wrong tax period?
The invoice appears in your 2B in the period the supplier filed it, not the period the supplier issued it. Your only recourse is to defer the ITC claim to that period. There is no facility to claim “based on invoice date” if the supplier’s filing date was different.
Is GSTR-2A still useful?
Yes, for vendor compliance scoring. 2A updates in real time and shows you which vendors filed on time vs late. Use it to score your vendor master and inform your AP cadence, but don’t reconcile your ITC against it.
How does RCM (Reverse Charge) appear in 2B?
RCM-eligible inward supplies appear in a separate section of 2B (B2B with rev` flag). The ITC is available after you pay the GST yourself (which goes to your books as both a liability and an ITC entry). Don’t claim RCM ITC until you’ve paid the corresponding RCM GST.
What if 2B itself has an error?
Rare but it happens, usually because the supplier filed correctly but GSTN’s system mis-categorised the invoice. The remedy is via the GST portal grievance mechanism (Form GST RFD-01 if it affects a refund; otherwise an internal ticket). Document the discrepancy, defer the ITC, and follow up, don’t claim against an error.
Sources
- Central Goods and Services Tax Act, 2017, Section 16, Section 17(5), Section 49(B), eligibility and conditions for taking ITC.
- CGST Rules, 2017, Rule 36(4), Rule 42, Rule 43, provisional ITC restrictions and partial reversal mechanics.
- GSTN, GSTR-2B Advisory (Aug 2020), original release notes and section structure.
- CBIC Notification No. 40/2021, Central Tax (29-Dec-2021), removal of the 5% provisional buffer under Rule 36(4).
- GST Council, 47th Meeting Recommendations (Jun 2022), clarifications on ITC time limits.
This guide is a working operational reference, not legal advice. Specific cases, particularly Rule 42/43 reversals, RCM treatment of imported services, and SEZ procurement, should be reviewed with your tax counsel.
Tags
- GSTR-2B reconciliation
- ITC matching
- GSTR-2A vs 2B
- vendor non-filer
- input tax credit
- GST month-end close
- Rule 36(4)
- ITC reversal