RET191113 means the GSTIN is invalid. Each GSTR-1 error code GSTN documents, in its own words, with the table, the fix, and whether fynxIQ catches it.
- Find the code: on the screen after an upload, or against each record in the error report.
- Look it up below. Each code gives GSTN’s own message, the part of the return it is about and what to change. Read the message as well as the code.
- Fix it 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 are the RET191 codes?
They are the codes the GST portal gives a GSTR-1 record it will not save. GSTN lists them, each with its message, on its developer portal beside the GSTR-1 APIs: RET191 and six digits when a record is refused as it is saved, and RET1925 codes for Tables 12 and 13 when the return’s summary is generated. Below are the 54 that come from the tables a seller’s month carries, Tables 4 to 9, 12 and 13, grouped by what they are about. The rest of GSTN’s lists cover amendments, advances, Table 15, and the API’s own logins, sessions and system failures.
Each message is copied from GSTN’s list exactly, spelling included, because the words are what you will see and search for. The codes are GSTN’s; the explanation after each is fynxIQ’s, from the message, GSTN’s FAQs and the law it names.
Read the message, not only the code. In GSTN’s own published example of an error report, RET191114 stands beside a message about an invoice date, while its list gives RET191114 to documents of an earlier financial year. When the two disagree, the message is the better guide to what went wrong.
What does RET191113 mean?
GSTN’s message is "The GSTIN is invalid. Please enter a valid GSTIN." A GSTIN in the file, usually a buyer’s in Table 4 or 9B, is not in any shape GSTN issues, or its fifteenth character is not the check digit the first fourteen give. It is a typing fault in the number, not a question about the buyer’s status: a well-formed GSTIN of a cancelled registration brings RET191360 instead, "GSTIN of receiver is inactive".
Ask the buyer for the registration again, or report the sale as one to a consumer if they cannot give a valid one. fynxIQ checks every buyer GSTIN’s shape and check digit before the download. An invoice whose buyer GSTIN fails is reported as a sale to a consumer, with a warning naming it, until you type the registration that was meant or confirm the buyer is a consumer. The shapes and what to do with each are in Invalid GSTIN of the recipient.
The file as a whole
- RET191106, "Error in Json structure validation" The whole file. The file breaks GSTN’s published schema for the GSTR-1 JSON: a field it does not know, a required field missing, a value of the wrong kind or in the wrong form. Nothing in the file is taken. Find the field by its place in the JSON and fix it in the product that made the file. fynxIQ catches it before the download. More on this.
- RET191136, "GSTIN or Return period in offline JSON does not match with the selected GSTIN or Return Period" The file’s header: gstin and fp. The file was made for another registration or another month than the one chosen on the portal. Check the two fields at the top of the file against the login and the period selected. fynxIQ cannot see this before the upload: fynxIQ shows the file’s GSTIN and period; which login and period you choose on the portal it cannot see.
- RET191148, "No section data or Gross Turnover is available to process the request" The whole file. The file has no tables in it. Build it again from the month’s files.
Document numbers and dates
- RET191203, "The invoice number entered is invalid. Please enter a valid invoice number" Any invoice or note number. A document number is 1 to 16 characters: letters, digits, "/" and "-", with at least one letter or a digit other than 0. A space, a dot, an underscore or a hash is refused, and so is a number made only of zeros and dashes. fynxIQ catches it before the download.
- RET191190, "Duplicate Invoice number '<inv-number>' found in the payload. Please correct." Tables 4, 5, 6 and 9B. The same number is used for two documents in one file. Rule 46(b) of the CGST Rules makes an invoice number unique in the financial year. fynxIQ catches it before the download. More on this.
- RET191111, "Invoice No. <invoice number> already exist in GSTR 1 of <retPrd>. Do enter the correct invoice number." Tables 4, 5 and 6. The number was already reported in the GSTR-1 of the period the message names. If it is the same invoice, leave it out of this month; if it is a different one, it needs its own number. fynxIQ catches part of it before the download. fynxIQ checks numbers within the return being prepared, not against what the portal holds for earlier months.
- RET191123, "Note No.(s) <note number> already exist in for the return period <retPrd>" Table 9B. The note number was already reported in the period the message names. A note number is unique the way an invoice number is. fynxIQ catches part of it before the download. Checked within the return being prepared, not against earlier months.
- RET191133, "Invoice already exists with different CTIN or same CTIN. Please delete the existing invoice and upload again." Table 4. An invoice with this number is already saved for this period, under this buyer or another. Delete it on the portal, then upload the corrected file. fynxIQ cannot see this before the upload: it concerns what is already saved on the portal, which fynxIQ cannot see.
- RET191126, "Note Date is Invalid. Date of note cannot exceed the current tax period and be older than 18 months" Table 9B. A note is dated after the period being filed ends, or more than 18 months before it. One dated later belongs to a later month’s return. fynxIQ catches part of it before the download. fynxIQ checks the date against the end of the period; the 18-month limit it does not check.
- RET191114, "Document details pertaining to previous financial year cannot be added/amended now." Any table. A document of a financial year can be reported or corrected only until 30 November after that year ends (section 37(3) of the CGST Act, as amended by the Finance Act 2022), or the annual return if filed sooner. fynxIQ catches part of it before the download. If the annual return for that year is already filed, the window closed then; fynxIQ cannot see that.
- RET191318, "Invoice date cannot be older than the registration date of the supplier TIN." Tables 4, 5 and 6. An invoice is dated before your registration took effect. Check the date against your registration certificate. fynxIQ cannot see this before the upload: fynxIQ does not know your registration date.
- RET191216, "Invoice date cannot be greater than the effective date of cancellation of registration" Tables 4, 5 and 6. An invoice is dated after your registration was cancelled. fynxIQ cannot see this before the upload: fynxIQ does not know whether or when a registration was cancelled.
The buyer’s registration
- RET191113, "The GSTIN is invalid. Please enter a valid GSTIN." Tables 4 and 9B: the buyer’s GSTIN. The buyer’s GSTIN is not in a shape GSTN issues, or its last character is not the check digit the other fourteen give. Ask the buyer for the registration again, or report the sale as one to a consumer. fynxIQ catches it before the download. More on this.
- RET191360, "GSTIN of receiver is inactive" Tables 4 and 9B: the buyer’s GSTIN. The buyer’s registration was not active on the invoice date. GSTN’s FAQ on GSTR-1 says the invoice is accepted only if the recipient was active on the date of issue. Check it with Search Taxpayer on the portal and report the sale as one to a consumer if it was not. fynxIQ cannot see this before the upload: a GSTIN can be well formed and still cancelled; fynxIQ has no connection to the portal to tell. More on this.
- RET191314, "GSTIN you entered is same as counter Party GSTIN. Do enter the correct GSTIN." Tables 4 and 9B: the buyer’s GSTIN. The buyer column carries your own GSTIN. A business cannot supply itself under one registration. fynxIQ catches it before the download. More on this.
- RET191316, "Invoice type can be SEWP/SEWOP only when receiver is SEZ." Table 6B. The invoice is marked as a supply to an SEZ, and the buyer’s registration is not an SEZ unit or developer. fynxIQ cannot see this before the upload: whether a registration belongs to an SEZ is on the portal, not in the GSTIN.
Place of supply and tax heads
- RET191112, "Do enter the correct State code in POS." Place of supply, any table. The place of supply is not a state code on GSTN’s list: two digits, 01 to 38, or 97. fynxIQ catches it before the download.
- RET191240, "Invalid POS selected" Place of supply, any table. The place of supply is not one this table takes. fynxIQ catches it before the download.
- RET191150, "IGST is required for interstate supply. Do remove CGST and SGST as they are not applicable." Tables 4, 5, 7 and 9B. A supply to another state carries integrated tax only (section 7 of the IGST Act). The row has central and state tax. Either the place of supply is wrong or the tax was split as if the buyer were local. fynxIQ catches it before the download.
- RET191301, "CGST and SGST is required for intrastate supply. Do remove IGST as they are not applicable." Tables 4, 7 and 9B. A supply within your own state carries central and state tax (section 8 of the IGST Act). The row has integrated tax. fynxIQ catches it before the download.
- RET191302, "CGST and SGST should not be present for INTER state supply: for the Supplier TIN : <stin> and the Place of supply is : <pos>" Tables 4, 5, 7 and 9B. The same fault as RET191150, with your state and the place of supply named. fynxIQ catches it before the download.
- RET191303, "CGST and SGST values are mondatory for INTRA state supply: for the Supplier TIN : <stin> and the Place of supply is : <pos>" Tables 4, 7 and 9B. The same fault as RET191301, with your state and the place of supply named. fynxIQ catches it before the download.
- RET191304, "IGST should not be present for INTRA state supply: for the Supplier TIN : <stin> and the Place of Supply is : <pos>" Tables 4, 7 and 9B. Integrated tax on a supply within your own state. Split it into central and state tax, or correct the place of supply. fynxIQ catches it before the download.
- RET191305, "IGST is mandatory for INTER state supply: for the Supplier TIN : <stin> and the Place of Supply is : <pos>" Tables 4, 5, 7 and 9B. No integrated tax on a supply to another state. Report it as integrated tax, or correct the place of supply. fynxIQ catches it before the download.
- RET00047, "For all intra-state transactions, the CGST and SGST amounts should be the same. Please verify that both amounts are equal." Tables 4, 7 and 9B. Central and state tax are equal halves of the rate, and the two amounts differ. fynxIQ catches it before the download.
- RET191178, "Supplier state code and place of supply (POS) cannot be different for intrastate supply." Tables 7 and 10. The row is marked intra-state and names another state as the place of supply. fynxIQ catches it before the download.
- RET191179, "Supplier state code and place of supply (POS) cannot be same for interstate supply." Tables 7 and 10. The row is marked inter-state and names your own state as the place of supply. fynxIQ catches it before the download.
- RET191160, "State code of Supplier and POS/Receiver state code cannot be same for B2CL. Do enter the correct State Codes." Table 5. Table 5 is for inter-state sales to consumers above the threshold. A sale in your own state goes to Table 7. fynxIQ catches it before the download.
- RET191229, "State code of Supplier and POS/Receiver state code cannot be same for B2CL section in a note. Do enter the correct State Codes." Table 9B, unregistered. A note against a Table 5 invoice is inter-state by definition, as the invoice was. fynxIQ catches it before the download.
- RET191189, "SEZ gstin should always be an interstate." Table 6B. A supply to an SEZ is inter-state wherever the SEZ is (section 7(5)(b) of the IGST Act), so it carries integrated tax. fynxIQ catches it before the download.
Rates, values and items
- RET191175, "Do enter the correct rate as per the rate list." The rate on any row. The rate is not one on GSTN’s rate list. Write the rate itself, 18 and not 0.18, and one the law has set for the period. fynxIQ catches it before the download.
- RET191180, "Invoice value should be greater than <threshold-value applicable for the respective return period>." Table 5. Table 5 takes only inter-state sales to consumers above a threshold: invoice value above ₹1,00,000 from the August 2024 period, ₹2,50,000 before it. A smaller sale goes to Table 7. fynxIQ cannot see this before the upload: fynxIQ places each sale in Table 5 or 7 by this threshold when it builds a return; the free validator does not check it in a file made elsewhere.
- RET191117, "Do not repeat the same rate for the invoice" Tables 4, 5 and 9B. An invoice has two item rows at the same rate. The portal wants one row per rate, with the values added together. fynxIQ cannot see this before the upload: fynxIQ writes one row per rate in every return it builds; the free validator does not check it in a file made elsewhere.
- RET191107, "Atleast one line item should be present ." Tables 4, 5, 6 and 9B. A document has no item rows. fynxIQ catches it before the download.
Exports
- RET191307, "IGST must be present for With Pay transaction but none of amounts are required for Without Pay transaction" Table 6A. An export with payment (WPAY) carries integrated tax; one under LUT or bond (WOPAY) carries none. fynxIQ catches part of it before the download. fynxIQ checks that a WOPAY export carries no tax; it does not refuse a WPAY export at zero.
- RET191309, "IGST, CGST, SGST & CESS amount are not required for without Payment of tax transaction." Tables 6A and 6B. A supply without payment of tax, under LUT or bond, carries no tax amounts. fynxIQ catches part of it before the download. Checked on exports in Table 6A; on an SEZ supply under LUT in Table 6B it is not.
- RET191176, "Do enter the correct shipping bill date that is on or after Invoice Date and on or before today's date." Table 6A. The shipping bill is dated before the invoice or in the future. fynxIQ cannot see this before the upload: fynxIQ checks that the date is written dd-mm-yyyy, not its order against the invoice date.
E-commerce operators
- RET191152, "The ETIN is invalid. Please enter a valid Ecommerce GSTIN." Tables 7 and 14: the operator’s GSTIN. The operator’s GSTIN is not valid. Take it from the TCS credit statement on the portal, where it carries C in the fourteenth place. fynxIQ catches it before the download.
- RET191312, "Do enter the correct Ecommerce GSTIN for B2CS supplies made through e-commerce operator" Table 7. A row marked as sold through an operator (type E) needs the operator’s GSTIN. fynxIQ catches it before the download.
- RET191313, "Ecommerce GSTIN cannot be present for B2CS supplies made through non e-commerce operator." Table 7. A row marked as your own sale (type OE) carries an operator’s GSTIN. fynxIQ catches it before the download.
Table 12, row by row
- RET191349, "The HSN code entered is not valid" Table 12. The code is not on the portal’s HSN list. Since the May 2025 period a code is picked from that list, and one bad row can refuse the whole table. fynxIQ catches part of it before the download. fynxIQ refuses a code that cannot exist, and lists some headings in full; it does not hold every code against the portal’s list. More on this.
- RET191350, "Length of entered HSN code is not valid as per AATO" Table 12. The code is shorter than your turnover requires. GSTN’s FAQ on Table 12 asks for at least four digits where the aggregate turnover of the previous year was ₹5 crore or less, and six above it, as Notification 78/2020-Central Tax does. fynxIQ catches part of it before the download. The six-digit check needs your previous year’s turnover, set on the business’s settings. More on this.
- RET191194, "Either HSN or DESC is mandatory." Table 12. A Table 12 row has no HSN code. fynxIQ catches it before the download.
- RET191352, "Combination of HSN , Uqc and Rate cannot be repeatable. Please aggregate" Table 12. Two rows in the same tab of Table 12 share a code, a unit and a rate. Add them into one row. fynxIQ catches it before the download.
- RET191353, "The UQC entered is not valid" Table 12. The unit is not on GSTN’s unit list (NOS, PCS, KGS and the rest). fynxIQ catches it before the download.
- RET191355, "The Quantity entered is not valid" Table 12. The quantity is not a number, or has more than two decimal places. fynxIQ catches it before the download.
- RET191356, "Rate cannot be empty in HSN data for the specified return period." Table 12. From the May 2021 period each Table 12 row carries its rate. fynxIQ catches it before the download.
Tables 12 and 13 when the summary is generated
- RET192547, "HSN wise B2B Supplies are not reported in Table 12. Kindly provide details to proceed further." Table 12, B2B tab. The return reports supplies to registered buyers and the B2B tab of Table 12 is empty. GSTN’s FAQ on Table 12 says the summary cannot be generated in this state. fynxIQ catches it before the download. More on this.
- RET192539, "HSN wise B2B Supplies are not reported in Table 12. Further no details are reported in Table 13. Kindly provide details to proceed further." Tables 12 and 13. Both RET192547 and RET192540 at once: the B2B tab of Table 12 and Table 13 are empty. fynxIQ catches it before the download. More on this.
- RET192540, "Please enter details in Table 13 before generating summary." Table 13. Table 13, the documents issued, is empty in a return that reports supplies. GSTN’s FAQ says it is compulsory once any of Tables 4 to 10, 14 or 15 has data. fynxIQ catches it before the download. More on this.
- RET192541, "The taxable values or tax amounts entered in Table 12 (B2B Supplies) do not match with the totals in Table 4, 6B, 6C, 8 (recipient registered), 9A (B2B), 9B (registered), 9C (registered), 15 & 15A (where recipient is registered). Please enter the correct amounts to validate Table 12 (B2B supplies)." Table 12, B2B tab. The B2B tab does not add up to the tables it summarises. GSTN’s FAQ calls this a warning the taxpayer may accept, and allows 10 per cent either way. fynxIQ catches it before the download. More on this.
- RET192542, "The taxable values or tax amounts entered in Table 12 (B2C Supplies) do not match with the totals in Table 5, 6A, 7, 8 (recipient unregistered), 9A (Export), 9A (B2CL), 9B (unregistered), 9C (unregistered), 10, 15 & 15A (recipient unregistered). Please enter the correct amounts to validate Table 12 (B2C supplies)." Table 12, B2C tab. The B2C tab does not add up to the tables it summarises. A warning on the portal, as RET192541 is. fynxIQ catches it before the download. More on this.
- RET192543, "HSN wise B2C Supplies are not reported in Table 12. Kindly provide details to proceed further." Table 12, B2C tab. The return reports sales to consumers and the B2C tab is empty. GSTN’s FAQ says the summary can still be generated after the warning. fynxIQ catches it before the download. More on this.
- RET192502, "No records found in Table 12. Add records in Table-12 corresponding to details saved in tables: [B2B, EXP, B2BA, CDNR, CDNRA, EXPA, CDNURA, B2CL, B2CS, Nil rates supplies, CDNUR, B2CLA, B2CSA] ." Table 12. Table 12 is empty in a return that reports supplies. fynxIQ catches it before the download.
What if a code is not on this page?
If it is on one of GSTN’s lists but not here, it is either about a table this page does not cover (an amendment in Table 9A, 9C or 10, an advance, Table 15), or one of the API’s own: an authentication failure, a session that expired, a system error. The last kind is not about what is in the file, and the file does not need to change for it.
If it is on none of GSTN’s lists, GSTN has not documented it, and fynxIQ does not guess at its meaning. Read the message beside it, and if that does not say what to change, raise it through the Grievance Redressal Portal linked from the GST portal’s home page, with the message and the time it appeared.
Which of these can fynxIQ catch before the upload?
Of the 54 codes above, fynxIQ catches 36 before the JSON is offered for download, and part of 8 more. The part it cannot see is what the portal alone holds: what you filed in earlier months, whether a buyer’s registration is active or belongs to an SEZ, your own registration date. For the other 10 it can see nothing at all, and says so beside each.
Every return fynxIQ prepares runs these checks, and a fault it catches is a blocker: the download stays closed until it is fixed in the file it came from. The free validator runs the same ones on a JSON from any other product.
Where this comes from
- GSTN, error codes of GSTR1 - Save GSTR1 data, v5.0 (developer.gst.gov.in): every RET191 code and message above. Kept verbatim in fynxIQ’s engine, gstn/.
- GSTN, error codes of All - Get Return Status, v1.1, and GSTR1 - Validate HSN Summary, v5.0: the RET1925 codes for Tables 12 and 13, and GSTN’s sample error report.
- GSTN, FAQs on Form GSTR-1 and on its Table 12 (tutorial.gst.gov.in): Table 12’s warnings and tolerance, Table 13 being compulsory, a recipient inactive on the invoice date.
- CGST Act, section 37(3), as amended by the Finance Act 2022, and Rule 46(b) of the CGST Rules: the 30 November limit for a previous year’s documents, and one number for one invoice in a financial year.
- fynxIQ’s engine: reference/portal-errors.ts: which check catches each code, held by tests to the checks the engine really runs.
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 25 September 2026. This is general information about how GST returns work, not advice about your particular return.