100% tax compliance with smart e-Invoicing 100% tax compliance with smart e-Invoicing
Integration
across all ERPs
Integration across all ERPs
4 hrs resolution SLA
& 1hr response SLA
4 hrs resolution SLA & 1hr response SLA
MIS Dashboards with
backup & storage
MIS Dashboards with backup & storage

e-Invoice JSON: Format, Use, Validation Error and Software Changes Explained

By Annapoorna

|

Updated on: Feb 23rd, 2024

|

9 min read

social iconssocial iconssocial iconssocial icons

A GST taxpayer often encounters JSON file and JSON errors while filing GST returns. The use of JSON file is going to be more frequent under the e-invoicing system. Invoice JSON and e-invoice JSON are not the same.

Latest Update

10th May 2023
CBIC notified the sixth phase of e-invoicing. Henceforth, taxpayers with INR 5 Crore+ turnover in any financial year from 2017-18 must issue e-invoices w.e.f 1st August 2023.

6th May 2023
The GST Network has deferred the implementation of rule to fix time limit of 7 days for reporting the old e-invoices on the IRP portals by three months. Further, the department is yet to announce the new implementation date.

13th April 2023
The GSTN released an advisory on 12th and 13th April 2023 stating that taxpayers with an annual turnover of Rs.100 crore and more must report tax invoices and credit-debit notes to the IRP within 7 days from the date of issue of the invoice/CDN from 1st May 2023.

1st August 2022 
The e-Invoicing system for B2B transactions has now been extended to those with an annual aggregate turnover of more than Rs.10 crore up to Rs.20 crore starting from 1st October 2022, vide notification no. 17/2022. 

What is a JSON file?

It is a JAVA-based computer file. It is an open-standard file format that uses human-readable text to transmit data objects consisting of attribute-value pairs and array data types. It is in an easy to read and write format. The JSON format is often used for transmitting structured data between a server and web application. Thus, it serves as an alternative to XML.

e-Invoice JSON Objects

Below are the e-invoice JSON objects:

Sr. NoSectionContents
1HeaderContains Tax Scheme, Version, Invoice Reference No., etc.
2TransactionContains Transaction Category and Type
3DocumentContains Document Type, Number, Date, etc.
4SellerContains Seller GSTIN, Trade Name, Address, etc.
5BuyerContains Buyer GSTIN, Trade Name, Address, etc.
6DispatchContains Dispatch GSTIN, Trade Name, Address, etc.
7Ship ToContains Ship to GSTIN, Trade Name, Address, etc.
8ItemContains Details of Line Items
9DocumentContains all Total Values of the Document
10PaymentContains Payment Details and Conditions
11ReferenceContains References Related to Invoice

JSON validations and error log or report

Some of the major areas where JSON validations come up are:  

1Generation of IRNOnly the following documents are considered for IRN generation: 
-Invoice 
-Debit note 
-Credit note
2Category of transactionse-Invoice request should be made only for below category of transactions: 
-Business-to-Business(B2B) invoices 
-Business-to-Government (B2G) invoices 
-Business-to-Export invoices 
-Reverse Charges invoices 
-Supplies through e-commerce operator
3Reverse ChargeIt is allowed only for B2B invoice
4Request for the IRN/e-invoice-It can be made only by the supplier or e-commerce operator on behalf of the supplier 
-Duplicate IRN requests are not considered 
-IRN can be regenerated for cancelled e-invoice 
-IRN can be generated on a combination of supplier GSTIN, FY, document type and number.
5Number of ItemsMaximum number of items should not exceed 1,000, which later has been increased to 10,000

Where is the JSON file used under GST?

The JSON file is used under GST for submitting invoice information on various government portals for GST compliance. It includes filing of GST returns and generation of e-way bills. In its latest application,  it will be used for generating an e-invoice.

Purpose and uses of JSON file

JSON syntax is very easy to use and is one of the best tools for sharing data of any size because it stores data in arrays and makes data transfer easier and faster. Thus, a JSON file is used for uploading invoice data for GST return filing in GSTR-1 and generation of e-way bill. Under the e-invoicing system, the seller will have to upload the JSON invoice data onto the IRP. Thereafter, the IRP shall send back the signed JSON to the seller. 

How to extract invoices into JSON format and approaches followed?

A taxpayer has to raise a normal invoice on his accounting software by providing all the necessary details as per e-invoice schema such as billing name and address, GSTIN of the supplier, transaction value, tax amount, etc. After creating an invoice the taxpayer must report this with IRP by uploading in JSON file. Let us understand the invoice extraction options and routes available to upload invoice data with IRP. Ultimately by either of the options or routes, a JSON file will be uploaded on IRP.  

Invoice Extraction Options:

  • Download invoices in excel format (.csv or .xlsx) in case of using third-party applications (ASP)/GSP. These applications will convert data into JSON files for uploading on the IRP.
  • Get an API integration done to extract the JSON of invoices directly from the billing/ERP system.

Routes to approach IRP:

  • By using Third-Party Applications (ASP): 
    The advantage of using third-party applications is that bulk uploading of JSONs will be taken care of by the applications themselves on behalf of the users. The option is favourable for the category of taxpayers having an aggregate turnover between Rs.5 crore and Rs.500 crore. JSON validation will be done.
  • By using ASP that is also a GSP: 
    The advantage of opting this route would help in achieving scalability and also benefit from archiving. The government has released APIs to GSPs along with those taxpayers with aggregate turnover over Rs.500 crore. Taxpayers, using GSPs interface, will get an API User name and password. The GSPs will validate the data before submitting to IRP, as per the JSON Schema and business rules.

e-invoice JSON

Source: GSTN
  • Direct Interaction with IRP via API:   
    This option is currently made available to taxpayers with aggregate turnover over Rs.500 crore. Taxpayers, using direct APIs, will get Client ID, ClientSecret, an API user name and password. By using convertors/tools available online, a taxpayer can also convert an invoice into JSON by using converters available online but this method takes time as the taxpayer has to upload one invoice at a time.

Sample format of JSON

The government has released two types of e-invoice format. One is only with mandatory fields and the other one is with both mandatory and optional fields. Below is the template with only mandatory fields: There are two types of JSON that deal with e-invoicing. One is Request JSON and the second one is Response JSON. A taxpayer uploads his details into IRP through Request JSON and the IRP, in turn, provides validation errors, status and other information through Response JSON.  The JSON format of an Invoice is given below:

{
“TaxSch”:”GST”,
“Version”:”1.0”,
“Irn”:””,
"TranDtls": {
"Catg": "B2B",
"RegRev": "RG",
"Typ": "REG",
"EcmTrnSel": false,
"EcmTrn": "N",
"EcmGstin": null
},
"DocDtls": {
"Typ": "INV",
"No": "sadsd",
"Dt": "2019-11-25",
"OrgInvNo": null
},
"ExpDtls": {
"ExpCat": null,
"WthPay": null,
"ShipBNo": null,
"ShipBDt": "2019-11-25",
"Port": null,
"InvForCur": 0,
"ForCur": "BDT",
"CntCode": "BD"
},
"SellerDtls": {
"Gstin": "37BZNPM9430M1kl",
"TrdNm": "TAN TEST NIC",
"Bno": "TEST2",
"Bnm": "TEST1",
"Flno": "3RD FLOOR",
"Loc": "GANDHINAGAR",
"Dst": null,
"Pin": 518001,
"Stcd": 37,
"Ph": null,
"Em": null
},
"BuyerDtls": {
"Gstin": "37BZNPM9430M1kl",
"TrdNm": "TAN TEST NIC",
"Bno": "TEST2",
"Bnm": "TEST1",
"Flno": "3RD FLOOR",
"Loc": "GANDHINAGAR",
"Dst": null,
"Pin": 518001,
"Stcd": 37,
"Ph": null,
"Em": null
},
"DispDtls": {
"Gstin": "37BZNPM9430M1kl",
"TrdNm": "TAN TEST NIC",
"Bno": "TEST2",
"Bnm": "TEST1",
"Flno": "3RD FLOOR",
"Loc": "GANDHINAGAR",
"Dst": null,
"Pin": 518001,
"Stcd": 37,
"Ph": null,
"Em": null
},
"ShipDtls": {
"Gstin": "37BZNPM9430M1kl",
"TrdNm": "TAN TEST NIC",
"Bno": "TEST2",
"Bnm": "TEST1",
"Flno": "3RD FLOOR",
"Loc": "GANDHINAGAR",
"Dst": null,
"Pin": 518001,
"Stcd": 37,
"Ph": null,
"Em": null
},
"ValDtls": {
"AssVal": 100.00,
"CgstVal": 1.50,
"SgstVal": 1.50,
"IgstVal": 0.00,
"CesVal": 15.00,
"StCesVal": 36.00,
"CesNonAdVal": 0.00,
"Disc": 0, "OthChrg": 0,
"TotInvVal": 154.00,
},
"RefDtls": {
"InvRmk": null,
"InvStDt": "2019
-11
-25",
"InvEndDt": "2019
-11
-25",
"PrecInvNo": null,
"PrecInvDt": "2019
-11
-25",
"RecAdvRef": null,
"TendRef": null,
"ContrRef": null,
"ExtRef": null,
"ProjRef": null,
"PORef": null
},
"PayDtls": {
"Nam": null,
"Mode": null,
"FinInsBr": null,
"PayTerm": null,
"PayInstr": null,
"CrTrn": null,
"DirDr": null,
"CrDay": null,
"BalAmt": null,
"PayDueDt": null,
"AcctDet": null
},
"ItemsList":”Item” [{
"PrdNm": "dfasf",
"PrdDesc": "dfdfsdf",
"HsnCd": "10",
“BarCde”:””,
"Qty": 10,
“FreeQty”:0,
"Unit": "bag",
"UnitPrice": 10,
"TotAmt": 0,
"CgstRt": 1.500,
"SgstRt": 0,
"IgstRt": 0,
"CesRt": 15.000,
"CesNonAdVal": 0,
"StateCes": 36.000,
"TotItemVal": 100,
"Discount": 0,
"OthChrg": 0,
“AssAmt”:0
}]
}
About the Author

I preach the words, “Learning never exhausts the mind.” An aspiring CA and a passionate content writer having 4+ years of hands-on experience in deciphering jargon in Indian GST, Income Tax, off late also into the much larger Indian finance ecosystem, I love curating content in various forms to the interest of tax professionals, and enterprises, both big and small. While not writing, you can catch me singing Shāstriya Sangeetha and tuning my violin ;). Read more

CONTENTS

Clear offers taxation & financial solutions to individuals, businesses, organizations & chartered accountants in India. Clear serves 1.5+ Million happy customers, 20000+ CAs & tax experts & 10000+ businesses across India.

Efiling Income Tax Returns(ITR) is made easy with Clear platform. Just upload your form 16, claim your deductions and get your acknowledgment number online. You can efile income tax return on your income from salary, house property, capital gains, business & profession and income from other sources. Further you can also file TDS returns, generate Form-16, use our Tax Calculator software, claim HRA, check refund status and generate rent receipts for Income Tax Filing.

CAs, experts and businesses can get GST ready with Clear GST software & certification course. Our GST Software helps CAs, tax experts & business to manage returns & invoices in an easy manner. Our Goods & Services Tax course includes tutorial videos, guides and expert assistance to help you in mastering Goods and Services Tax. Clear can also help you in getting your business registered for Goods & Services Tax Law.

Save taxes with Clear by investing in tax saving mutual funds (ELSS) online. Our experts suggest the best funds and you can get high returns by investing directly or through SIP. Download Black by ClearTax App to file returns from your mobile phone.

Cleartax is a product by Defmacro Software Pvt. Ltd.

Company PolicyTerms of use

ISO

ISO 27001

Data Center

SSL

SSL Certified Site

128-bit encryption