GSTR-2B reconciliation compares the input tax credit a registered person has taken in its books and returns against the credit shown as available in GSTR-2B, which the GST portal generates from the returns filed by its suppliers. The reconciliation establishes two separate things that are often confused: whether the credit is available, which 2B answers, and whether it is eligible, which 2B does not. Credit can appear in 2B and still be blocked under section 17(5); it can be absent from 2B and still be legitimately claimable in a later period.
What GSTR-2B is, and why it is the right reference
GSTR-2B is an auto-drafted statement of input tax credit, generated for a tax period from the returns suppliers have filed. Its defining property for audit purposes is that it is static: generated once for a period and not changed afterwards by later supplier filings. GSTR-2A, by contrast, is dynamic and continues to update.
That distinction is the reason 2B is the correct reference point. A reconciliation performed against 2A in September produces a different answer in November, which means the working paper cannot be reperformed. A reconciliation against 2B can be.
Obtain all twelve monthly statements for the financial year, and the statements for the following few months as well. Credits relating to the year under audit routinely appear in subsequent periods, and a reconciliation that stops at March will report them as supplier non-filing when they are ordinary timing.
How the Invoice Management System changed the picture
Since the Invoice Management System was introduced on the GST portal, recipients can act on inward records by accepting, rejecting or keeping them pending, and those actions feed the generation of GSTR-2B. This matters for the audit in three specific ways.
- GSTR-2B generated on the 14th of the following month is a draft. Where the recipient acts on a record after that date, 2B has to be recomputed, and the version the client relied on may not be the version you download later.
- Taking no action is not neutral. Records on which no action has been taken flow through as deemed accepted, so a client that never opens the system still has a 2B driven by supplier filings alone.
- Rejected records are visible in the 2B summary. A rejection is a decision the client made, and it is worth asking on what basis, because a rejected record is a credit forgone.
Record the date on which you downloaded each 2B statement and keep the downloaded file in the audit file. Because the statement can be recomputed after actions in the Invoice Management System, a reconciliation performed against an undated download cannot be tied to anything afterwards.
The conditions that actually govern the credit
Regulatory requirement
Section 16 of the CGST Act sets the conditions for taking input tax credit. These include possession of a tax invoice or debit note, receipt of the goods or services, the tax having actually been paid to the government, and the recipient having furnished its return. Section 16(4) sets an outer time limit for a financial year: the earlier of 30 November following the end of that year, or the date of filing the annual return for it. Section 17(5) lists supplies on which credit is blocked. Each of these has been amended since GST was introduced. Verify the current text before concluding.
Regulatory requirement
Rule 37 of the CGST Rules requires reversal of credit where the recipient has not paid the supplier within 180 days of the invoice date. Rule 37A requires reversal where the supplier has not furnished the relevant GSTR-3B by 30 September following the financial year in which the credit was availed, with the reversal to be made by 30 November of that year. Both operate independently of whether the invoice appears in GSTR-2B, and both are frequently missed in audit because the reconciliation alone does not surface them.
The practical consequence is that a reconciliation which matches the books to 2B and stops there has tested one condition out of several. Rule 37 requires an ageing of unpaid purchase invoices; Rule 37A requires knowing whether the supplier filed, which 2B does show; section 17(5) requires looking at what the supply actually was, which 2B does not show at all.
Running the reconciliation
- 01Assemble both sides on a consistent basisThe purchase register for the year on one side, all twelve 2B statements plus the following months on the other. Confirm that the register covers the same GSTINs as the statements: a multi-state client has a separate registration and a separate 2B for each state, and they must not be pooled.
- 02Remove the expected differences firstReverse-charge supplies are not reported by the supplier in a way that puts them in 2B, so they are a category of expected difference rather than an exception. Imports, purchases from composition dealers and exempt supplies also need to come out. Doing this first removes a large share of the apparent mismatches.
- 03Normalise the invoice references on both sidesUpper-case, strip spaces, slashes and leading zeros, and handle the financial-year suffix. Match quality depends almost entirely on this step.
- 04Match on GSTIN, invoice number and taxable valueAll three, not any one. Invoice numbering restarts annually at many suppliers, so invoice number alone produces false matches between years.
- 05Categorise every unmatched lineEach remaining difference belongs in exactly one category. An uncategorised residue means the reconciliation is not finished, whatever the totals show.
- 06Quantify and conclude by categoryThe conclusion on timing differences is not the conclusion on blocked credit. A single blended conclusion on input credit differences is not a conclusion at all.
- 07Test the conditions 2B does not coverBlocked credits under section 17(5) by reviewing the nature of the expense, the 180-day payment condition by ageing unpaid invoices, and the annual return position.
- 08Agree the result to the returns actually filedThe credit per the reconciliation should tie to the credit claimed in the GSTR-3B returns for the year, and to the figures in the annual return where one is filed. A reconciliation that does not tie to the return is a spreadsheet.
The shape of a finished reconciliation
| Line | Basis |
|---|---|
| Credit taken per books for the year | Purchase register and input credit ledgers |
| Less: credit on supplies blocked under section 17(5) | Reviewed against the nature of the supply, not against 2B |
| Less: credit to be reversed under Rule 37 (180 days) | Ageing of unpaid purchase invoices |
| Less: credit to be reversed under Rule 37A (supplier non-filing) | Suppliers whose relevant return was not furnished |
| Add / less: timing differences | Invoices appearing in a 2B of a different period, split into those resolved in a later period and those not |
| Unexplained residue | Individually investigated, not accepted as a balancing figure |
| Credit claimed per GSTR-3B returns filed | Agreed to the filed returns |
What the working paper has to say
The conclusion should address the credit taken, the credit at risk, and what the client has done about the second. A statement that the input credit has been reconciled tells a reviewer nothing about whether anything is wrong.
- The GSTINs covered, and confirmation that each registration was reconciled separately.
- The 2B statements used, identified by period and download date, with the files retained.
- The matching rules applied and the normalisation used, so the work can be reperformed.
- Each difference category quantified, with the resolved and unresolved portions separated.
- Credit at risk stated as a number, with the reason it is at risk and the period in which it would fall.
- The client's position on each at-risk item, and whether the auditor accepts it.
- Cross-reference to the purchase testing file, so the same invoice is not raised as an exception twice.
How we think about this
The matching, the normalisation and the categorisation are deterministic. Two competent people applying the same rules to the same two files should produce the same reconciliation, and if they do not, the rules were not written down. Lekhya performs the match across the full population and categorises the differences; deciding whether a blocked credit is material, and whether a client's explanation for an unexplained residue is adequate, is the auditor's judgement and is not automated.
This is practical guidance written for audit teams, not an authoritative statement of any standard or statute. Standards, forms and timelines change. Check the current text issued by the ICAI and the relevant authority before relying on anything here in an audit file.
Related resources
- GST & GSTR-2BGSTR-2B reconciliation: the difference categoriesWhat GSTR-2B is, how it differs from 2A, and the six categories every reconciliation difference falls into — with what each one usually means and what it implies for the audit file.
- GST & GSTR-2BGSTR-2B vs purchase register: how to investigate differencesThe two documents record different events on different bases. Which differences are structural and expected, how to match the files reliably, and how to work one down to a cause.
- GST & GSTR-2BInvestigating ITC mismatches during auditA decision path for an ITC mismatch: available, eligible, still claimable. What the client can do about each outcome, and how to quantify credit at risk.
- GST & GSTR-2BA GSTR-2B reconciliation workflow for CA firmsRunning input credit reconciliation as a recurring service across many clients: the monthly cycle, what to standardise, how to staff it, and how to tell whether it is working.
Free tools, no signup
Each one reads a file entirely in your browser — or, for two of them, just answers a few questions — and nothing is ever uploaded.
- Purchase register checkDuplicate payments, round-sum amounts, weekend-dated invoices, incomplete records.
- Bank reconciliation checkerMatches your cash book against a bank statement — what's outstanding on each side.
- Fixed asset register checkDuplicate asset codes, missing location or useful life, negative net book value.
- Payroll red-flag scannerBank accounts shared across employees, and records missing an ID, PAN or salary.
- CARO applicability checkerAnswer a few questions about the company and see which CARO 2020 clauses likely apply.
- MSME payment delay checkerMSME-flagged invoices paid — or still unpaid — beyond the 45-day Section 22 limit.
- Related-party transaction screenerTransactions above a threshold you set with no approval reference, grouped by counterparty.
- Depreciation useful life checkerCompares a useful life in use against the Schedule II, Part C indicative figure.
- Materiality calculatorOverall and performance materiality against PBT, revenue, assets or equity, with reasoning shown.
- Sample size calculatorStatistical sample size for a test of controls or a substantive test of detail.