Guide: GSTR-2B reconciliation
How to reconcile GSTR-2B with the purchase register in Google Sheets
A practical walkthrough for CAs and GST practitioners: download the GSTR-2B Excel from the GST portal, export the client's purchase register from Tally, Busy or Zoho, match 2B vs books in one Google Sheet, and know what to do with every invoice that does not match before GSTR-3B is due.
The monthly 2B close monthly filers
- GSTR-2B ready
- 14th of next month
- Reconcile, chase
- 14th to 19th
- GSTR-3B due
- 20th of next month
- Status
- Reconciled
Why reconcile 2B with the books every month
Since 1 January 2022, input tax credit can be taken only on invoices and debit notes that the supplier has reported in GSTR-1 or IFF and that appear in your GSTR-2B (section 16(2)(aa) of the CGST Act, read with rule 36(4)). The ITC table of GSTR-3B is filled in from the 2B, so the 2B is the ceiling, and the purchase register is what the client actually bought. Comparing the two, invoice by invoice, tells you before you file:
- what you can claim now: invoices in both, with the same values;
- what to hold: invoices in the books that the supplier has not reported, so they are not in the 2B;
- what to look into: invoices in the 2B that are not in the books, and pairs whose value, date, tax or GSTIN differ.
The window is short. The 2B for a month is ready on the 14th of the next month, and GSTR-3B is due on the 20th for monthly filers. Since October 2024 there is also the Invoice Management System (IMS) on the portal, where you accept, reject or keep invoices pending; the reconciliation tells you which ones need that.
Step by step
From the GST portal to a list of suppliers to chase. Steps 1 to 3 are the same every month; step 4 is where GSTR-2B Reconciler does the matching.
-
Download the GSTR-2B Excel
Log in at gst.gov.in and open Services → Returns → Returns Dashboard. Choose the financial year, quarter and period, click Search, then View on the GSTR-2B tile. On the summary page, click Download GSTR-2B Summary (Excel).
Despite the name, the file has every document: a Read me tab, the summary tabs, then B2B, B2BA, B2B-CDNR, B2B-CDNRA and the rest, one tab per table.
If the month has more than 1,000 documents, the portal disables that button and makes the file through Download → Generate Excel file to download instead. The add-on is built and tested on the standard file; if the larger one gives you trouble, write to support@creet.in.
-
Export the purchase register from Tally, Busy or Zoho
Export the client's purchases for the same month to Excel or CSV, one row per supplier invoice rather than monthly totals. Tally Prime, Busy and Zoho Books all have a purchase register that does this, and a sheet you keep yourself works too. What matters is the columns:
Column Why it matters Supplier GSTIN Matched first. GSTINs are checksum-verified, so a mistyped one is reported rather than quietly missed. Supplier invoice number The supplier's number as printed on the bill (Supplier Invoice No. in a Tally voucher), not the client's own voucher number. Invoice date Matched within 3 days by default. Taxable value Matched within ₹1 by default. IGST, CGST, SGST/UTGST, cess In separate columns, so tax under the wrong head is caught. Supplier name, document type Optional. The name is used in the messages to suppliers. Leave total rows and unregistered purchases in if they are there: rows without a GSTIN or an invoice number are skipped and listed at the end of the Summary.
-
Import both into one Google Sheet
- Create a Google Sheet for the client. One spreadsheet per client works best: the add-on saves the column mapping in it.
- Set File → Settings → Locale to India, so dd-mm-yyyy dates are read the Indian way.
- Import the 2B with File → Import → Upload, choose the Excel file and set Import location to Insert new sheet(s). Each table arrives as its own tab.
- If the dialog offers Convert text to numbers, dates, and formulas (it does for CSV files), untick it, so invoice numbers like 00123 keep their zeros. The add-on reads the text itself.
- Import the purchase register the same way, as another tab in the same spreadsheet.
Keep the 2B's Read me tab: the add-on fills in the client name and return period from it.
-
Run Reconcile GSTR-2B
Install GSTR-2B Reconciler from the Google Workspace Marketplace, then open Extensions → GSTR-2B Reconciler → Reconcile GSTR-2B. The sidebar has three steps:
- GSTR-2B data: tick every 2B tab to reconcile, normally B2B, B2BA, B2B-CDNR and B2B-CDNRA. The portal's two- and three-row headers are found automatically.
- Purchase register: choose its tab and check the column mapping the add-on suggests from the header text.
- Reconcile: enter the client and return period, keep the tolerances at ±3 days and ±₹1 or change them, and click Reconcile.
The sidebar then shows GSTR-2B against the books at a glance, with the ITC you can claim now and the ITC on hold, and the full result is written into new tabs of the same spreadsheet. Your 2B and register tabs are never changed.
The first time, Google asks you to allow three permissions; the add-on can read and write only the spreadsheet it is opened in. To try it first, click Try with sample data in the sidebar: it adds two tabs of made-up invoices, and runs on them are not counted against the free plan.
Read the result, tab by tab
The add-on writes seven tabs into the client's spreadsheet. Here is what each one means and what to do with it before you file GSTR-3B.
- Summary
-
Start here. Counts and head-wise totals (IGST, CGST, SGST/UTGST, cess) for every category, ITC as per 2B against ITC as per books, and the ITC claimable now: matched invoices that the 2B marks as available.
Below that is ITC by supplier GSTIN, largest difference first: claimable, to review, in 2B but not in the books, and at risk because it is not in the 2B. Rows the add-on skipped are listed at the end; glance at them to make sure nothing real was left out.
- Matched
-
Pairs matched exactly, or within tolerance, with a note on any small difference, such as an invoice number written differently or a date two days apart.
What to do: claim the ITC, unless the 2B marks it as not available. Nothing to chase.
- Mismatched
-
The same document on both sides, but something differs beyond tolerance. The Reasons column says what, for example:
Taxable value differs by ₹1000.00
Date differs by 18 days
Tax head differs: 2B has IGST, books have CGST + SGST
GSTIN differs (books 27AAHCR6668F1Z0)What to do: pull out the invoice. If the books are wrong (a GSTIN typo, the wrong date, a local purchase booked as interstate), correct the voucher. If the supplier reported it wrong, ask them to amend it in their next GSTR-1; the corrected invoice then comes through in B2BA. Until it is sorted out, claim no more than the 2B shows.
- Missing in 2B
-
In the books, not in the 2B. Usually the supplier has not filed GSTR-1 or IFF yet, filed after the cut-off, reported the invoice under another GSTIN, or reported it as a B2C sale. The Next step column reads:
Not in 2B: hold this ITC and ask the supplier to report it in GSTR-1/IFF
What to do: hold the ITC this month and send the supplier the message from Follow-ups. When the invoice appears in a later month's 2B, claim it then; the last date is 30 November after the end of the financial year, or the date you file the annual return if that is earlier (section 16(4)). An entry noted as a possible duplicate is the client's error, not the supplier's: delete the extra voucher.
- Missing in books
-
In the 2B, not in the books. The client has not booked it yet, booked it in another month or without the GSTIN, or never received the goods or services. The Next step column reads:
In 2B but not in books: confirm receipt, then record it or flag it to the supplier
What to do: confirm receipt with the client, then record the invoice. If the client never received it, reject it in IMS before filing GSTR-3B, or take it up with the supplier. The tab also carries the 2B's ITC availability, reason and reverse charge columns: do not claim what the 2B marks as not available.
- Follow-ups
-
One row per supplier with invoices missing in 2B: the invoice numbers, the ITC on hold, and a message ready to paste into an email or WhatsApp. Possible duplicates are left out.
Message to supplier, from the add-on's sample dataDear Sharma Steel Traders, the following invoice issued to Demo Client Pvt Ltd (supplier GSTIN 27AAACS1111A1ZA) is not in our GSTR-2B for September 2026: SST/2026/131 dated 30-09-2026, tax ₹2,160.00. Please report it in your GSTR-1 or IFF so we can claim the input tax credit. Thank you.
- Recon history
-
One row per run: client, period, counts, ITC as per 2B and as per books, claimable ITC and ITC on hold. It stays in the spreadsheet as the record of what was reconciled and when.
Each run replaces the add-on's own result tabs and adds a row to Recon history. The result is a working paper: check the Mismatched and Missing tabs before you claim ITC or file a return.
Next month
Replace last month's 2B and register tabs with the new month's, keeping the same tab names, and run Reconcile GSTR-2B again. The column mapping is saved in the client's spreadsheet, so there is nothing to set up.
Before you book anything from Missing in books, compare it with last month's Missing in 2B. An invoice the supplier reported late shows up in this month's 2B but sits in last month's books: it is not missing, and the ITC you held on it can be claimed now.
Reconcile this month's 2B in Google Sheets
GSTR-2B Reconciler does step 4 and writes every tab above: matching, reasons, ITC by supplier and the messages to send. Free for up to 200 invoices a month with every feature; Pro is ₹999 a year for unlimited invoices.
FAQ
How does fuzzy invoice-number matching work?
Invoice numbers are compared ignoring case, spaces, separators and leading zeros, so INV/0045/26-27 in the 2B matches inv-45-26-27 in the books, and SB00123 matches sb 123. The supplier GSTIN must agree, the date must be within 3 days and the taxable value within ₹1; both tolerances can be changed in the sidebar. The same invoice number outside tolerance is reported as Mismatched with the reason, and two suppliers who happen to use the same number are never paired.
How are credit notes and purchase returns handled?
The B2B-CDNR and B2B-CDNRA tabs are read along with B2B and B2BA. Credit notes are matched like invoices and count negative in every ITC total. Negative figures in the books always reduce ITC, so a purchase return booked in Tally as a Debit Note with negative amounts matches the supplier's credit note. If the signs disagree (a credit note in the 2B, an entry adding ITC in the books), the pair is Mismatched.
The 2B shows IGST, the books show CGST + SGST. What then?
If the tax sits under a different head, the pair is Mismatched with the reason "Tax head differs: 2B has IGST, books have CGST + SGST", even when the invoice otherwise matched exactly. It usually means the place of supply was treated differently: check the invoice, correct the voucher if the books are wrong, and take it up with the supplier if their invoice is.
Which GSTR-2B tables are reconciled?
B2B, B2BA, B2B-CDNR and B2B-CDNRA. ISD and IMPG have no supplier invoice to match, and ECO, B2B-DNR and the reversal and rejected tabs are not handled yet.
Can't I do this with VLOOKUP in Excel?
For exact matches, yes: join the GSTIN and invoice number into a key on both sides and look each one up. It breaks on real data: INV/0045/26-27 against inv-45-26-27, a date a day off, a rupee of rounding, IGST booked as CGST + SGST, a mistyped GSTIN. Those are the cases the add-on handles, in the browser, with no macros, no VBA and no Windows.
What about IMS?
The add-on never logs in to the GST portal and never accepts, rejects or files anything. Use the result to decide what to do in IMS. If you act on invoices there after the 2B is generated, recompute GSTR-2B on the portal, download it again and reconcile once more before you file.
Does client data leave Google?
No. Invoices, GSTINs and amounts are read and written inside Google Sheets only, and the add-on can open only the spreadsheet it is opened in. The single outside call is the Pro licence check, which sends your licence key to Dodo Payments and nothing else. Details are in the Privacy Policy.
What does it cost?
Free for up to 200 invoices a month, with every matching rule and every result tab. Pro is ₹999 a year for unlimited invoices, with a 14-day money-back guarantee. A matched or mismatched pair counts once, as does each unmatched invoice on either side, and re-running the same 2B in the same month is not counted again. See pricing.
This guide is general information for practitioners, not legal advice; check the current law and the portal for each client's case. GSTR-2B Reconciler is an independent tool, not affiliated with or endorsed by the Goods and Services Tax Network, CBIC, the Government of India or Google.