Fix utils.py
diff --git a/erpnext/regional/india/utils.py b/erpnext/regional/india/utils.py
index f887841..b8bbb6d 100644
--- a/erpnext/regional/india/utils.py
+++ b/erpnext/regional/india/utils.py
@@ -90,11 +90,11 @@
 
 	if doctype in ("Sales Invoice", "Delivery Note"):
 		master_doctype = "Sales Taxes and Charges Template"
-		if not (out.company_gstin or out.place_of_supply):
+		if not out.company_gstin:
 			return
-	else:
+	elif doctype == "Purchase Invoice":
 		master_doctype = "Purchase Taxes and Charges Template"
-		if not (out.supplier_gstin or out.place_of_supply):
+		if not out.supplier_gstin:
 			return
 
 	if doctype in ("Sales Invoice", "Delivery Note") and out.company_gstin[:2] != out.place_of_supply[:2]\
diff --git a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
index 992a22a..78f1eb8 100644
--- a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
@@ -6,7 +6,7 @@
 import unittest
 import frappe, erpnext
 import frappe.defaults
-from frappe.utils import cint, flt, cstr, today, random_string
+from frappe.utils import cint, flt, cstr, today, random_string, nowdate, add_days
 from erpnext.stock.doctype.purchase_receipt.purchase_receipt import make_purchase_invoice
 from erpnext import set_perpetual_inventory
 from erpnext.stock.doctype.serial_no.serial_no import SerialNoDuplicateError
@@ -95,7 +95,7 @@
 		make_stock_entry(item_code="_Test Item", target="_Test Warehouse 1 - _TC", qty=100, basic_rate=100)
 		make_stock_entry(item_code="_Test Item Home Desktop 100", target="_Test Warehouse 1 - _TC",
 			qty=100, basic_rate=100)
-
+		frappe.db.set_value("Item", "_Test FG Item", "end_of_life", add_days(nowdate(), 2))
 		pr = make_purchase_receipt(item_code="_Test FG Item", qty=10, rate=500, is_subcontracted="Yes")
 		self.assertEqual(len(pr.get("supplied_items")), 2)