Home > Services > e-Invoicing in 2024 > JSON in e-invoice

JSON in e-invoice

What is a JSON file?

A JSON file is a JAVA-based computer file. Below are the peculiarities of the JSON file:

  1. Format: Open standard file format, which is easy to read and write
  2. Transmission of data: Using human-readable text consisting of the following:
    1. Attribute-value pairs
    2. Array data types
  3. Transmission source: Server

Transmission destination: Web application

Objects of an E-invoice JSON

Every JSON in e-invoices has the below-listed set of objects:

  1. Header– signifies Tax Scheme, Version, and Invoice Reference No
  2. Transaction– signifies the Transaction Category and Type
  3. Document– represents the Document Type, Number, and Date
  4. Seller– indicates the Seller GSTIN, Trade Name, and Address
  5. Buyer– indicates the Buyer GSTIN, Trade Name, and Address
  6. Dispatch- conveys the Dispatch GSTIN, Trade Name, and Address
  7. Ship To– represents the Ship to GSTIN, Trade Name, and Address
  8. Item– means Details of the Line Items
  9. Document– signifies Total Values of the Document
  10. Payment– indicates the Payment Details and Conditions
  11. Reference– has all the References Related to the invoice

JSON Validations and Error Logs

Validations on a JSON file come up in the following cases:

IRN Generation

While generating the IRN, the JSON file should validate the following documents:

  1. Credit note
  2. Debit note
  3. Invoice

Transactions Category

The file should validate e-invoice requests only for the below category of transactions:

  1. Reverse Charges invoices
  2. Business-to-Government (B2G) invoices
  3. Business-to-Business(B2B) invoices
  4. Business-to-Export invoices
  5. Supplies through e-commerce operator

Reverse Charges

There should be validation on reverse charges, which should be allowed only for  B2B invoices.

IRN or E-invoice Requests

While making IRN or e-invoice requests, the JSON file should validate the following:

  1. Only the supplier or e-commerce operator on behalf of the supplier can make the requests
  2. Cannot consider duplicate IRN requests
  3. Regeneration of an IRN can happen in case of a cancellation of an e-invoice
  4. Generation of an IRN can happen by combining supplier GSTIN, FY, document type and number

Number of Items

The file should validate the maximum number of items. It should not exceed 1,000, which later rose to 10,000.

Usage of JSON Files Under GST

What is a JSON file in GST?

You can use a JSON file under GST to submit and generate important information on government portals for GST compliance. The submissions and generations include the following:

  1. GST returns filing
  2. E-way bill generation
  3. E-invoice generation

Significance of JSON Files

Easy Syntax

The syntax of a JSON file is very easy to use.

Ideal Data-sharing Tool

JSON files are ideal for sharing data of any size. Moreover, data sharing becomes better because JSON stores data in arrays and makes data transfer faster.

Uses of JSON Files

You can use a JSON file for the following:

  1. To upload invoice data for GST return filing in GSTR-1
  2. To generate an e-way bill

If a seller tries to upload invoices, he must upload the JSON invoice data onto the IRP under the e-invoicing system. Following that, he will receive a signed JSON from the IRP.

How to Extract Invoices Into JSON Format?

Usually, to upload an invoice to the IRP, a taxpayer has to go through the following steps:

  1. Provide all the necessary information and raise an invoice using accounting software
  2. Upload a JSON file to report the invoice with the IRP

Methods to Upload a JSON File to the IRP

Extraction of Invoices

You can extract the invoices in two ways:

  1. Download your invoices in excel format using third-party applications (ASP)/GSP so that they convert data into JSON files for the IRP upload
  2. Perform API integration to extract the JSON directly from your billing/ERP system

IRP Upload

You can carry out the process of uploading your JSON files to the IRP in many ways:

  1. Bulk Upload of JSONs using third-party applications – applicable if you have an aggregate turnover between Rs.20 crore and Rs.500 crore
  2. Validate data before the upload using GSP–  suitable if you have an aggregate turnover over Rs.500 crore
  3. Convert invoices into JSON by using online converters – applicable if you have an aggregate turnover over Rs.500 crore

Types of JSONs

There are two types of JSON files when it comes to e-invoicing.

  1. Request JSON– is used when a taxpayer has to upload details into IRP
  2. Response JSON– is used when the IRP provides validation errors, status and other information


What exactly is a JSON file, and why do I need one?

JSON (JavaScript Object Notation) is an open standard file format for data exchange that stores and transmits data as human-readable text.

How should a JSON file be stored?

You can use the JSON extension to store JSON files. JSON is an excellent alternative to XML since it requires less formatting.

Is a JSON file just a text file?

The Javascript Object Notation(JSON) is used to transfer or exchange information on the internet. JSON is just plain text written as a javascript object.

Is a JSON file nothing more than a text file?

No. It is a Java-based file used to transport or exchange data over the internet. JSON is nothing more than plain text written as a javascript object.

Are JSON files human-readable?

Yes. JSON files use human-readable text to store and transmit data objects made up of attribute-value pairs and arrays.

How does a JSON file look?

A JSON object can have zero, one, or more key-value pairs. Curly braces encircle the item. A comma separates each key-value pair. The order of the key-value combination does not matter.

Read more about GST e-Invoicing