fix: JSON for nil/exempt and non gst
diff --git a/erpnext/regional/report/gstr_1/gstr_1.py b/erpnext/regional/report/gstr_1/gstr_1.py
index 5944683..e50ff18 100644
--- a/erpnext/regional/report/gstr_1/gstr_1.py
+++ b/erpnext/regional/report/gstr_1/gstr_1.py
@@ -40,7 +40,7 @@
 			port_code,
 			shipping_bill_number,
 			shipping_bill_date,
-			reason_for_issuing_document
+			reason_for_issuing_document,
 			company_gstin
 		"""
 
@@ -98,32 +98,32 @@
 		nil_exempt_output = [
 			{
 				"description": "Inter-State supplies to registered persons",
-				"nil_rate": 0.0,
+				"nil_rated": 0.0,
 				"exempted": 0.0,
 				"non_gst": 0.0
 			},
 			{
 				"description": "Intra-State supplies to registered persons",
-				"nil_rate": 0.0,
+				"nil_rated": 0.0,
 				"exempted": 0.0,
 				"non_gst": 0.0
 			},
 			{
 				"description": "Inter-State supplies to unregistered persons",
-				"nil_rate": 0.0,
+				"nil_rated": 0.0,
 				"exempted": 0.0,
 				"non_gst": 0.0
 			},
 			{
-				"description": "Intra-State supplies to registered persons",
-				"nil_rate": 0.0,
+				"description": "Intra-State supplies to unregistered persons",
+				"nil_rated": 0.0,
 				"exempted": 0.0,
 				"non_gst": 0.0
 			}
 		]
 
 		for invoice, details in self.nil_exempt_non_gst.items():
-			invoice_detail = self.invoice.get(invoice)
+			invoice_detail = self.invoices.get(invoice)
 			if invoice_detail.get('gst_category') in ("Registered Regular", "Deemed Export", "SEZ"):
 				if is_inter_state(invoice_detail):
 					nil_exempt_output[0]["nil_rated"] += details[0]
@@ -387,21 +387,24 @@
 					self.items_based_on_tax_rate.setdefault(invoice, {}).setdefault(0, items.keys())
 
 	def get_columns(self):
-		self.tax_columns = [
-			{
-				"fieldname": "rate",
-				"label": "Rate",
-				"fieldtype": "Int",
-				"width": 60
-			},
-			{
-				"fieldname": "taxable_value",
-				"label": "Taxable Value",
-				"fieldtype": "Currency",
-				"width": 100
-			}
-		]
 		self.other_columns = []
+		self.tax_columns = []
+
+		if self.filters.get("type_of_business") != "NIL Rated":
+			self.tax_columns = [
+				{
+					"fieldname": "rate",
+					"label": "Rate",
+					"fieldtype": "Int",
+					"width": 60
+				},
+				{
+					"fieldname": "taxable_value",
+					"label": "Taxable Value",
+					"fieldtype": "Currency",
+					"width": 100
+				}
+			]
 
 		if self.filters.get("type_of_business") ==  "B2B":
 			self.invoice_columns = [
@@ -773,10 +776,10 @@
 		elif self.filters.get("type_of_business") == "NIL Rated":
 			self.invoice_columns = [
 				{
-					"fieldname": "descripton",
+					"fieldname": "description",
 					"label": "Description",
 					"fieldtype": "Data",
-					"width": 120
+					"width": 420
 				},
 				{
 					"fieldname": "nil_rated",
@@ -860,6 +863,11 @@
 		out = get_advances_json(res, gstin)
 		gst_json["at"] = out
 
+	elif filters["type_of_business"] == "NIL Rated":
+		res = report_data[:-1]
+		out = get_exempted_json(res)
+		gst_json["nil"] = out
+
 	return {
 		'report_name': report_name,
 		'report_type': filters['type_of_business'],
@@ -1072,6 +1080,36 @@
 
 	return out
 
+def get_exempted_json(data):
+	out = {
+		"inv": [
+			{
+				"sply_ty": "INTRB2B"
+			},
+			{
+				"sply_ty": "INTRAB2B"
+			},
+			{
+				"sply_ty": "INTRB2C"
+			},
+			{
+				"sply_ty": "INTRAB2C"
+			}
+		]
+	}
+
+	for i, v in enumerate(data):
+		if data[i].get('nil_rated'):
+			out['inv'][i]['nil_amt'] = data[i]['nil_rated']
+
+		if data[i].get('exempted'):
+			out['inv'][i]['expt_amt'] = data[i]['exempted']
+
+		if data[i].get('non_gst'):
+			out['inv'][i]['ngsup_amt'] = data[i]['non_gst']
+
+	return out
+
 def get_invoice_type_for_cdnr(row):
 	if row.get('gst_category') == 'SEZ':
 		if row.get('export_type') == 'WPAY':