Merge branch 'master' into develop
diff --git a/erpnext/__init__.py b/erpnext/__init__.py
index ea1a402..1073c7e 100644
--- a/erpnext/__init__.py
+++ b/erpnext/__init__.py
@@ -5,7 +5,7 @@
 from erpnext.hooks import regional_overrides
 from frappe.utils import getdate
 
-__version__ = '10.1.29'
+__version__ = '10.1.30'
 
 def get_default_company(user=None):
 	'''Get default company for user'''
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
index 4b497d0..a3ad049 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.py
@@ -346,8 +346,8 @@
 				self.terms = frappe.db.get_value("Terms and Conditions", self.tc_name, "terms")
 
 			# fetch charges
-			if self.taxes_and_charges:
-				self.set_other_charges()
+			if self.taxes_and_charges and not len(self.get("taxes")):
+				self.set_taxes()
 
 		return pos