diff --git a/addons/l10n_in/data/account_tax_template_data.xml b/addons/l10n_in/data/account_tax_template_data.xml
index 1dcd8688047..fd0cbe185b3 100644
--- a/addons/l10n_in/data/account_tax_template_data.xml
+++ b/addons/l10n_in/data/account_tax_template_data.xml
@@ -65,6 +65,13 @@
6
+
+ Zero Rated
+ Zero Rated
+
+
+ 7
+
@@ -269,6 +276,40 @@ if tax > result:result=tax
+
+ IGST 0%
+ IGST 0%
+ sale
+ percent
+ 0
+
+
+
+
+
+
IGST 1%
IGST 1%
@@ -1172,6 +1213,40 @@ if tax > result:result=tax
+
+ IGST 0%
+ IGST 0%
+ purchase
+ percent
+ 0
+
+
+
+
+
+
IGST 1%
IGST 1%
diff --git a/addons/l10n_in/report/account_invoice_report.py b/addons/l10n_in/report/account_invoice_report.py
index fc8de7c7cfa..5853d298343 100644
--- a/addons/l10n_in/report/account_invoice_report.py
+++ b/addons/l10n_in/report/account_invoice_report.py
@@ -246,7 +246,7 @@ class L10nInAccountInvoiceReport(models.Model):
JOIN account_move am ON am.id = aml.move_id
JOIN account_journal aj ON aj.id = am.journal_id
JOIN res_company c ON c.id = aj.company_id
- JOIN account_tax at ON at.id = aml.tax_line_id
+ LEFT JOIN account_tax at ON at.id = aml.tax_line_id
JOIN account_account_tag_account_move_line_rel aat_aml_rel ON aat_aml_rel.account_move_line_id = aml.id
JOIN account_account_tag aat ON aat.id = aat_aml_rel.account_account_tag_id
JOIN account_tax_report_line_tags_rel tag_rep_ln ON aat.id = tag_rep_ln.account_account_tag_id
@@ -264,7 +264,7 @@ class L10nInAccountInvoiceReport(models.Model):
def _where(self):
return """
WHERE am.state = 'posted'
- AND tag_rep_ln.account_tax_report_line_id in (SELECT res_id FROM ir_model_data WHERE module='l10n_in' AND name in ('tax_report_line_igst','tax_report_line_cgst','tax_report_line_sgst'))
+ AND tag_rep_ln.account_tax_report_line_id in (SELECT res_id FROM ir_model_data WHERE module='l10n_in' AND name in ('tax_report_line_igst','tax_report_line_cgst','tax_report_line_sgst','tax_report_line_zero_rated'))
"""
def _group_by(self):