MMilaoGST Journal

GSTR-2A vs GSTR-2B: which one your input tax credit actually depends on

2A moves, 2B does not. That single difference decides which statement you can defend in an assessment, and it is why most reconciliation workflows built around 2A quietly break.

CA Meet DhrangadhariyaPublished 9 min read

Law stated as at 01/09/2026. GST changes often, so check the current notification before you rely on this.

Almost every accountant who has reconciled GST has, at some point, matched the books against GSTR-2A, closed the file, and been asked three months later why the credit claimed in GSTR-3B does not agree with anything on the portal. The answer is nearly always the same, and it is not an arithmetic error. It is that 2A and 2B are different documents built for different purposes, and only one of them holds still.

The one difference that matters

GSTR-2A is dynamic. GSTR-2B is static.

Everything else follows from that.

GSTR-2A is a live mirror of what your suppliers have filed. When a supplier files his GSTR-1 for March in September, that invoice appears in your GSTR-2A for March, backdated, six months after you looked at it. Pull 2A for a period today, pull it again next week, and you can legitimately get two different answers with no error on anyone’s part.

GSTR-2B is generated once for a tax period and then frozen. It is cut on the 14th of the following month and it never changes again. A supplier who files late does not alter a 2B that has already been generated. His invoice lands in the next 2B instead, in the month the filing actually happened.

So 2A answers “what have my suppliers reported against my GSTIN, as of right now?”

How a late supplier filing reaches GSTR-2A and GSTR-2B differently An invoice dated March is filed by the supplier in September. In GSTR-2A it is backdated into the March statement. In GSTR-2B the March statement stays frozen and the invoice instead appears in the September statement. TAX PERIOD Mar Apr May Jun Jul Aug Sep Invoice dated Mar Supplier files in Sep GSTR-2A dynamic appears backdated into the March statement The March 2A you looked at in April is not the March 2A an officer pulls today. GSTR-2B static Mar 2B frozen lands in Sep 2B Regenerate the March 2B in five years and it says exactly what it says today.
The same late filing lands in two different places. In GSTR-2A it is backdated into the original period. In GSTR-2B it appears in the period the supplier actually filed.
and 2B answers "what credit was available to me for this specific tax period?" Those are not the same question, and only the second one is the question GSTR-3B asks.

Why the static one is the one you can defend

Reconciliation is not really a matching exercise. It is an evidence exercise. The output has to survive being looked at by someone else, months later, who was not there.

A 2A-based reconciliation cannot do that. The document you matched against no longer exists in the form you matched it in. You cannot re-derive it, you cannot prove what it said on the day you filed, and when an officer pulls 2A during scrutiny he sees a different statement to the one on your working paper. The difference is not fraud and it is not error, but explaining it costs you an afternoon you did not budget for.

A 2B-based reconciliation regenerates identically forever. The 2B for July 2026 will say the same thing in 2031. That is what makes it defensible, and it is why the credit figures in Table 4 of GSTR-3B are auto-populated from 2B rather than from 2A.

If you take one operational rule from this article: reconcile against 2B, keep 2A for investigation. When an invoice is missing from 2B and you want to know whether the supplier has filed it late, 2A is the right place to look. It is a diagnostic tool, not a basis of claim.

Side by side

GSTR-2AGSTR-2B
NatureDynamic, updates continuouslyStatic, frozen once generated
GeneratedContinuously, in real timeOnce, on the 14th of the following month
Late supplier filingBackdated into the original periodAppears in the next period’s statement
Same result if regenerated laterNoYes
Tells you whether credit is eligibleNo, it is a raw feedYes, it flags available and not available
Auto-populates GSTR-3BNoYes
Underlying ruleRule 60(9)Rule 60(7)
Right useInvestigating a missing invoiceClaiming and defending credit

The part people miss: 2B speaks to eligibility, 2A does not

GSTR-2A is a feed. It shows what was reported and stops there. Whether you may actually take that credit is left entirely to you.

GSTR-2B does more work. Against each document it carries an advisory on whether the credit is available or not available, and where it is not, it says why. Two of those reasons catch people out regularly.

The place of supply is in a different state to yours. A supplier in Maharashtra raises an invoice on your Gujarat GSTIN, but the place of supply is Maharashtra, so he charges CGST and SGST of Maharashtra. You cannot take that credit. Hotel stays and works contract services generate this constantly, and the amounts are large enough to matter.

The invoice is time-barred under Section 16(4). The supplier filed so late that the window to claim has closed. The document is genuine, the tax was paid, and the credit is still gone.

If you are matching on invoice number and value alone, both of these reconcile perfectly and both are wrong. A match is not the same as an entitlement.

Where 2B and your books legitimately disagree

Not every difference is worth chasing. Some are structural and will recur every month.

  • Cut-off timing. An invoice dated 28 March, filed by the supplier in his April GSTR-1, sits in your books in March and in your 2B in April. Nothing is wrong. It is a timing difference and it reverses next month.
  • Imports. Bill of entry credit reaches 2B through ICEGATE on its own timetable, which does not track your goods-received date.
  • Reverse charge. Your self-invoiced RCM liability is your own entry. It does not come from a supplier and it is not in the supplier-reported part of 2B.
  • Credit notes. A credit note reduces credit in the period the supplier reports it, which is frequently not the period in which you booked the return.

The differences worth investigating are the other kind: an invoice in your books that is in nobody’s 2B at all, an invoice in 2B against a supplier you have never dealt with, or a value that differs by an amount which is not a rounding artefact.

A workflow that holds up

  1. Wait for the 14th. Reconciling before 2B is generated means reconciling against an incomplete statement, and then doing it again.
  2. Match on GSTIN plus invoice number plus period first, then on value. Matching on value alone produces false pairs the moment a supplier issues two invoices of the same amount in a month, which happens more often than you would think.
  3. Normalise invoice numbers before matching. This is where most of the noise comes from. The supplier writes INV/2026/0042 and your purchase register says 42, and a literal comparison calls that a mismatch. Strip prefixes, leading zeros, slashes and spaces on both sides before you compare.
  4. Split the exceptions into timing and substance. Timing differences get carried forward and reverse on their own. Substance differences need a call to the supplier.
  5. Keep the 2B file. Save the JSON or Excel you actually matched against, with the date you pulled it. It costs nothing now and it is the whole of your defence later.

What it costs to get this wrong

Two directions, both expensive.

Claim credit that is not in 2B and you are exposed under Section 16(2)(aa), with interest under Section 50 and, once the difference crosses the threshold in Rule 88D, an automated DRC-01C intimation asking you to explain it or pay.

Miss credit that is in 2B and you have simply given the money away, because Section 16(4) closes the window on 30 November following the end of the financial year. Credit not taken by then is not deferred. It is lost.

The second one gets far less attention than the first, and in most practices it is the larger number.

The short version

Use 2B to claim. Use 2A to investigate. Reconcile after the 14th, normalise invoice numbers before you match, separate timing differences from real ones, and keep the file you matched against. Most of what makes GST reconciliation painful is not the matching. It is having matched against a document that has since changed.

Authority for this article

  • Section 16(2)(aa), CGST Act, 2017Credit is available only where the invoice has been furnished by the supplier in his outward supply statement and communicated to the recipient. This is the provision that makes an auto-drafted statement legally relevant rather than merely informative.
  • Rule 36(4), CGST Rules, 2017Restricts credit to what appears in the auto-drafted statement. The earlier percentage-based cushion has gone, so the statement is now the ceiling.
  • Rule 60(7) and Rule 60(9), CGST Rules, 2017Rule 60(7) provides for the auto-drafted GSTR-2B statement, Rule 60(9) provides for GSTR-2A. Two separate rules, two separate documents.

Primary sources are on the CBIC site at cbic-gst.gov.in and the GST portal at gst.gov.in. Where this article and a notification disagree, the notification is right.

GSTR-2BGSTR-2AreconciliationRule 60ITC

Related reading