diff --git a/erpnext/utilities/doctype/address/address.py b/erpnext/utilities/doctype/address/address.py
index da529fb..7f47731 100644
--- a/erpnext/utilities/doctype/address/address.py
+++ b/erpnext/utilities/doctype/address/address.py
@@ -8,6 +8,7 @@
 from frappe.utils import cstr
 
 from frappe.model.document import Document
+from jinja2 import TemplateSyntaxError
 
 class Address(Document):
 	def __setup__(self):
@@ -85,16 +86,22 @@
 	if not isinstance(address_dict, dict):
 		address_dict = frappe.db.get_value("Address", address_dict, "*", as_dict=True) or {}
 
-	template = frappe.db.get_value("Address Template", \
-		{"country": address_dict.get("country")}, "template")
-	if not template:
-		template = frappe.db.get_value("Address Template", \
-			{"is_default": 1}, "template")
+	data = frappe.db.get_value("Address Template", \
+		{"country": address_dict.get("country")}, ["name", "template"])
+	if not data:
+		data = frappe.db.get_value("Address Template", \
+			{"is_default": 1}, ["name", "template"])
 
-	if not template:
+	if not data:
 		frappe.throw(_("No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template."))
 
-	return frappe.render_template(template, address_dict)
+	name, template = data
+
+	try:
+		return frappe.render_template(template, address_dict)
+	except TemplateSyntaxError:
+		frappe.throw(_("There is an error in your Address Template {0}").format(name))
+
 
 def get_territory_from_address(address):
 	"""Tries to match city, state and country of address to existing territory"""
diff --git a/erpnext/utilities/doctype/address_template/address_template.py b/erpnext/utilities/doctype/address_template/address_template.py
index aa6ef25..e759be4 100644
--- a/erpnext/utilities/doctype/address_template/address_template.py
+++ b/erpnext/utilities/doctype/address_template/address_template.py
@@ -4,6 +4,7 @@
 from __future__ import unicode_literals
 import frappe
 from frappe.model.document import Document
+from frappe.utils.jinja import validate_template
 from frappe import _
 
 class AddressTemplate(Document):
@@ -14,6 +15,8 @@
 				self.is_default = 1
 				frappe.msgprint(_("Setting this Address Template as default as there is no other default"))
 
+		validate_template(self.template)
+
 	def on_update(self):
 		if self.is_default and self.defaults:
 			for d in self.defaults:
