diff --git a/erpnext/regional/report/uae_vat_201/test_uae_vat_201.py b/erpnext/regional/report/uae_vat_201/test_uae_vat_201.py
index 05bb701..ceaa3b3 100644
--- a/erpnext/regional/report/uae_vat_201/test_uae_vat_201.py
+++ b/erpnext/regional/report/uae_vat_201/test_uae_vat_201.py
@@ -34,13 +34,12 @@
 		make_company("_Test Company UAE VAT", "_TCUV")
 		set_vat_accounts()
 
-		make_customers()
+		make_customer()
 
 		make_supplier()
 
 		create_warehouse("_Test UAE VAT Supplier Warehouse", company="_Test Company UAE VAT")
 
-
 		make_item("_Test UAE VAT Item", properties = {"is_zero_rated": 0, "is_exempt": 0})
 		make_item("_Test UAE VAT Zero Rated Item", properties = {"is_zero_rated": 1, "is_exempt": 0})
 		make_item("_Test UAE VAT Exempt Item", properties = {"is_zero_rated": 0, "is_exempt": 1})
@@ -122,64 +121,16 @@
 			"doctype": "UAE VAT Settings",
 		}).insert()
 
-def make_customers():
-	if not frappe.db.exists("Customer", "_Test Dubai Customer"):
+def make_customer():
+	if not frappe.db.exists("Customer", "_Test UAE Customer"):
 		customer = frappe.get_doc({
 			"doctype": "Customer",
-			"customer_name": "_Test Dubai Customer",
+			"customer_name": "_Test UAE Customer",
 			"customer_type": "Company",
 		})
 		customer.insert()
 	else:
-		customer = frappe.get_doc("Customer", "_Test Dubai Customer")
-
-	if not frappe.db.exists("Customer", "_Test Sharjah Customer"):
-		customer = frappe.get_doc({
-			"doctype": "Customer",
-			"customer_name": "_Test Sharjah Customer",
-			"customer_type": "Company",
-		})
-		customer.insert()
-	else:
-		customer = frappe.get_doc("Customer", "_Test Sharjah Customer")
-
-	if not frappe.db.exists('Address', '_Test Dubai Address'):
-		address = frappe.get_doc({
-			"address_line1": "_Test Address Line 1",
-			"address_title": "_Test Dubai Address",
-			"address_type": "Billing",
-			"city": "_Test City",
-			"state": "Test State",
-			"country": "United Arab Emirates",
-			"doctype": "Address",
-			"emirate": "Dubai"
-		}).insert()
-
-		address.append("links", {
-			"link_doctype": "Customer",
-			"link_name": "_Test Dubai Customer"
-		})
-
-		address.save()
-
-	if not frappe.db.exists('Address', '_Test Sharjah Address'):
-		address = frappe.get_doc({
-			"address_line1": "_Test Address Line 1",
-			"address_title": "_Test Sharjah Address",
-			"address_type": "Billing",
-			"city": "_Test City",
-			"state": "Test State",
-			"country": "United Arab Emirates",
-			"doctype": "Address",
-			"emirate": "Sharjah"
-		}).insert()
-
-		address.append("links", {
-			"link_doctype": "Customer",
-			"link_name": "_Test Sharjah Customer"
-		})
-
-		address.save()
+		customer = frappe.get_doc("Customer", "_Test UAE Customer")
 
 def make_supplier():
 
@@ -230,7 +181,7 @@
 
 def make_sales_invoices():
 	si = create_sales_invoice(company="_Test Company UAE VAT",
-			customer = '_Test Dubai Customer',
+			customer = '_Test UAE Customer',
 			currency = 'AED',
 			warehouse = 'Finished Goods - _TCUV',
 			debit_to = 'Debtors - _TCUV',
@@ -248,10 +199,11 @@
 			"description": "VAT 5% @ 5.0",
 			"rate": 5.0
 		})
+	si.emirate = 'Dubai'
 	si.submit()
 
 	si = create_sales_invoice(company="_Test Company UAE VAT",
-			customer = '_Test Sharjah Customer',
+			customer = '_Test UAE Customer',
 			currency = 'AED',
 			warehouse = 'Finished Goods - _TCUV',
 			debit_to = 'Debtors - _TCUV',
@@ -262,6 +214,7 @@
 			item = "_Test UAE VAT Item",
 			do_not_save=1
 		)
+	si.emirate = 'Sharjah'
 	si.append("taxes", {
 			"charge_type": "On Net Total",
 			"account_head": "VAT 5% - _TCUV",
@@ -272,7 +225,7 @@
 	si.submit()
 
 	si = create_sales_invoice(company="_Test Company UAE VAT",
-			customer = '_Test Dubai Customer',
+			customer = '_Test UAE Customer',
 			currency = 'AED',
 			warehouse = 'Finished Goods - _TCUV',
 			debit_to = 'Debtors - _TCUV',
@@ -286,6 +239,8 @@
 
 	si.tourist_tax_return = 2
 
+	si.emirate = 'Dubai'
+
 	si.append("taxes", {
 			"charge_type": "On Net Total",
 			"account_head": "VAT 5% - _TCUV",
@@ -296,7 +251,7 @@
 	si.submit()
 
 	si = create_sales_invoice(company="_Test Company UAE VAT",
-			customer = '_Test Sharjah Customer',
+			customer = '_Test UAE Customer',
 			currency = 'AED',
 			warehouse = 'Finished Goods - _TCUV',
 			debit_to = 'Debtors - _TCUV',
@@ -305,10 +260,13 @@
 			cost_center = 'Main - _TCUV',
 			sales_taxes_and_charges_template = "UAE VAT 5% - _TCUV",
 			item = "_Test UAE VAT Zero Rated Item",
+			do_not_save=1
 		)
+	si.emirate = 'Sharjah'
+	si.submit()
 
 	si = create_sales_invoice(company="_Test Company UAE VAT",
-			customer = '_Test Sharjah Customer',
+			customer = '_Test UAE Customer',
 			currency = 'AED',
 			warehouse = 'Finished Goods - _TCUV',
 			debit_to = 'Debtors - _TCUV',
@@ -317,7 +275,10 @@
 			cost_center = 'Main - _TCUV',
 			sales_taxes_and_charges_template = "UAE VAT 5% - _TCUV",
 			item = "_Test UAE VAT Exempt Item",
+			do_not_save=1
 		)
+	si.emirate = 'Sharjah'
+	si.submit()
 
 def create_purchase_invoices():
 
diff --git a/erpnext/regional/united_arab_emirates/setup.py b/erpnext/regional/united_arab_emirates/setup.py
index fac6e27..7f890d6 100644
--- a/erpnext/regional/united_arab_emirates/setup.py
+++ b/erpnext/regional/united_arab_emirates/setup.py
@@ -56,10 +56,10 @@
 			dict(fieldname='customer_name_in_arabic', label='Customer Name in Arabic',
 				fieldtype='Read Only', insert_after='customer_name',
 				fetch_from='customer.customer_name_in_arabic', print_hide=1),
-			dict(fieldname='emirate', label='Emirate', insert_after='customer_address',
-				fieldtype='Read Only', fetch_from='customer_address.emirate'),
+			dict(fieldname='emirate', label='Emirate', insert_after='permit_no', fieldtype='Select',
+				options='\nAbu Dhabi\nAjman\nDubai\nFujairah\nRas Al Khaimah\nSharjah\nUmm Al Quwain'),
 			dict(fieldname='tourist_tax_return', label='Tax Refund provided to Tourists (AED)',
-				insert_after='permit_no', fieldtype='Currency', print_hide=1, default='0'),
+				insert_after='emirate', fieldtype='Currency', print_hide=1, default='0'),
 		]
 
 	invoice_item_fields = [
@@ -101,10 +101,6 @@
 			dict(fieldname='supplier_name_in_arabic', label='Supplier Name in Arabic',
 				fieldtype='Data', insert_after='supplier_name'),
 		],
-		'Address': [
-			dict(fieldname='emirate', label='Emirate', fieldtype='Select', insert_after='state',
-			options='Abu Dhabi\nAjman\nDubai\nFujairah\nRas Al Khaimah\nSharjah\nUmm Al Quwain')
-		],
 		'Purchase Invoice': purchase_invoice_fields + invoice_fields,
 		'Purchase Order': purchase_invoice_fields + invoice_fields,
 		'Purchase Receipt': purchase_invoice_fields + invoice_fields,
