How to read a vendor's GST return history

GSTR-1 and GSTR-3B, a real filing history walked through line by line, and what a missing month does and does not prove.

By gstinapi.in team · Published 4 October 2026 · Last reviewed 4 October 2026

The two returns that matter

GSTR-1 is the statement of outward supplies: the invoices a seller says it issued. Every normal and casual taxpayer files it, even when there was nothing to report. It is not filed by input service distributors, composition taxpayers, or TDS and TCS deductors.

GSTR-3B is the summary return in which the taxpayer declares its tax liability for the period and pays it. Normal and casual taxpayers file it every period too, including periods with no business. An optional GSTR-1A lets a taxpayer amend a GSTR-1 before filing GSTR-3B, so you may see a GSTR-1A row beside a GSTR-1.

Both are due on fixed days after the period: the 11th for a monthly GSTR-1 and the 20th for a monthly GSTR-3B. These are the standing rules; the government sometimes extends a date for a particular period by notification, so a filing a few days past the usual day is not by itself proof of lateness.

Sources: GST portal: GSTR-1 · GST portal: GSTR-3B · CGST Rule 61 (due dates)

Why a buyer cares about a supplier's returns

Your input tax credit depends on your supplier. Section 16(2) of the CGST Act allows credit only where the supplier has furnished the invoice details in GSTR-1 (or the Invoice Furnishing Facility) and the tax has actually been paid to the government. Rule 37A, inserted in July 2024, goes further: if a supplier's GSTR-3B for a period is still unfiled by 30 September after the financial year, the buyer has to reverse the credit, and may claim it again if the supplier files later.

Our reading of that, not the law's words: an unfiled GSTR-1 means your invoice may not appear in your own GSTR-2B, and an unfiled GSTR-3B means the tax on it may not have been paid. Both put your credit at risk. Neither says anything about the supplier's intent.

Sources: CGST Act, Section 16 · CGST Rule 37A

A real filing history, line by line

This is a call we made on 4 October 2026 for 33AAACC1206D1ZN, the same public-sector GSTIN used in our documentation, for financial year 2025-26. The /returns endpoint lists every return filed, one row each. Here are two of its twelve GSTR-3B rows:

Eleven of the twelve GSTR-3B returns for that year were filed on the 20th of the following month. September 2025 was filed on 24 October. Whether that was late depends on the due date in force for that period, which can be moved by notification. That is exactly why the API reports the date and leaves the verdict to you.

The same year shows twelve GSTR-1 rows, filed between the 6th and the 11th of each following month, and one GSTR-1A. The /compliance endpoint summarises the same data without a second upstream call. Trimmed to the two return types that matter:

{"return_type":"GSTR-3B","return_period":"2025-08","filing_status":"Filed","filing_date":"2025-09-20","arn":"AB330825787478E"}
{"return_type":"GSTR-3B","return_period":"2025-09","filing_status":"Filed","filing_date":"2025-10-24","arn":"AC330925007363A"}

Two of the twelve GSTR-3B rows returned for 2025-26. return_period is the month the return covers; filing_date is when it was filed.

Reading the compliance summary

filed_count is how many returns of that type were filed in the year you asked about; twelve is a full year for a monthly filer. last_period is the latest period filed, chosen by period and not by filing date, so an old amended return filed yesterday does not make a vendor look current.

months_since_last_period counts whole months from that latest period to today. Ask for the current financial year when you want recency: for a past year the number simply keeps growing. The 7 above is correct for a year that ended in March 2026 and viewed in October.

avg_filing_lag_days is the average gap between the end of the period's month and the day it was filed. A GSTR-3B average of 20 means "filed around the 20th of the next month". It is a measure of habit, not a statement that the vendor was on time. The figure only means something for GSTR-1 and GSTR-3B: the same response shows 151 days for GSTR-2X rows, which is not a filing-lag signal.

{"compliance":{"total_filed":36,"by_type":{
  "GSTR-3B":{"filed_count":12,"last_period":"2026-03","last_filing_date":"2026-04-20","months_since_last_period":7,"avg_filing_lag_days":20},
  "GSTR-1": {"filed_count":12,"last_period":"2026-03","last_filing_date":"2026-04-11","months_since_last_period":7,"avg_filing_lag_days":10}
}}}

From the live /compliance response for 2025-26. The full response also contains GSTR-1A and GSTR-2X rows, omitted here.

What the API deliberately does not say

There is no on-time percentage and no "defaulter" or "inactive" flag. Due dates vary by return type, by turnover band, by the state group for quarterly GSTR-3B, and by notifications that change year to year. A guessed due date would put wrong "late" labels into your compliance file. A quarterly filer also legitimately shows two empty months in every three, so any fixed threshold would mislabel someone. You apply the threshold that suits your own risk policy to months_since_last_period.

The history also lists only returns that were filed. A period with no row means nothing was filed for it. Nil returns still have to be filed, so a gap is not explained by "nothing happened that month".

What a gap can and cannot tell you

The law gives one concrete anchor. Under Rule 21, a registration is liable to be cancelled after six continuous months of no returns for a monthly filer, or two continuous tax periods for a quarterly filer, and Section 29 requires the taxpayer to be heard first. So a long, unbroken silence is something the department itself treats seriously.

A shorter gap proves much less. It might be a late filing that was caught up, an extension, a switch between monthly and quarterly filing, or a genuine problem. The first thing to establish is whether the vendor files monthly or quarterly, because the same pattern means opposite things for each. Our companion post on monthly and quarterly filers covers how to check.

Sources: CGST Rule 21 · CGST Act, Section 29

A five-step read of any vendor

  1. Confirm the GSTIN is active, and note the taxpayer type: a composition taxpayer does not file GSTR-1 or GSTR-3B in the usual way.
  2. Find out whether the vendor files monthly or quarterly for the quarter in question.
  3. Pull the current financial year's returns and check that GSTR-1 and GSTR-3B both exist for every period due.
  4. Look at last_period and months_since_last_period against your own tolerance, and at whether filing days are steady.
  5. Re-check before large payments and at renewal, since a history is a snapshot of today.

Calling it

curl -H "x-api-key: YOUR_KEY" \
  "https://www.gstinapi.in/v1/gstin/33AAACC1206D1ZN/compliance?fy=2025-26"

Each of /returns and /compliance costs 1 credit. An invalid GSTIN or a failed upstream call is not charged. fy is required, in the form 2025-26.

Frequently asked questions

What is the difference between GSTR-1 and GSTR-3B?

GSTR-1 lists the invoices a taxpayer issued to customers. GSTR-3B is a summary of the tax liability and the payment of it. A buyer relies on the supplier's GSTR-1 for the invoice to appear in their own records, and on the GSTR-3B for the tax to have been paid.

How can I tell if a supplier has stopped filing GST returns?

Compare the latest filed period with today. For a monthly filer, several consecutive missing periods is a real warning sign; the law treats six continuous months of no returns as grounds for cancellation proceedings. For a quarterly filer, check the filing preference first, because two empty months within a quarter are normal.

Does a late GST return mean the vendor is unreliable?

Not by itself. Due dates are sometimes extended by notification and amended returns are filed later than originals. Look for a pattern across months rather than judging a single date.

Can I get a vendor's GST filing history by API?

Yes. The returns endpoint lists each filed return with period, filing date and ARN, and the compliance endpoint summarises it per return type. Both take a GSTIN and a financial year and cost 1 credit per call.

Try it on a real GSTIN

Up to 100 free lookups: 25 on signup and 25 for each of three setup steps. No card, and they never expire.

Create a free account