fynxIQ
Sign inStart free

How to read the GSTR-1 error report the portal gives back

8 min readUpdated 4 October 2026Rests on GSTR-1 Returns Offline Tool and its JSON validation (GSTN)

Processed with Error means some records went in and the rest wait in an error report. Where to get it, what each field and status means, and how to fix it.

  1. On the portal, open Returns Dashboard, the period, GSTR-1, then Prepare Offline. Where the upload says Processed with Error, click Generate error report, come back for it, and download the zip.
  2. Open the Returns Offline Tool, choose Open Downloaded Error File from GST portal, and select the zip without unzipping it. Only the sections with errors are filled.
  3. Read each message against its invoice, fix the fault where the file was made, and upload the whole corrected JSON. Check it first in the free GSTR-1 JSON validator.

Try it on your own figures with the free GSTR-1 JSON validator.

What does each upload status mean?

After a JSON is uploaded on the Prepare Offline page, it is given a reference ID and its status reads In-Progress while the portal checks it. GSTN’s manual lists what the portal checks at this point that the offline tool could not: that each receiver’s GSTIN is valid, that no invoice number repeats one filed in an earlier month of the financial year, and other sanity checks on the data. The status then settles on one of three:

  • Processed (P): every record passed and is saved in the draft return. The tiles on the GSTR-1 page show them once the summary is generated again.
  • Processed with Error (PE): the records that passed are saved, and the ones that failed are held back in an error report. GSTN’s manual says the report is made for only those records.
  • Error (ER): the request failed as a whole, and one code and one message say why. GSTN’s attribute sheet gives a single code in this case and no records. A file refused for its form rather than its records is its own case: Error in JSON structure validation.

Where is the error report?

Not in an email and not on the screen. It waits on the same Prepare Offline page, in the Error Report column beside the upload. Click Generate error report; GSTN’s manual says the file is ready after around 15 minutes, when the link changes to Download error report. The file is a zip. Keep it zipped: the offline tool opens the zip itself, and one error file at a time.

What is in the error report?

The report is a JSON file, and GSTN documents its fields with the Get Return Status API. Read it through the offline tool, but it helps to know what the tool is showing you:

  • status_cd: P, PE or ER, the three statuses above.
  • form_typ: the return, R1 for GSTR-1.
  • error_report: the failed records, section by section in the JSON’s own names: b2b for Table 4, b2cl for Table 5, b2cs for Table 7, exp for Table 6A, cdnr and cdnur for Table 9B, hsn for Table 12, doc_issue for Table 13, and the rest.
  • error_cd: the code, up to ten characters, such as RET191113. The RET191 codes guide gives each one GSTN documents, in its words.
  • error_msg: the message, up to a hundred characters.
  • The record itself, as it was uploaded: for a Table 4 invoice, the buyer’s GSTIN (ctin), then the invoice number (inum), date (idt), value (val), place of supply (pos), reverse charge (rchrg), invoice type (inv_typ) and its items with rate, taxable value and tax. This is what you find and fix.

Is there an error report for every upload?

No. GSTN’s attribute sheet says the error report comes only when the status is something other than Processed: section by section when it is Processed with Error, and as a single code and message when it is Error. An upload that reads Processed has nothing to download, and its records are already in the draft return.

Each failed record comes back whole, not only the field that failed. A Table 4 invoice with a bad place of supply returns with its buyer, number, date, value and items, so that the record in the tool can be corrected and generated again as it stands. The message says which part of it was refused.

Why do the tiles not show what you uploaded?

Because the tiles on the GSTR-1 page count only what the last summary counted. GSTN’s FAQ on GSTR-1 says the count updates when Generate GSTR1 Summary is clicked, and that a summary can be generated only once in ten minutes; an attempt sooner brings an error at the top of the page. If the tiles still fall short after a new summary, GSTN’s FAQ says to look for an error file on the upload page, which is where the missing records are.

Can a record be fixed on the portal instead?

A record that went in can be. GSTN’s FAQ says uploaded invoices are a draft until the return is filed, and each can be changed with its Edit button or removed with Delete, any number of times until then. A record in the error report did not go in, so there is nothing on the portal to edit: it comes in only with a corrected upload.

A file larger than 5 MB has to be uploaded in parts, GSTN’s manual says, so a month can have more than one upload on the page to look through.

Should you trust the code or the message?

Both, and the message first when they seem to disagree. In GSTN’s own published example of an error report, RET191114 stands beside a message about an invoice date, while GSTN’s list of codes gives RET191114 to documents of an earlier financial year. The message is written for the record in front of you; the code is a label from a list. Search the message’s words when the code’s meaning does not fit what you see.

How do you open it in the offline tool?

GSTN’s manual takes it step by step:

  • Open the Returns Offline Tool and, under Open Downloaded Error File from GST portal, click Open.
  • Select the zip. The tool shows the file’s details and asks whether you are an SEZ taxpayer and whether you file quarterly. Answer and click Proceed.
  • The summary lists only the sections that have errors. Click a section to see its records, each with its error message against the invoice number.
  • Click Edit on a record, correct it, and Save. A rate-level row is reached with the plus button and saved with Update. A corrected record is marked Modified (M). Delete removes a record you should not have uploaded.
  • When every error is dealt with, click View Summary, then Generate File, and save the JSON. Upload it on the same Prepare Offline page. It is checked again as any upload is.

Should you fix the error in the offline tool?

Only as a last resort. An edit in the tool mends this month’s file and leaves the fault where it started: a buyer’s wrong GSTIN in your register, a unit your product maps wrongly, an HSN code on a marketplace listing. Next month the same fault comes back. Fix it at the source, make the JSON again from there, and upload that.

Upload the whole corrected JSON, not a file of the mended records alone, and before the return is filed. GSTN’s manual says an upload before filing overwrites what is on the portal. Why the portal rejects a GSTR-1 JSON sets out what a second upload replaces and what it leaves, since an upload adds and replaces and does not remove.

What can fynxIQ do about an error report?

It cannot read one; it does not see what happens on the portal after you upload. What it does is come before the upload. The JSON fynxIQ builds is held to GSTN’s schema and to the checks behind most of the codes an error report carries: document numbers, dates, places of supply, tax heads, rates, units, HSN codes, buyers’ GSTINs, duplicates within the return. A fault it finds is a blocker, and the download stays closed until it is fixed in the file it came from.

What fynxIQ cannot check is what the portal alone holds: an invoice number filed in an earlier month, a buyer whose registration was cancelled, your own registration date. Those can still come back in an error report, and the codes guide says which they are.

Where this comes from

Try it on your own figures with the free GSTR-1 JSON validator.

Which file to download, and from where: the list for each marketplace and the GST portal.

By Raunak Pathak, founder of fynxIQ, who files GST returns on it. Last updated 4 October 2026. This is general information about how GST returns work, not advice about your particular return.

Related guides

JSONWhy the portal rejects a GSTR-1 JSON, and how to read the error reportJSONError in JSON structure validation: why the portal refused the whole GSTR-1 fileJSONRET191113 and the other GSTR-1 error codes: what each means and what to change

Check this on your own return.

fynxIQ holds its GSTR-1 JSON to GSTN’s schema and to the checks that stand behind most of these codes before the download, so fewer records come back. The free validator runs the same checks on a file from any other product.

Start free