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:
- Format: Open standard file format, which is easy to read and write
- Transmission of data: Using human-readable text consisting of the following:
- Attribute-value pairs
- Array data types
- 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:
- Header– signifies Tax Scheme, Version, and Invoice Reference No
- Transaction– signifies the Transaction Category and Type
- Document– represents the Document Type, Number, and Date
- Seller– indicates the Seller GSTIN, Trade Name, and Address
- Buyer– indicates the Buyer GSTIN, Trade Name, and Address
- Dispatch- conveys the Dispatch GSTIN, Trade Name, and Address
- Ship To– represents the Ship to GSTIN, Trade Name, and Address
- Item– means Details of the Line Items
- Document– signifies Total Values of the Document
- Payment– indicates the Payment Details and Conditions
- 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:
While generating the IRN, the JSON file should validate the following documents:
- Credit note
- Debit note
The file should validate e-invoice requests only for the below category of transactions:
- Reverse Charges invoices
- Business-to-Government (B2G) invoices
- Business-to-Business(B2B) invoices
- Business-to-Export invoices
- Supplies through e-commerce operator
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:
- Only the supplier or e-commerce operator on behalf of the supplier can make the requests
- Cannot consider duplicate IRN requests
- Regeneration of an IRN can happen in case of a cancellation of an e-invoice
- 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:
- GST returns filing
- E-way bill generation
- E-invoice generation
Significance of JSON Files
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:
- To upload invoice data for GST return filing in GSTR-1
- 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:
- Provide all the necessary information and raise an invoice using accounting software
- 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:
- Download your invoices in excel format using third-party applications (ASP)/GSP so that they convert data into JSON files for the IRP upload
- Perform API integration to extract the JSON directly from your billing/ERP system
You can carry out the process of uploading your JSON files to the IRP in many ways:
- Bulk Upload of JSONs using third-party applications – applicable if you have an aggregate turnover between Rs.20 crore and Rs.500 crore
- Validate data before the upload using GSP– suitable if you have an aggregate turnover over Rs.500 crore
- 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.
- Request JSON– is used when a taxpayer has to upload details into IRP
- 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?
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?
Is a JSON file nothing more than a text file?
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.