diff --git a/erpnext/accounts/dashboard_chart_source/account_balance_timeline/account_balance_timeline.py b/erpnext/accounts/dashboard_chart_source/account_balance_timeline/account_balance_timeline.py
index fefec0e..f091a4f 100644
--- a/erpnext/accounts/dashboard_chart_source/account_balance_timeline/account_balance_timeline.py
+++ b/erpnext/accounts/dashboard_chart_source/account_balance_timeline/account_balance_timeline.py
@@ -76,7 +76,7 @@
 
 def build_result(account, dates, gl_entries):
 	result = [[getdate(date), 0.0] for date in dates]
-	root_type = frappe.db.get_value("Account", account, "root_type")
+	root_type = frappe.get_cached_value("Account", account, "root_type")
 
 	# start with the first date
 	date_index = 0
diff --git a/erpnext/accounts/doctype/account/account.py b/erpnext/accounts/doctype/account/account.py
index 9dff116..ec0ba08 100644
--- a/erpnext/accounts/doctype/account/account.py
+++ b/erpnext/accounts/doctype/account/account.py
@@ -58,7 +58,7 @@
 	def validate_parent(self):
 		"""Fetch Parent Details and validate parent account"""
 		if self.parent_account:
-			par = frappe.db.get_value(
+			par = frappe.get_cached_value(
 				"Account", self.parent_account, ["name", "is_group", "company"], as_dict=1
 			)
 			if not par:
@@ -82,7 +82,7 @@
 
 	def set_root_and_report_type(self):
 		if self.parent_account:
-			par = frappe.db.get_value(
+			par = frappe.get_cached_value(
 				"Account", self.parent_account, ["report_type", "root_type"], as_dict=1
 			)
 
@@ -92,7 +92,7 @@
 				self.root_type = par.root_type
 
 		if self.is_group:
-			db_value = frappe.db.get_value("Account", self.name, ["report_type", "root_type"], as_dict=1)
+			db_value = self.get_doc_before_save()
 			if db_value:
 				if self.report_type != db_value.report_type:
 					frappe.db.sql(
@@ -111,13 +111,13 @@
 			)
 
 	def validate_root_details(self):
-		# does not exists parent
-		if frappe.db.exists("Account", self.name):
-			if not frappe.db.get_value("Account", self.name, "parent_account"):
-				throw(_("Root cannot be edited."), RootNotEditable)
+		doc_before_save = self.get_doc_before_save()
+
+		if doc_before_save and not doc_before_save.parent_account:
+			throw(_("Root cannot be edited."), RootNotEditable)
 
 		if not self.parent_account and not self.is_group:
-			frappe.throw(_("The root account {0} must be a group").format(frappe.bold(self.name)))
+			throw(_("The root account {0} must be a group").format(frappe.bold(self.name)))
 
 	def validate_root_company_and_sync_account_to_children(self):
 		# ignore validation while creating new compnay or while syncing to child companies
@@ -127,7 +127,9 @@
 			return
 		ancestors = get_root_company(self.company)
 		if ancestors:
-			if frappe.get_value("Company", self.company, "allow_account_creation_against_child_company"):
+			if frappe.get_cached_value(
+				"Company", self.company, "allow_account_creation_against_child_company"
+			):
 				return
 			if not frappe.db.get_value(
 				"Account", {"account_name": self.account_name, "company": ancestors[0]}, "name"
@@ -138,7 +140,7 @@
 			if not descendants:
 				return
 			parent_acc_name_map = {}
-			parent_acc_name, parent_acc_number = frappe.db.get_value(
+			parent_acc_name, parent_acc_number = frappe.get_cached_value(
 				"Account", self.parent_account, ["account_name", "account_number"]
 			)
 			filters = {
@@ -159,27 +161,28 @@
 			self.create_account_for_child_company(parent_acc_name_map, descendants, parent_acc_name)
 
 	def validate_group_or_ledger(self):
-		if self.get("__islocal"):
+		doc_before_save = self.get_doc_before_save()
+		if not doc_before_save or cint(doc_before_save.is_group) == cint(self.is_group):
 			return
 
-		existing_is_group = frappe.db.get_value("Account", self.name, "is_group")
-		if cint(self.is_group) != cint(existing_is_group):
-			if self.check_gle_exists():
-				throw(_("Account with existing transaction cannot be converted to ledger"))
-			elif self.is_group:
-				if self.account_type and not self.flags.exclude_account_type_check:
-					throw(_("Cannot covert to Group because Account Type is selected."))
-			elif self.check_if_child_exists():
-				throw(_("Account with child nodes cannot be set as ledger"))
+		if self.check_gle_exists():
+			throw(_("Account with existing transaction cannot be converted to ledger"))
+		elif self.is_group:
+			if self.account_type and not self.flags.exclude_account_type_check:
+				throw(_("Cannot covert to Group because Account Type is selected."))
+		elif self.check_if_child_exists():
+			throw(_("Account with child nodes cannot be set as ledger"))
 
 	def validate_frozen_accounts_modifier(self):
-		old_value = frappe.db.get_value("Account", self.name, "freeze_account")
-		if old_value and old_value != self.freeze_account:
-			frozen_accounts_modifier = frappe.db.get_value(
-				"Accounts Settings", None, "frozen_accounts_modifier"
-			)
-			if not frozen_accounts_modifier or frozen_accounts_modifier not in frappe.get_roles():
-				throw(_("You are not authorized to set Frozen value"))
+		doc_before_save = self.get_doc_before_save()
+		if not doc_before_save or doc_before_save.freeze_account == self.freeze_account:
+			return
+
+		frozen_accounts_modifier = frappe.get_cached_value(
+			"Accounts Settings", "Accounts Settings", "frozen_accounts_modifier"
+		)
+		if not frozen_accounts_modifier or frozen_accounts_modifier not in frappe.get_roles():
+			throw(_("You are not authorized to set Frozen value"))
 
 	def validate_balance_must_be_debit_or_credit(self):
 		from erpnext.accounts.utils import get_balance_on
@@ -223,9 +226,9 @@
 				)
 
 			# validate if parent of child company account to be added is a group
-			if frappe.db.get_value("Account", self.parent_account, "is_group") and not frappe.db.get_value(
-				"Account", parent_acc_name_map[company], "is_group"
-			):
+			if frappe.get_cached_value(
+				"Account", self.parent_account, "is_group"
+			) and not frappe.get_cached_value("Account", parent_acc_name_map[company], "is_group"):
 				msg = _(
 					"While creating account for Child Company {0}, parent account {1} found as a ledger account."
 				).format(company_bold, parent_acc_name_bold)
@@ -377,17 +380,15 @@
 
 @frappe.whitelist()
 def update_account_number(name, account_name, account_number=None, from_descendant=False):
-	account = frappe.db.get_value("Account", name, "company", as_dict=True)
+	account = frappe.get_cached_doc("Account", name)
 	if not account:
 		return
 
-	old_acc_name, old_acc_number = frappe.db.get_value(
-		"Account", name, ["account_name", "account_number"]
-	)
+	old_acc_name, old_acc_number = account.account_name, account.account_number
 
 	# check if account exists in parent company
 	ancestors = get_ancestors_of("Company", account.company)
-	allow_independent_account_creation = frappe.get_value(
+	allow_independent_account_creation = frappe.get_cached_value(
 		"Company", account.company, "allow_account_creation_against_child_company"
 	)
 
@@ -435,22 +436,24 @@
 @frappe.whitelist()
 def merge_account(old, new, is_group, root_type, company):
 	# Validate properties before merging
-	if not frappe.db.exists("Account", new):
+	new_account = frappe.get_cached_doc("Account", new)
+
+	if not new_account:
 		throw(_("Account {0} does not exist").format(new))
 
-	val = list(frappe.db.get_value("Account", new, ["is_group", "root_type", "company"]))
-
-	if val != [cint(is_group), root_type, company]:
+	if (new_account.is_group, new_account.root_type, new_account.company) != (
+		cint(is_group),
+		root_type,
+		company,
+	):
 		throw(
 			_(
 				"""Merging is only possible if following properties are same in both records. Is Group, Root Type, Company"""
 			)
 		)
 
-	if is_group and frappe.db.get_value("Account", new, "parent_account") == old:
-		frappe.db.set_value(
-			"Account", new, "parent_account", frappe.db.get_value("Account", old, "parent_account")
-		)
+	if is_group and new_account.parent_account == old:
+		new_account.db_set("parent_account", frappe.get_cached_value("Account", old, "parent_account"))
 
 	frappe.rename_doc("Account", old, new, merge=1, force=1)
 
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py b/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py
index 947b485..75f8f06 100644
--- a/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py
+++ b/erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py
@@ -53,7 +53,7 @@
 							"account_number": account_number,
 							"account_type": child.get("account_type"),
 							"account_currency": child.get("account_currency")
-							or frappe.db.get_value("Company", company, "default_currency"),
+							or frappe.get_cached_value("Company", company, "default_currency"),
 							"tax_rate": child.get("tax_rate"),
 						}
 					)
@@ -148,7 +148,7 @@
 			) or frappe.local.flags.allow_unverified_charts:
 				charts.append(content["name"])
 
-	country_code = frappe.db.get_value("Country", country, "code")
+	country_code = frappe.get_cached_value("Country", country, "code")
 	if country_code:
 		folders = ("verified",)
 		if frappe.local.flags.allow_unverified_charts:
diff --git a/erpnext/accounts/doctype/accounts_settings/accounts_settings.json b/erpnext/accounts/doctype/accounts_settings/accounts_settings.json
index 3e0b82c..1e2e2ac 100644
--- a/erpnext/accounts/doctype/accounts_settings/accounts_settings.json
+++ b/erpnext/accounts/doctype/accounts_settings/accounts_settings.json
@@ -91,7 +91,7 @@
   },
   {
    "default": "0",
-   "description": "Enabling ensure each Sales Invoice has a unique value in Supplier Invoice No. field",
+   "description": "Enabling ensure each Purchase Invoice has a unique value in Supplier Invoice No. field",
    "fieldname": "check_supplier_invoice_uniqueness",
    "fieldtype": "Check",
    "label": "Check Supplier Invoice Number Uniqueness"
@@ -354,7 +354,7 @@
  "index_web_pages_for_search": 1,
  "issingle": 1,
  "links": [],
- "modified": "2022-07-11 13:37:50.605141",
+ "modified": "2022-11-27 21:49:52.538655",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Accounts Settings",
diff --git a/erpnext/accounts/doctype/bank_account/bank_account.py b/erpnext/accounts/doctype/bank_account/bank_account.py
index addcf62..b91f0f9 100644
--- a/erpnext/accounts/doctype/bank_account/bank_account.py
+++ b/erpnext/accounts/doctype/bank_account/bank_account.py
@@ -77,6 +77,6 @@
 
 @frappe.whitelist()
 def get_bank_account_details(bank_account):
-	return frappe.db.get_value(
+	return frappe.get_cached_value(
 		"Bank Account", bank_account, ["account", "bank", "bank_account_no"], as_dict=1
 	)
diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
index cc3727c..d353270 100644
--- a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
+++ b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
@@ -57,7 +57,7 @@
 @frappe.whitelist()
 def get_account_balance(bank_account, till_date):
 	# returns account balance till the specified date
-	account = frappe.db.get_value("Bank Account", bank_account, "account")
+	account = frappe.get_cached_value("Bank Account", bank_account, "account")
 	filters = frappe._dict(
 		{"account": account, "report_date": till_date, "include_pos_transactions": 1}
 	)
@@ -130,8 +130,10 @@
 		fieldname=["name", "deposit", "withdrawal", "bank_account"],
 		as_dict=True,
 	)[0]
-	company_account = frappe.get_value("Bank Account", bank_transaction.bank_account, "account")
-	account_type = frappe.db.get_value("Account", second_account, "account_type")
+	company_account = frappe.get_cached_value(
+		"Bank Account", bank_transaction.bank_account, "account"
+	)
+	account_type = frappe.get_cached_value("Account", second_account, "account_type")
 	if account_type in ["Receivable", "Payable"]:
 		if not (party_type and party):
 			frappe.throw(
@@ -164,7 +166,7 @@
 		}
 	)
 
-	company = frappe.get_value("Account", company_account, "company")
+	company = frappe.get_cached_value("Account", company_account, "company")
 
 	journal_entry_dict = {
 		"voucher_type": entry_type,
@@ -219,8 +221,10 @@
 	paid_amount = bank_transaction.unallocated_amount
 	payment_type = "Receive" if bank_transaction.deposit > 0 else "Pay"
 
-	company_account = frappe.get_value("Bank Account", bank_transaction.bank_account, "account")
-	company = frappe.get_value("Account", company_account, "company")
+	company_account = frappe.get_cached_value(
+		"Bank Account", bank_transaction.bank_account, "account"
+	)
+	company = frappe.get_cached_value("Account", company_account, "company")
 	payment_entry_dict = {
 		"company": company,
 		"payment_type": payment_type,
@@ -266,7 +270,7 @@
 	# updated clear date of all the vouchers based on the bank transaction
 	vouchers = json.loads(vouchers)
 	transaction = frappe.get_doc("Bank Transaction", bank_transaction_name)
-	company_account = frappe.db.get_value("Bank Account", transaction.bank_account, "account")
+	company_account = frappe.get_cached_value("Bank Account", transaction.bank_account, "account")
 
 	if transaction.unallocated_amount == 0:
 		frappe.throw(_("This bank transaction is already fully reconciled"))
@@ -290,7 +294,7 @@
 				"The sum total of amounts of all selected vouchers should be less than the unallocated amount of the bank transaction"
 			)
 		)
-	account = frappe.db.get_value("Bank Account", transaction.bank_account, "account")
+	account = frappe.get_cached_value("Bank Account", transaction.bank_account, "account")
 
 	for voucher in vouchers:
 		gl_entry = frappe.db.get_value(
diff --git a/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py b/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py
index 372c53d..efb9d8c 100644
--- a/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py
+++ b/erpnext/accounts/doctype/bank_transaction/bank_transaction_upload.py
@@ -74,7 +74,7 @@
 
 
 def get_bank_mapping(bank_account):
-	bank_name = frappe.db.get_value("Bank Account", bank_account, "bank")
+	bank_name = frappe.get_cached_value("Bank Account", bank_account, "bank")
 	bank = frappe.get_doc("Bank", bank_name)
 
 	mapping = {row.file_field: row.bank_transaction_field for row in bank.bank_transaction_mapping}
diff --git a/erpnext/accounts/doctype/budget/budget.py b/erpnext/accounts/doctype/budget/budget.py
index 637ac7a..53838fb 100644
--- a/erpnext/accounts/doctype/budget/budget.py
+++ b/erpnext/accounts/doctype/budget/budget.py
@@ -59,7 +59,7 @@
 		account_list = []
 		for d in self.get("accounts"):
 			if d.account:
-				account_details = frappe.db.get_value(
+				account_details = frappe.get_cached_value(
 					"Account", d.account, ["is_group", "company", "report_type"], as_dict=1
 				)
 
@@ -306,7 +306,7 @@
 
 	if args.get("fiscal_year"):
 		date_field = "schedule_date" if for_doc == "Material Request" else "transaction_date"
-		start_date, end_date = frappe.db.get_value(
+		start_date, end_date = frappe.get_cached_value(
 			"Fiscal Year", args.get("fiscal_year"), ["year_start_date", "year_end_date"]
 		)
 
@@ -379,7 +379,7 @@
 		):
 			distribution.setdefault(d.month, d.percentage_allocation)
 
-	dt = frappe.db.get_value("Fiscal Year", fiscal_year, "year_start_date")
+	dt = frappe.get_cached_value("Fiscal Year", fiscal_year, "year_start_date")
 	accumulated_percentage = 0.0
 
 	while dt <= getdate(posting_date):
diff --git a/erpnext/accounts/doctype/chart_of_accounts_importer/chart_of_accounts_importer.py b/erpnext/accounts/doctype/chart_of_accounts_importer/chart_of_accounts_importer.py
index 83c206a..325a356 100644
--- a/erpnext/accounts/doctype/chart_of_accounts_importer/chart_of_accounts_importer.py
+++ b/erpnext/accounts/doctype/chart_of_accounts_importer/chart_of_accounts_importer.py
@@ -45,8 +45,8 @@
 
 @frappe.whitelist()
 def validate_company(company):
-	parent_company, allow_account_creation_against_child_company = frappe.db.get_value(
-		"Company", {"name": company}, ["parent_company", "allow_account_creation_against_child_company"]
+	parent_company, allow_account_creation_against_child_company = frappe.get_cached_value(
+		"Company", company, ["parent_company", "allow_account_creation_against_child_company"]
 	)
 
 	if parent_company and (not allow_account_creation_against_child_company):
diff --git a/erpnext/accounts/doctype/dunning/dunning.py b/erpnext/accounts/doctype/dunning/dunning.py
index 9874d66..331adb4 100644
--- a/erpnext/accounts/doctype/dunning/dunning.py
+++ b/erpnext/accounts/doctype/dunning/dunning.py
@@ -19,7 +19,7 @@
 		self.validate_overdue_days()
 		self.validate_amount()
 		if not self.income_account:
-			self.income_account = frappe.db.get_value("Company", self.company, "default_income_account")
+			self.income_account = frappe.get_cached_value("Company", self.company, "default_income_account")
 
 	def validate_overdue_days(self):
 		self.overdue_days = (getdate(self.posting_date) - getdate(self.due_date)).days or 0
diff --git a/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.json b/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.json
index a7315a6..e00b17e 100644
--- a/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.json
+++ b/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.json
@@ -1,389 +1,138 @@
 {
- "allow_copy": 0, 
- "allow_guest_to_view": 0, 
- "allow_import": 1, 
- "allow_rename": 0, 
- "autoname": "ACC-ERR-.YYYY.-.#####", 
- "beta": 0, 
- "creation": "2018-04-13 18:25:55.943587", 
- "custom": 0, 
- "docstatus": 0, 
- "doctype": "DocType", 
- "document_type": "", 
- "editable_grid": 1, 
- "engine": "InnoDB", 
+ "actions": [],
+ "allow_import": 1,
+ "autoname": "ACC-ERR-.YYYY.-.#####",
+ "creation": "2018-04-13 18:25:55.943587",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "posting_date",
+  "column_break_2",
+  "company",
+  "section_break_4",
+  "get_entries",
+  "accounts",
+  "section_break_6",
+  "total_gain_loss",
+  "amended_from"
+ ],
  "fields": [
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "default": "Today", 
-   "fieldname": "posting_date", 
-   "fieldtype": "Date", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 1, 
-   "in_standard_filter": 0, 
-   "label": "Posting Date", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "default": "Today",
+   "fieldname": "posting_date",
+   "fieldtype": "Date",
+   "in_list_view": 1,
+   "label": "Posting Date",
+   "reqd": 1
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "column_break_2", 
-   "fieldtype": "Column Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "column_break_2",
+   "fieldtype": "Column Break"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "company", 
-   "fieldtype": "Link", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 1, 
-   "in_standard_filter": 0, 
-   "label": "Company", 
-   "length": 0, 
-   "no_copy": 0, 
-   "options": "Company", 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "company",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "Company",
+   "options": "Company",
+   "reqd": 1
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "section_break_4", 
-   "fieldtype": "Section Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "section_break_4",
+   "fieldtype": "Section Break"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "get_entries", 
-   "fieldtype": "Button", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Get Entries", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "get_entries",
+   "fieldtype": "Button",
+   "label": "Get Entries"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "accounts", 
-   "fieldtype": "Table", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Exchange Rate Revaluation Account", 
-   "length": 0, 
-   "no_copy": 1, 
-   "options": "Exchange Rate Revaluation Account", 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "accounts",
+   "fieldtype": "Table",
+   "label": "Exchange Rate Revaluation Account",
+   "no_copy": 1,
+   "options": "Exchange Rate Revaluation Account",
+   "reqd": 1
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "section_break_6", 
-   "fieldtype": "Section Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "section_break_6",
+   "fieldtype": "Section Break"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "total_gain_loss", 
-   "fieldtype": "Currency", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Total Gain/Loss", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 1, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "total_gain_loss",
+   "fieldtype": "Currency",
+   "label": "Total Gain/Loss",
+   "options": "Company:company:default_currency",
+   "read_only": 1
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "amended_from", 
-   "fieldtype": "Link", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Amended From", 
-   "length": 0, 
-   "no_copy": 1, 
-   "options": "Exchange Rate Revaluation", 
-   "permlevel": 0, 
-   "print_hide": 1, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 1, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
+   "fieldname": "amended_from",
+   "fieldtype": "Link",
+   "label": "Amended From",
+   "no_copy": 1,
+   "options": "Exchange Rate Revaluation",
+   "print_hide": 1,
+   "read_only": 1
   }
- ], 
- "has_web_view": 0, 
- "hide_heading": 0, 
- "hide_toolbar": 0, 
- "idx": 0, 
- "image_view": 0, 
- "in_create": 0, 
- "is_submittable": 1, 
- "issingle": 0, 
- "istable": 0, 
- "max_attachments": 0, 
- "modified": "2018-08-21 16:15:34.660715", 
- "modified_by": "Administrator", 
- "module": "Accounts", 
- "name": "Exchange Rate Revaluation", 
- "name_case": "", 
- "owner": "Administrator", 
+ ],
+ "is_submittable": 1,
+ "links": [],
+ "modified": "2022-11-17 10:28:03.911554",
+ "modified_by": "Administrator",
+ "module": "Accounts",
+ "name": "Exchange Rate Revaluation",
+ "naming_rule": "Expression (old style)",
+ "owner": "Administrator",
  "permissions": [
   {
-   "amend": 1, 
-   "cancel": 1, 
-   "create": 1, 
-   "delete": 1, 
-   "email": 1, 
-   "export": 1, 
-   "if_owner": 0, 
-   "import": 0, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 1, 
-   "role": "System Manager", 
-   "set_user_permissions": 0, 
-   "share": 1, 
-   "submit": 1, 
+   "amend": 1,
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "System Manager",
+   "share": 1,
+   "submit": 1,
    "write": 1
-  }, 
+  },
   {
-   "amend": 1, 
-   "cancel": 1, 
-   "create": 1, 
-   "delete": 1, 
-   "email": 1, 
-   "export": 1, 
-   "if_owner": 0, 
-   "import": 0, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 1, 
-   "role": "Accounts Manager", 
-   "set_user_permissions": 0, 
-   "share": 1, 
-   "submit": 1, 
+   "amend": 1,
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Accounts Manager",
+   "share": 1,
+   "submit": 1,
    "write": 1
-  }, 
+  },
   {
-   "amend": 1, 
-   "cancel": 1, 
-   "create": 1, 
-   "delete": 1, 
-   "email": 1, 
-   "export": 1, 
-   "if_owner": 0, 
-   "import": 0, 
-   "permlevel": 0, 
-   "print": 1, 
-   "read": 1, 
-   "report": 1, 
-   "role": "Accounts User", 
-   "set_user_permissions": 0, 
-   "share": 1, 
-   "submit": 1, 
+   "amend": 1,
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Accounts User",
+   "share": 1,
+   "submit": 1,
    "write": 1
   }
- ], 
- "quick_entry": 0, 
- "read_only": 0, 
- "read_only_onload": 0, 
- "show_name_in_global_search": 0, 
- "sort_field": "modified", 
- "sort_order": "DESC", 
- "track_changes": 1, 
- "track_seen": 0, 
- "track_views": 0
+ ],
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "states": [],
+ "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.py b/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.py
index 2f81c5f..68e828b 100644
--- a/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.py
+++ b/erpnext/accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.py
@@ -222,7 +222,7 @@
 
 @frappe.whitelist()
 def get_account_details(account, company, posting_date, party_type=None, party=None):
-	account_currency, account_type = frappe.db.get_value(
+	account_currency, account_type = frappe.get_cached_value(
 		"Account", account, ["account_currency", "account_type"]
 	)
 	if account_type in ["Receivable", "Payable"] and not (party_type and party):
@@ -233,6 +233,10 @@
 	balance = get_balance_on(
 		account, date=posting_date, party_type=party_type, party=party, in_account_currency=False
 	)
+	account_details = {
+		"account_currency": account_currency,
+	}
+
 	if balance:
 		balance_in_account_currency = get_balance_on(
 			account, date=posting_date, party_type=party_type, party=party
@@ -242,13 +246,14 @@
 		)
 		new_exchange_rate = get_exchange_rate(account_currency, company_currency, posting_date)
 		new_balance_in_base_currency = balance_in_account_currency * new_exchange_rate
-		account_details = {
-			"account_currency": account_currency,
-			"balance_in_base_currency": balance,
-			"balance_in_account_currency": balance_in_account_currency,
-			"current_exchange_rate": current_exchange_rate,
-			"new_exchange_rate": new_exchange_rate,
-			"new_balance_in_base_currency": new_balance_in_base_currency,
-		}
+		account_details = account_details.update(
+			{
+				"balance_in_base_currency": balance,
+				"balance_in_account_currency": balance_in_account_currency,
+				"current_exchange_rate": current_exchange_rate,
+				"new_exchange_rate": new_exchange_rate,
+				"new_balance_in_base_currency": new_balance_in_base_currency,
+			}
+		)
 
 	return account_details
diff --git a/erpnext/accounts/doctype/exchange_rate_revaluation_account/exchange_rate_revaluation_account.json b/erpnext/accounts/doctype/exchange_rate_revaluation_account/exchange_rate_revaluation_account.json
index 30ff9eb..80e972b 100644
--- a/erpnext/accounts/doctype/exchange_rate_revaluation_account/exchange_rate_revaluation_account.json
+++ b/erpnext/accounts/doctype/exchange_rate_revaluation_account/exchange_rate_revaluation_account.json
@@ -1,475 +1,120 @@
 {
- "allow_copy": 0,
- "allow_events_in_timeline": 0,
- "allow_guest_to_view": 0,
- "allow_import": 0,
- "allow_rename": 0,
- "beta": 0,
+ "actions": [],
  "creation": "2018-04-13 18:30:06.110433",
- "custom": 0,
- "docstatus": 0,
  "doctype": "DocType",
- "document_type": "",
  "editable_grid": 1,
  "engine": "InnoDB",
+ "field_order": [
+  "account",
+  "party_type",
+  "party",
+  "column_break_2",
+  "account_currency",
+  "balance_in_account_currency",
+  "balances",
+  "current_exchange_rate",
+  "balance_in_base_currency",
+  "column_break_9",
+  "new_exchange_rate",
+  "new_balance_in_base_currency",
+  "gain_loss"
+ ],
  "fields": [
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "account",
    "fieldtype": "Link",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
    "in_list_view": 1,
-   "in_standard_filter": 0,
    "label": "Account",
-   "length": 0,
-   "no_copy": 0,
    "options": "Account",
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 1,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "reqd": 1
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "party_type",
    "fieldtype": "Link",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
    "label": "Party Type",
-   "length": 0,
-   "no_copy": 0,
-   "options": "DocType",
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "options": "DocType"
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "party",
    "fieldtype": "Dynamic Link",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
    "label": "Party",
-   "length": 0,
-   "no_copy": 0,
-   "options": "party_type",
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "options": "party_type"
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "column_break_2",
-   "fieldtype": "Column Break",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "fieldtype": "Column Break"
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "account_currency",
    "fieldtype": "Link",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
    "label": "Account Currency",
-   "length": 0,
-   "no_copy": 0,
    "options": "Currency",
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "read_only": 1
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "balance_in_account_currency",
    "fieldtype": "Currency",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
    "label": "Balance In Account Currency",
-   "length": 0,
-   "no_copy": 0,
    "options": "account_currency",
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "read_only": 1
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "balances",
-   "fieldtype": "Section Break",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "label": "",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "fieldtype": "Section Break"
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "current_exchange_rate",
    "fieldtype": "Float",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
    "label": "Current Exchange Rate",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "read_only": 1
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "balance_in_base_currency",
    "fieldtype": "Currency",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
    "in_list_view": 1,
-   "in_standard_filter": 0,
    "label": "Balance In Base Currency",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "options": "Company:company:default_currency",
+   "read_only": 1
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "column_break_9",
-   "fieldtype": "Column Break",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
-   "in_list_view": 0,
-   "in_standard_filter": 0,
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "fieldtype": "Column Break"
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "new_exchange_rate",
    "fieldtype": "Float",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
    "in_list_view": 1,
-   "in_standard_filter": 0,
    "label": "New Exchange Rate",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 0,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 1,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "reqd": 1
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "new_balance_in_base_currency",
    "fieldtype": "Currency",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
    "in_list_view": 1,
-   "in_standard_filter": 0,
    "label": "New Balance In Base Currency",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "options": "Company:company:default_currency",
+   "read_only": 1
   },
   {
-   "allow_bulk_edit": 0,
-   "allow_in_quick_entry": 0,
-   "allow_on_submit": 0,
-   "bold": 0,
-   "collapsible": 0,
-   "columns": 0,
-   "fetch_if_empty": 0,
    "fieldname": "gain_loss",
    "fieldtype": "Currency",
-   "hidden": 0,
-   "ignore_user_permissions": 0,
-   "ignore_xss_filter": 0,
-   "in_filter": 0,
-   "in_global_search": 0,
    "in_list_view": 1,
-   "in_standard_filter": 0,
    "label": "Gain/Loss",
-   "length": 0,
-   "no_copy": 0,
-   "permlevel": 0,
-   "precision": "",
-   "print_hide": 0,
-   "print_hide_if_no_value": 0,
-   "read_only": 1,
-   "remember_last_selected_value": 0,
-   "report_hide": 0,
-   "reqd": 0,
-   "search_index": 0,
-   "set_only_once": 0,
-   "translatable": 0,
-   "unique": 0
+   "options": "Company:company:default_currency",
+   "read_only": 1
   }
  ],
- "has_web_view": 0,
- "hide_heading": 0,
- "hide_toolbar": 0,
- "idx": 0,
- "image_view": 0,
- "in_create": 0,
- "is_submittable": 0,
- "issingle": 0,
  "istable": 1,
- "max_attachments": 0,
- "modified": "2019-06-26 18:57:51.762345",
+ "links": [],
+ "modified": "2022-11-17 10:26:18.302728",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Exchange Rate Revaluation Account",
- "name_case": "",
  "owner": "Administrator",
  "permissions": [],
  "quick_entry": 1,
- "read_only": 0,
- "read_only_onload": 0,
- "show_name_in_global_search": 0,
  "sort_field": "modified",
  "sort_order": "DESC",
- "track_changes": 1,
- "track_seen": 0,
- "track_views": 0
+ "states": [],
+ "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/fiscal_year/fiscal_year.py b/erpnext/accounts/doctype/fiscal_year/fiscal_year.py
index 069ab5e..4592421 100644
--- a/erpnext/accounts/doctype/fiscal_year/fiscal_year.py
+++ b/erpnext/accounts/doctype/fiscal_year/fiscal_year.py
@@ -170,4 +170,4 @@
 
 def get_from_and_to_date(fiscal_year):
 	fields = ["year_start_date as from_date", "year_end_date as to_date"]
-	return frappe.db.get_value("Fiscal Year", fiscal_year, fields, as_dict=1)
+	return frappe.get_cached_value("Fiscal Year", fiscal_year, fields, as_dict=1)
diff --git a/erpnext/accounts/doctype/gl_entry/gl_entry.py b/erpnext/accounts/doctype/gl_entry/gl_entry.py
index 7227b95..f312048 100644
--- a/erpnext/accounts/doctype/gl_entry/gl_entry.py
+++ b/erpnext/accounts/doctype/gl_entry/gl_entry.py
@@ -58,7 +58,7 @@
 			validate_balance_type(self.account, adv_adj)
 			validate_frozen_account(self.account, adv_adj)
 
-			if frappe.db.get_value("Account", self.account, "account_type") not in [
+			if frappe.get_cached_value("Account", self.account, "account_type") not in [
 				"Receivable",
 				"Payable",
 			]:
@@ -120,7 +120,7 @@
 			frappe.throw(msg, title=_("Missing Cost Center"))
 
 	def validate_dimensions_for_pl_and_bs(self):
-		account_type = frappe.db.get_value("Account", self.account, "report_type")
+		account_type = frappe.get_cached_value("Account", self.account, "report_type")
 
 		for dimension in get_checks_for_pl_and_bs_accounts():
 			if (
@@ -188,7 +188,7 @@
 	def check_pl_account(self):
 		if (
 			self.is_opening == "Yes"
-			and frappe.db.get_value("Account", self.account, "report_type") == "Profit and Loss"
+			and frappe.get_cached_value("Account", self.account, "report_type") == "Profit and Loss"
 			and not self.is_cancelled
 		):
 			frappe.throw(
@@ -281,7 +281,7 @@
 
 def validate_balance_type(account, adv_adj=False):
 	if not adv_adj and account:
-		balance_must_be = frappe.db.get_value("Account", account, "balance_must_be")
+		balance_must_be = frappe.get_cached_value("Account", account, "balance_must_be")
 		if balance_must_be:
 			balance = frappe.db.sql(
 				"""select sum(debit) - sum(credit)
diff --git a/erpnext/accounts/doctype/item_tax_template/item_tax_template.py b/erpnext/accounts/doctype/item_tax_template/item_tax_template.py
index 23f36ec..7e2fca8 100644
--- a/erpnext/accounts/doctype/item_tax_template/item_tax_template.py
+++ b/erpnext/accounts/doctype/item_tax_template/item_tax_template.py
@@ -21,7 +21,7 @@
 		check_list = []
 		for d in self.get("taxes"):
 			if d.tax_type:
-				account_type = frappe.db.get_value("Account", d.tax_type, "account_type")
+				account_type = frappe.get_cached_value("Account", d.tax_type, "account_type")
 
 				if account_type not in [
 					"Tax",
diff --git a/erpnext/accounts/doctype/journal_entry/journal_entry.js b/erpnext/accounts/doctype/journal_entry/journal_entry.js
index a5ff7f1..30a3201 100644
--- a/erpnext/accounts/doctype/journal_entry/journal_entry.js
+++ b/erpnext/accounts/doctype/journal_entry/journal_entry.js
@@ -253,9 +253,6 @@
 				var party_account_field = jvd.reference_type==="Sales Invoice" ? "debit_to": "credit_to";
 				out.filters.push([jvd.reference_type, party_account_field, "=", jvd.account]);
 
-				if (in_list(['Debit Note', 'Credit Note'], doc.voucher_type)) {
-					out.filters.push([jvd.reference_type, "is_return", "=", 1]);
-				}
 			}
 
 			if(in_list(["Sales Order", "Purchase Order"], jvd.reference_type)) {
diff --git a/erpnext/accounts/doctype/journal_entry/journal_entry.py b/erpnext/accounts/doctype/journal_entry/journal_entry.py
index de012b2..1714fff 100644
--- a/erpnext/accounts/doctype/journal_entry/journal_entry.py
+++ b/erpnext/accounts/doctype/journal_entry/journal_entry.py
@@ -319,7 +319,7 @@
 
 	def validate_party(self):
 		for d in self.get("accounts"):
-			account_type = frappe.db.get_value("Account", d.account, "account_type")
+			account_type = frappe.get_cached_value("Account", d.account, "account_type")
 			if account_type in ["Receivable", "Payable"]:
 				if not (d.party_type and d.party):
 					frappe.throw(
@@ -382,7 +382,7 @@
 	def validate_against_jv(self):
 		for d in self.get("accounts"):
 			if d.reference_type == "Journal Entry":
-				account_root_type = frappe.db.get_value("Account", d.account, "root_type")
+				account_root_type = frappe.get_cached_value("Account", d.account, "root_type")
 				if account_root_type == "Asset" and flt(d.debit) > 0:
 					frappe.throw(
 						_(
@@ -631,7 +631,7 @@
 	def validate_multi_currency(self):
 		alternate_currency = []
 		for d in self.get("accounts"):
-			account = frappe.db.get_value(
+			account = frappe.get_cached_value(
 				"Account", d.account, ["account_currency", "account_type"], as_dict=1
 			)
 			if account:
@@ -762,7 +762,7 @@
 					party_amount += d.debit_in_account_currency or d.credit_in_account_currency
 					party_account_currency = d.account_currency
 
-			elif frappe.db.get_value("Account", d.account, "account_type") in ["Bank", "Cash"]:
+			elif frappe.get_cached_value("Account", d.account, "account_type") in ["Bank", "Cash"]:
 				bank_amount += d.debit_in_account_currency or d.credit_in_account_currency
 				bank_account_currency = d.account_currency
 
@@ -987,7 +987,7 @@
 					account = account_list[0].name
 
 	if account:
-		account_details = frappe.db.get_value(
+		account_details = frappe.get_cached_value(
 			"Account", account, ["account_currency", "account_type"], as_dict=1
 		)
 
@@ -1116,7 +1116,7 @@
 			"party_type": args.get("party_type"),
 			"party": ref_doc.get(args.get("party_type").lower()),
 			"cost_center": cost_center,
-			"account_type": frappe.db.get_value("Account", args.get("party_account"), "account_type"),
+			"account_type": frappe.get_cached_value("Account", args.get("party_account"), "account_type"),
 			"account_currency": args.get("party_account_currency")
 			or get_account_currency(args.get("party_account")),
 			"balance": get_balance_on(args.get("party_account")),
@@ -1283,7 +1283,7 @@
 		"account": account,
 		"balance": account_balance,
 		"party_balance": party_balance,
-		"account_currency": frappe.db.get_value("Account", account, "account_currency"),
+		"account_currency": frappe.get_cached_value("Account", account, "account_currency"),
 	}
 
 
@@ -1296,7 +1296,7 @@
 		frappe.msgprint(_("No Permission"), raise_exception=1)
 
 	company_currency = erpnext.get_company_currency(company)
-	account_details = frappe.db.get_value(
+	account_details = frappe.get_cached_value(
 		"Account", account, ["account_type", "account_currency"], as_dict=1
 	)
 
@@ -1349,7 +1349,7 @@
 ):
 	from erpnext.setup.utils import get_exchange_rate
 
-	account_details = frappe.db.get_value(
+	account_details = frappe.get_cached_value(
 		"Account", account, ["account_type", "root_type", "account_currency", "company"], as_dict=1
 	)
 
diff --git a/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py b/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py
index ed35d1e..7d6ef3c 100644
--- a/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py
+++ b/erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py
@@ -25,7 +25,7 @@
 	def validate_accounts(self):
 		for entry in self.accounts:
 			"""Error when Company of Ledger account doesn't match with Company Selected"""
-			if frappe.db.get_value("Account", entry.default_account, "company") != entry.company:
+			if frappe.get_cached_value("Account", entry.default_account, "company") != entry.company:
 				frappe.throw(
 					_("Account {0} does not match with Company {1} in Mode of Account: {2}").format(
 						entry.default_account, entry.company, self.name
diff --git a/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.js b/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.js
index 1f41661..88867d1 100644
--- a/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.js
+++ b/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.js
@@ -20,7 +20,6 @@
 				frm.dashboard.reset();
 				frm.doc.import_in_progress = true;
 			}
-			if (data.user != frappe.session.user) return;
 			if (data.count == data.total) {
 				setTimeout(() => {
 					frm.doc.import_in_progress = false;
diff --git a/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py b/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py
index 57fe405..47c2ceb 100644
--- a/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py
+++ b/erpnext/accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py
@@ -260,10 +260,10 @@
 		dict(
 			title=_("Opening Invoice Creation In Progress"),
 			message=_("Creating {} out of {} {}").format(index + 1, total, doctype),
-			user=frappe.session.user,
 			count=index + 1,
 			total=total,
 		),
+		user=frappe.session.user,
 	)
 
 
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py
index 51b134a..9354e44 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py
@@ -725,7 +725,7 @@
 
 	def validate_transaction_reference(self):
 		bank_account = self.paid_to if self.payment_type == "Receive" else self.paid_from
-		bank_account_type = frappe.db.get_value("Account", bank_account, "account_type")
+		bank_account_type = frappe.get_cached_value("Account", bank_account, "account_type")
 
 		if bank_account_type == "Bank":
 			if not self.reference_no or not self.reference_date:
@@ -1303,7 +1303,7 @@
 				d.voucher_type, d.voucher_no, "payment_terms_template"
 			)
 			if payment_term_template:
-				allocate_payment_based_on_payment_terms = frappe.db.get_value(
+				allocate_payment_based_on_payment_terms = frappe.get_cached_value(
 					"Payment Terms Template", payment_term_template, "allocate_payment_based_on_payment_terms"
 				)
 				if allocate_payment_based_on_payment_terms:
@@ -1535,7 +1535,7 @@
 		{
 			"account_currency": get_account_currency(account),
 			"account_balance": account_balance,
-			"account_type": frappe.db.get_value("Account", account, "account_type"),
+			"account_type": frappe.get_cached_value("Account", account, "account_type"),
 		}
 	)
 
@@ -1704,9 +1704,9 @@
 	if doc.doctype == "Purchase Invoice" and doc.invoice_is_blocked():
 		frappe.msgprint(_("{0} is on hold till {1}").format(doc.name, doc.release_date))
 	else:
-		if doc.doctype in ("Sales Invoice", "Purchase Invoice") and frappe.get_value(
+		if doc.doctype in ("Sales Invoice", "Purchase Invoice") and frappe.get_cached_value(
 			"Payment Terms Template",
-			{"name": doc.payment_terms_template},
+			doc.payment_terms_template,
 			"allocate_payment_based_on_payment_terms",
 		):
 
diff --git a/erpnext/accounts/doctype/payment_gateway_account/payment_gateway_account.py b/erpnext/accounts/doctype/payment_gateway_account/payment_gateway_account.py
index ab47b61..791de25 100644
--- a/erpnext/accounts/doctype/payment_gateway_account/payment_gateway_account.py
+++ b/erpnext/accounts/doctype/payment_gateway_account/payment_gateway_account.py
@@ -11,7 +11,7 @@
 		self.name = self.payment_gateway + " - " + self.currency
 
 	def validate(self):
-		self.currency = frappe.db.get_value("Account", self.payment_account, "account_currency")
+		self.currency = frappe.get_cached_value("Account", self.payment_account, "account_currency")
 
 		self.update_default_payment_gateway()
 		self.set_as_default_if_not_set()
diff --git a/erpnext/accounts/doctype/payment_ledger_entry/payment_ledger_entry.py b/erpnext/accounts/doctype/payment_ledger_entry/payment_ledger_entry.py
index bcbcb67..58691ab 100644
--- a/erpnext/accounts/doctype/payment_ledger_entry/payment_ledger_entry.py
+++ b/erpnext/accounts/doctype/payment_ledger_entry/payment_ledger_entry.py
@@ -97,7 +97,7 @@
 						)
 
 	def validate_dimensions_for_pl_and_bs(self):
-		account_type = frappe.db.get_value("Account", self.account, "report_type")
+		account_type = frappe.get_cached_value("Account", self.account, "report_type")
 
 		for dimension in get_checks_for_pl_and_bs_accounts():
 			if (
diff --git a/erpnext/accounts/doctype/payment_request/payment_request.py b/erpnext/accounts/doctype/payment_request/payment_request.py
index 29c4978..8665b70 100644
--- a/erpnext/accounts/doctype/payment_request/payment_request.py
+++ b/erpnext/accounts/doctype/payment_request/payment_request.py
@@ -53,7 +53,7 @@
 
 	def validate_currency(self):
 		ref_doc = frappe.get_doc(self.reference_doctype, self.reference_name)
-		if self.payment_account and ref_doc.currency != frappe.db.get_value(
+		if self.payment_account and ref_doc.currency != frappe.get_cached_value(
 			"Account", self.payment_account, "account_currency"
 		):
 			frappe.throw(_("Transaction currency must be same as Payment Gateway currency"))
diff --git a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py b/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py
index 866a94d..ca98bee 100644
--- a/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py
+++ b/erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.py
@@ -43,7 +43,7 @@
 			make_reverse_gl_entries(voucher_type="Period Closing Voucher", voucher_no=self.name)
 
 	def validate_account_head(self):
-		closing_account_type = frappe.db.get_value("Account", self.closing_account_head, "root_type")
+		closing_account_type = frappe.get_cached_value("Account", self.closing_account_head, "root_type")
 
 		if closing_account_type not in ["Liability", "Equity"]:
 			frappe.throw(
diff --git a/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.js b/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.js
index 1d596c1..e6d9fe2 100644
--- a/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.js
+++ b/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.js
@@ -25,7 +25,7 @@
 
 		frappe.realtime.on('closing_process_complete', async function(data) {
 			await frm.reload_doc();
-			if (frm.doc.status == 'Failed' && frm.doc.error_message && data.user == frappe.session.user) {
+			if (frm.doc.status == 'Failed' && frm.doc.error_message) {
 				frappe.msgprint({
 					title: __('POS Closing Failed'),
 					message: frm.doc.error_message,
diff --git a/erpnext/accounts/doctype/pos_invoice/pos_invoice.py b/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
index 54a3e93..b543016 100644
--- a/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
+++ b/erpnext/accounts/doctype/pos_invoice/pos_invoice.py
@@ -335,7 +335,8 @@
 		if (
 			self.change_amount
 			and self.account_for_change_amount
-			and frappe.db.get_value("Account", self.account_for_change_amount, "company") != self.company
+			and frappe.get_cached_value("Account", self.account_for_change_amount, "company")
+			!= self.company
 		):
 			frappe.throw(
 				_("The selected change account {} doesn't belongs to Company {}.").format(
@@ -486,7 +487,7 @@
 				customer_price_list, customer_group, customer_currency = frappe.db.get_value(
 					"Customer", self.customer, ["default_price_list", "customer_group", "default_currency"]
 				)
-				customer_group_price_list = frappe.db.get_value(
+				customer_group_price_list = frappe.get_cached_value(
 					"Customer Group", customer_group, "default_price_list"
 				)
 				selling_price_list = (
@@ -532,8 +533,8 @@
 
 		if not self.debit_to:
 			self.debit_to = get_party_account("Customer", self.customer, self.company)
-			self.party_account_currency = frappe.db.get_value(
-				"Account", self.debit_to, "account_currency", cache=True
+			self.party_account_currency = frappe.get_cached_value(
+				"Account", self.debit_to, "account_currency"
 			)
 		if not self.due_date and self.customer:
 			self.due_date = get_due_date(self.posting_date, "Customer", self.customer, self.company)
diff --git a/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py b/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
index a0a1c8c..3a237a4 100644
--- a/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
+++ b/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
@@ -430,7 +430,7 @@
 
 	finally:
 		frappe.db.commit()
-		frappe.publish_realtime("closing_process_complete", {"user": frappe.session.user})
+		frappe.publish_realtime("closing_process_complete", user=frappe.session.user)
 
 
 def cancel_merge_logs(merge_logs, closing_entry=None):
@@ -457,7 +457,7 @@
 
 	finally:
 		frappe.db.commit()
-		frappe.publish_realtime("closing_process_complete", {"user": frappe.session.user})
+		frappe.publish_realtime("closing_process_complete", user=frappe.session.user)
 
 
 def enqueue_job(job, **kwargs):
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
index 39a6235..a098e8d 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js
@@ -81,7 +81,7 @@
 		}
 
 		if(doc.docstatus == 1 && doc.outstanding_amount != 0
-			&& !(doc.is_return && doc.return_against)) {
+			&& !(doc.is_return && doc.return_against) && !doc.on_hold) {
 			this.frm.add_custom_button(__('Payment'), this.make_payment_entry, __('Create'));
 			cur_frm.page.set_inner_btn_group_as_primary(__('Create'));
 		}
@@ -99,7 +99,7 @@
 			}
 		}
 
-		if (doc.outstanding_amount > 0 && !cint(doc.is_return)) {
+		if (doc.outstanding_amount > 0 && !cint(doc.is_return) && !doc.on_hold) {
 			cur_frm.add_custom_button(__('Payment Request'), function() {
 				me.make_payment_request()
 			}, __('Create'));
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
index 370c0fc..a03157e 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.json
@@ -25,6 +25,10 @@
   "apply_tds",
   "tax_withholding_category",
   "amended_from",
+  "supplier_invoice_details",
+  "bill_no",
+  "column_break_15",
+  "bill_date",
   "accounting_dimensions_section",
   "cost_center",
   "dimension_col_break",
@@ -65,6 +69,7 @@
   "tax_category",
   "column_break_49",
   "shipping_rule",
+  "incoterm",
   "section_break_51",
   "taxes",
   "totals",
@@ -151,10 +156,6 @@
   "status",
   "column_break_177",
   "per_received",
-  "supplier_invoice_details",
-  "bill_no",
-  "column_break_15",
-  "bill_date",
   "accounting_details_section",
   "credit_to",
   "party_account_currency",
@@ -1534,13 +1535,19 @@
    "oldfieldtype": "Section Break",
    "options": "fa fa-file-text",
    "print_hide": 1
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-file-text",
  "idx": 204,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-11-04 01:02:44.544878",
+ "modified": "2022-11-25 12:44:29.935567",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Purchase Invoice",
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
index 9a31aaf..0a92820 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
@@ -153,8 +153,8 @@
 	def set_missing_values(self, for_validate=False):
 		if not self.credit_to:
 			self.credit_to = get_party_account("Supplier", self.supplier, self.company)
-			self.party_account_currency = frappe.db.get_value(
-				"Account", self.credit_to, "account_currency", cache=True
+			self.party_account_currency = frappe.get_cached_value(
+				"Account", self.credit_to, "account_currency"
 			)
 		if not self.due_date:
 			self.due_date = get_due_date(
@@ -175,7 +175,7 @@
 			if not self.credit_to:
 				self.raise_missing_debit_credit_account_error("Supplier", self.supplier)
 
-		account = frappe.db.get_value(
+		account = frappe.get_cached_value(
 			"Account", self.credit_to, ["account_type", "report_type", "account_currency"], as_dict=True
 		)
 
@@ -606,7 +606,7 @@
 
 	def make_supplier_gl_entry(self, gl_entries):
 		# Checked both rounding_adjustment and rounded_total
-		# because rounded_total had value even before introcution of posting GLE based on rounded total
+		# because rounded_total had value even before introduction of posting GLE based on rounded total
 		grand_total = (
 			self.rounded_total if (self.rounding_adjustment and self.rounded_total) else self.grand_total
 		)
@@ -673,7 +673,7 @@
 		exchange_rate_map, net_rate_map = get_purchase_document_details(self)
 
 		provisional_accounting_for_non_stock_items = cint(
-			frappe.db.get_value(
+			frappe.get_cached_value(
 				"Company", self.company, "enable_provisional_accounting_for_non_stock_items"
 			)
 		)
@@ -809,10 +809,7 @@
 						else item.deferred_expense_account
 					)
 
-					if not item.is_fixed_asset:
-						dummy, amount = self.get_amount_and_base_amount(item, None)
-					else:
-						amount = flt(item.base_net_amount + item.item_tax_amount, item.precision("base_net_amount"))
+					dummy, amount = self.get_amount_and_base_amount(item, None)
 
 					if provisional_accounting_for_non_stock_items:
 						if item.purchase_receipt:
@@ -984,7 +981,7 @@
 				asset_amount = flt(item.net_amount) + flt(item.item_tax_amount / self.conversion_rate)
 				base_asset_amount = flt(item.base_net_amount + item.item_tax_amount)
 
-				item_exp_acc_type = frappe.db.get_value("Account", item.expense_account, "account_type")
+				item_exp_acc_type = frappe.get_cached_value("Account", item.expense_account, "account_type")
 				if not item.expense_account or item_exp_acc_type not in [
 					"Asset Received But Not Billed",
 					"Fixed Asset",
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.json b/erpnext/accounts/doctype/sales_invoice/sales_invoice.json
index dc2f9a9..18d2b5c 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.json
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.json
@@ -64,6 +64,7 @@
   "taxes_and_charges",
   "column_break_38",
   "shipping_rule",
+  "incoterm",
   "column_break_55",
   "tax_category",
   "section_break_40",
@@ -2114,6 +2115,12 @@
    "label": "Repost Required",
    "no_copy": 1,
    "read_only": 1
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-file-text",
@@ -2126,7 +2133,7 @@
    "link_fieldname": "consolidated_invoice"
   }
  ],
- "modified": "2022-11-15 09:33:47.870616",
+ "modified": "2022-11-17 17:17:10.883487",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Sales Invoice",
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges_template/sales_taxes_and_charges_template.py b/erpnext/accounts/doctype/sales_taxes_and_charges_template/sales_taxes_and_charges_template.py
index d9009ba..a3a5d62 100644
--- a/erpnext/accounts/doctype/sales_taxes_and_charges_template/sales_taxes_and_charges_template.py
+++ b/erpnext/accounts/doctype/sales_taxes_and_charges_template/sales_taxes_and_charges_template.py
@@ -27,7 +27,7 @@
 	def set_missing_values(self):
 		for data in self.taxes:
 			if data.charge_type == "On Net Total" and flt(data.rate) == 0.0:
-				data.rate = frappe.db.get_value("Account", data.account_head, "tax_rate")
+				data.rate = frappe.get_cached_value("Account", data.account_head, "tax_rate")
 
 
 def valdiate_taxes_and_charges_template(doc):
diff --git a/erpnext/accounts/doctype/tax_withholding_category/test_tax_withholding_category.py b/erpnext/accounts/doctype/tax_withholding_category/test_tax_withholding_category.py
index 40c732b..23caac0 100644
--- a/erpnext/accounts/doctype/tax_withholding_category/test_tax_withholding_category.py
+++ b/erpnext/accounts/doctype/tax_withholding_category/test_tax_withholding_category.py
@@ -226,6 +226,42 @@
 		for d in reversed(invoices):
 			d.cancel()
 
+		orders = []
+
+		po = create_purchase_order(supplier="Test TDS Supplier4", rate=20000, do_not_save=True)
+		po.extend(
+			"items",
+			[
+				{
+					"doctype": "Purchase Order Item",
+					"item_code": frappe.db.get_value("Item", {"item_name": "TDS Item"}, "name"),
+					"qty": 1,
+					"rate": 20000,
+					"cost_center": "Main - _TC",
+					"expense_account": "Stock Received But Not Billed - _TC",
+					"apply_tds": 0,
+				},
+				{
+					"doctype": "Purchase Order Item",
+					"item_code": frappe.db.get_value("Item", {"item_name": "TDS Item"}, "name"),
+					"qty": 1,
+					"rate": 35000,
+					"cost_center": "Main - _TC",
+					"expense_account": "Stock Received But Not Billed - _TC",
+					"apply_tds": 1,
+				},
+			],
+		)
+		po.save()
+		po.submit()
+		orders.append(po)
+
+		self.assertEqual(po.taxes[0].tax_amount, 5500)
+
+		# cancel orders to avoid clashing
+		for d in reversed(orders):
+			d.cancel()
+
 	def test_multi_category_single_supplier(self):
 		frappe.db.set_value(
 			"Supplier", "Test TDS Supplier5", "tax_withholding_category", "Test Service Category"
@@ -348,6 +384,39 @@
 	return pi
 
 
+def create_purchase_order(**args):
+	# return purchase order doc object
+	item = frappe.db.get_value("Item", {"item_name": "TDS Item"}, "name")
+
+	args = frappe._dict(args)
+	po = frappe.get_doc(
+		{
+			"doctype": "Purchase Order",
+			"transaction_date": today(),
+			"schedule_date": today(),
+			"apply_tds": 0 if args.do_not_apply_tds else 1,
+			"supplier": args.supplier,
+			"company": "_Test Company",
+			"taxes_and_charges": "",
+			"currency": "INR",
+			"taxes": [],
+			"items": [
+				{
+					"doctype": "Purchase Order Item",
+					"item_code": item,
+					"qty": args.qty or 1,
+					"rate": args.rate or 10000,
+					"cost_center": "Main - _TC",
+					"expense_account": "Stock Received But Not Billed - _TC",
+				}
+			],
+		}
+	)
+
+	po.save()
+	return po
+
+
 def create_sales_invoice(**args):
 	# return sales invoice doc object
 	item = frappe.db.get_value("Item", {"item_name": "TCS Item"}, "name")
diff --git a/erpnext/accounts/general_ledger.py b/erpnext/accounts/general_ledger.py
index 6d164ee..c757057 100644
--- a/erpnext/accounts/general_ledger.py
+++ b/erpnext/accounts/general_ledger.py
@@ -394,20 +394,22 @@
 	round_off_account, round_off_cost_center = get_round_off_account_and_cost_center(
 		gl_map[0].company, gl_map[0].voucher_type, gl_map[0].voucher_no
 	)
-	round_off_account_exists = False
 	round_off_gle = frappe._dict()
-	for d in gl_map:
-		if d.account == round_off_account:
-			round_off_gle = d
-			if d.debit:
-				debit_credit_diff -= flt(d.debit)
-			else:
-				debit_credit_diff += flt(d.credit)
-			round_off_account_exists = True
+	round_off_account_exists = False
 
-	if round_off_account_exists and abs(debit_credit_diff) < (1.0 / (10**precision)):
-		gl_map.remove(round_off_gle)
-		return
+	if gl_map[0].voucher_type != "Period Closing Voucher":
+		for d in gl_map:
+			if d.account == round_off_account:
+				round_off_gle = d
+				if d.debit:
+					debit_credit_diff -= flt(d.debit) - flt(d.credit)
+				else:
+					debit_credit_diff += flt(d.credit)
+				round_off_account_exists = True
+
+		if round_off_account_exists and abs(debit_credit_diff) < (1.0 / (10**precision)):
+			gl_map.remove(round_off_gle)
+			return
 
 	if not round_off_gle:
 		for k in ["voucher_type", "voucher_no", "company", "posting_date", "remarks"]:
@@ -430,7 +432,6 @@
 	)
 
 	update_accounting_dimensions(round_off_gle)
-
 	if not round_off_account_exists:
 		gl_map.append(round_off_gle)
 
diff --git a/erpnext/accounts/party.py b/erpnext/accounts/party.py
index 67cf644..baeed03 100644
--- a/erpnext/accounts/party.py
+++ b/erpnext/accounts/party.py
@@ -296,7 +296,7 @@
 		return party.default_price_list
 
 	if party.doctype == "Customer":
-		return frappe.db.get_value("Customer Group", party.customer_group, "default_price_list")
+		return frappe.get_cached_value("Customer Group", party.customer_group, "default_price_list")
 
 
 def set_price_list(party_details, party, party_type, given_price_list, pos=None):
@@ -385,7 +385,7 @@
 	existing_gle_currency = get_party_gle_currency(party_type, party, company)
 	if existing_gle_currency:
 		if account:
-			account_currency = frappe.db.get_value("Account", account, "account_currency", cache=True)
+			account_currency = frappe.get_cached_value("Account", account, "account_currency")
 		if (account and account_currency != existing_gle_currency) or not account:
 			account = get_party_gle_account(party_type, party, company)
 
@@ -402,7 +402,7 @@
 def get_party_account_currency(party_type, party, company):
 	def generator():
 		party_account = get_party_account(party_type, party, company)
-		return frappe.db.get_value("Account", party_account, "account_currency", cache=True)
+		return frappe.get_cached_value("Account", party_account, "account_currency")
 
 	return frappe.local_cache("party_account_currency", (party_type, party, company), generator)
 
@@ -474,15 +474,15 @@
 		else:
 			companies.append(account.company)
 
-		party_account_currency = frappe.db.get_value(
-			"Account", account.account, "account_currency", cache=True
-		)
+		party_account_currency = frappe.get_cached_value("Account", account.account, "account_currency")
 		if frappe.db.get_default("Company"):
 			company_default_currency = frappe.get_cached_value(
 				"Company", frappe.db.get_default("Company"), "default_currency"
 			)
 		else:
-			company_default_currency = frappe.db.get_value("Company", account.company, "default_currency")
+			company_default_currency = frappe.get_cached_value(
+				"Company", account.company, "default_currency"
+			)
 
 		validate_party_gle_currency(doc.doctype, doc.name, account.company, party_account_currency)
 
@@ -801,7 +801,7 @@
 	)
 
 	for d in companies:
-		company_default_currency = frappe.db.get_value("Company", d.company, "default_currency")
+		company_default_currency = frappe.get_cached_value("Company", d.company, "default_currency")
 		party_account_currency = get_party_account_currency(party_type, party, d.company)
 
 		if party_account_currency == company_default_currency:
diff --git a/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py b/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py
index fbc1a69..b0a0e05 100644
--- a/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py
+++ b/erpnext/accounts/report/bank_reconciliation_statement/bank_reconciliation_statement.py
@@ -21,7 +21,7 @@
 	if not filters.get("account"):
 		return columns, []
 
-	account_currency = frappe.db.get_value("Account", filters.account, "account_currency")
+	account_currency = frappe.get_cached_value("Account", filters.account, "account_currency")
 
 	data = get_entries(filters)
 
diff --git a/erpnext/accounts/report/cash_flow/cash_flow.py b/erpnext/accounts/report/cash_flow/cash_flow.py
index 75e983a..d4f2011 100644
--- a/erpnext/accounts/report/cash_flow/cash_flow.py
+++ b/erpnext/accounts/report/cash_flow/cash_flow.py
@@ -180,7 +180,7 @@
 	filters = frappe._dict(filters or {})
 
 	if filters.include_default_book_entries:
-		company_fb = frappe.db.get_value("Company", company, "default_finance_book")
+		company_fb = frappe.get_cached_value("Company", company, "default_finance_book")
 		cond = """ AND (finance_book in (%s, %s, '') OR finance_book IS NULL)
 			""" % (
 			frappe.db.escape(filters.finance_book),
diff --git a/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.py b/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.py
index 330e442..e93fb61 100644
--- a/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.py
+++ b/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.py
@@ -641,7 +641,7 @@
 				"rgt": root_rgt,
 				"company": d.name,
 				"finance_book": filters.get("finance_book"),
-				"company_fb": frappe.db.get_value("Company", d.name, "default_finance_book"),
+				"company_fb": frappe.get_cached_value("Company", d.name, "default_finance_book"),
 			},
 			as_dict=True,
 		)
diff --git a/erpnext/accounts/report/customer_ledger_summary/customer_ledger_summary.py b/erpnext/accounts/report/customer_ledger_summary/customer_ledger_summary.py
index cafe95b..6b0d3c9 100644
--- a/erpnext/accounts/report/customer_ledger_summary/customer_ledger_summary.py
+++ b/erpnext/accounts/report/customer_ledger_summary/customer_ledger_summary.py
@@ -220,8 +220,8 @@
 
 		if self.filters.party_type == "Customer":
 			if self.filters.get("customer_group"):
-				lft, rgt = frappe.db.get_value(
-					"Customer Group", self.filters.get("customer_group"), ["lft", "rgt"]
+				lft, rgt = frappe.get_cached_value(
+					"Customer Group", self.filters["customer_group"], ["lft", "rgt"]
 				)
 
 				conditions.append(
diff --git a/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.py b/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.py
index ecad9f1..5939a26 100644
--- a/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.py
+++ b/erpnext/accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.py
@@ -90,7 +90,7 @@
 	gl_filters["dimensions"] = set(dimension_list)
 
 	if filters.get("include_default_book_entries"):
-		gl_filters["company_fb"] = frappe.db.get_value(
+		gl_filters["company_fb"] = frappe.get_cached_value(
 			"Company", filters.company, "default_finance_book"
 		)
 
diff --git a/erpnext/accounts/report/financial_statements.py b/erpnext/accounts/report/financial_statements.py
index 3682577..8c6fe43 100644
--- a/erpnext/accounts/report/financial_statements.py
+++ b/erpnext/accounts/report/financial_statements.py
@@ -440,7 +440,7 @@
 		}
 
 		if filters.get("include_default_book_entries"):
-			gl_filters["company_fb"] = frappe.db.get_value("Company", company, "default_finance_book")
+			gl_filters["company_fb"] = frappe.get_cached_value("Company", company, "default_finance_book")
 
 		for key, value in filters.items():
 			if value:
diff --git a/erpnext/accounts/report/general_ledger/general_ledger.py b/erpnext/accounts/report/general_ledger/general_ledger.py
index 82f38da..e3531b0 100644
--- a/erpnext/accounts/report/general_ledger/general_ledger.py
+++ b/erpnext/accounts/report/general_ledger/general_ledger.py
@@ -121,7 +121,7 @@
 				if is_same_account_currency:
 					account_currency = currency
 
-		elif filters.get("party"):
+		elif filters.get("party") and filters.get("party_type"):
 			gle_currency = frappe.db.get_value(
 				"GL Entry",
 				{"party_type": filters.party_type, "party": filters.party[0], "company": filters.company},
@@ -134,7 +134,7 @@
 				account_currency = (
 					None
 					if filters.party_type in ["Employee", "Shareholder", "Member"]
-					else frappe.db.get_value(filters.party_type, filters.party[0], "default_currency")
+					else frappe.get_cached_value(filters.party_type, filters.party[0], "default_currency")
 				)
 
 		filters["account_currency"] = account_currency or filters.company_currency
@@ -174,7 +174,7 @@
 		order_by_statement = "order by account, posting_date, creation"
 
 	if filters.get("include_default_book_entries"):
-		filters["company_fb"] = frappe.db.get_value(
+		filters["company_fb"] = frappe.get_cached_value(
 			"Company", filters.get("company"), "default_finance_book"
 		)
 
@@ -286,9 +286,11 @@
 
 	all_accounts = []
 	for d in accounts:
-		if frappe.db.exists("Account", d):
-			lft, rgt = frappe.db.get_value("Account", d, ["lft", "rgt"])
-			children = frappe.get_all("Account", filters={"lft": [">=", lft], "rgt": ["<=", rgt]})
+		account = frappe.get_cached_doc("Account", d)
+		if account:
+			children = frappe.get_all(
+				"Account", filters={"lft": [">=", account.lft], "rgt": ["<=", account.rgt]}
+			)
 			all_accounts += [c.name for c in children]
 		else:
 			frappe.throw(_("Account: {0} does not exist").format(d))
diff --git a/erpnext/accounts/report/purchase_register/purchase_register.py b/erpnext/accounts/report/purchase_register/purchase_register.py
index e8a1e79..a05d581 100644
--- a/erpnext/accounts/report/purchase_register/purchase_register.py
+++ b/erpnext/accounts/report/purchase_register/purchase_register.py
@@ -232,12 +232,12 @@
 
 					conditions += (
 						common_condition
-						+ "and ifnull(`tabPurchase Invoice Item`.{0}, '') in %({0})s)".format(dimension.fieldname)
+						+ "and ifnull(`tabPurchase Invoice`.{0}, '') in %({0})s)".format(dimension.fieldname)
 					)
 				else:
 					conditions += (
 						common_condition
-						+ "and ifnull(`tabPurchase Invoice Item`.{0}, '') in %({0})s)".format(dimension.fieldname)
+						+ "and ifnull(`tabPurchase Invoice`.{0}, '') in %({0})s)".format(dimension.fieldname)
 					)
 
 	return conditions
diff --git a/erpnext/accounts/report/sales_register/sales_register.py b/erpnext/accounts/report/sales_register/sales_register.py
index 06e3c61..b333901 100644
--- a/erpnext/accounts/report/sales_register/sales_register.py
+++ b/erpnext/accounts/report/sales_register/sales_register.py
@@ -390,12 +390,12 @@
 
 					conditions += (
 						common_condition
-						+ "and ifnull(`tabSales Invoice Item`.{0}, '') in %({0})s)".format(dimension.fieldname)
+						+ "and ifnull(`tabSales Invoice`.{0}, '') in %({0})s)".format(dimension.fieldname)
 					)
 				else:
 					conditions += (
 						common_condition
-						+ "and ifnull(`tabSales Invoice Item`.{0}, '') in %({0})s)".format(dimension.fieldname)
+						+ "and ifnull(`tabSales Invoice`.{0}, '') in %({0})s)".format(dimension.fieldname)
 					)
 
 	return conditions
diff --git a/erpnext/accounts/report/trial_balance/trial_balance.py b/erpnext/accounts/report/trial_balance/trial_balance.py
index 6d2cd8e..3af01fd 100644
--- a/erpnext/accounts/report/trial_balance/trial_balance.py
+++ b/erpnext/accounts/report/trial_balance/trial_balance.py
@@ -38,7 +38,7 @@
 	if not filters.fiscal_year:
 		frappe.throw(_("Fiscal Year {0} is required").format(filters.fiscal_year))
 
-	fiscal_year = frappe.db.get_value(
+	fiscal_year = frappe.get_cached_value(
 		"Fiscal Year", filters.fiscal_year, ["year_start_date", "year_end_date"], as_dict=True
 	)
 	if not fiscal_year:
@@ -177,7 +177,7 @@
 		"year_start_date": filters.year_start_date,
 		"project": filters.project,
 		"finance_book": filters.finance_book,
-		"company_fb": frappe.db.get_value("Company", filters.company, "default_finance_book"),
+		"company_fb": frappe.get_cached_value("Company", filters.company, "default_finance_book"),
 	}
 
 	if accounting_dimensions:
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 103c154..41702d6 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -975,7 +975,7 @@
 def create_payment_gateway_account(gateway, payment_channel="Email"):
 	from erpnext.setup.setup_wizard.operations.install_fixtures import create_bank_account
 
-	company = frappe.db.get_value("Global Defaults", None, "default_company")
+	company = frappe.get_cached_value("Global Defaults", "Global Defaults", "default_company")
 	if not company:
 		return
 
diff --git a/erpnext/assets/doctype/asset/test_asset.py b/erpnext/assets/doctype/asset/test_asset.py
index 19c913a..136a033 100644
--- a/erpnext/assets/doctype/asset/test_asset.py
+++ b/erpnext/assets/doctype/asset/test_asset.py
@@ -224,7 +224,10 @@
 			asset.finance_books[0], 9000, get_last_day(add_months(purchase_date, 1)), date
 		)
 		pro_rata_amount = flt(pro_rata_amount, asset.precision("gross_purchase_amount"))
-		self.assertEquals(accumulated_depr_amount, 18000.00 + pro_rata_amount)
+		self.assertEquals(
+			accumulated_depr_amount,
+			flt(18000.0 + pro_rata_amount, asset.precision("gross_purchase_amount")),
+		)
 
 		self.assertEqual(asset.status, "Scrapped")
 		self.assertTrue(asset.journal_entry_for_scrap)
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.json b/erpnext/buying/doctype/purchase_order/purchase_order.json
index ded45b8..9349626 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order.json
+++ b/erpnext/buying/doctype/purchase_order/purchase_order.json
@@ -54,6 +54,8 @@
   "column_break_26",
   "total",
   "net_total",
+  "tax_withholding_net_total",
+  "base_tax_withholding_net_total",
   "section_break_48",
   "pricing_rules",
   "raw_material_details",
@@ -65,6 +67,7 @@
   "tax_category",
   "column_break_50",
   "shipping_rule",
+  "incoterm",
   "section_break_52",
   "taxes",
   "totals",
@@ -1221,19 +1224,45 @@
    "oldfieldtype": "Section Break"
   },
   {
+   "default": "0",
+   "fieldname": "tax_withholding_net_total",
+   "fieldtype": "Currency",
+   "hidden": 1,
+   "label": "Tax Withholding Net Total",
+   "no_copy": 1,
+   "options": "currency",
+   "read_only": 1
+  },
+  {
+   "fieldname": "base_tax_withholding_net_total",
+   "fieldtype": "Currency",
+   "hidden": 1,
+   "label": "Base Tax Withholding Net Total",
+   "no_copy": 1,
+   "options": "currency",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
    "fieldname": "column_break_99",
    "fieldtype": "Column Break"
   },
   {
    "fieldname": "column_break_103",
    "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-file-text",
  "idx": 105,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-11-17 12:34:36.033363",
+ "modified": "2022-11-17 17:28:07.729943",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Purchase Order",
diff --git a/erpnext/buying/doctype/purchase_order/test_purchase_order.py b/erpnext/buying/doctype/purchase_order/test_purchase_order.py
index 5206a42..291d756 100644
--- a/erpnext/buying/doctype/purchase_order/test_purchase_order.py
+++ b/erpnext/buying/doctype/purchase_order/test_purchase_order.py
@@ -736,27 +736,29 @@
 	def test_advance_paid_upon_payment_entry_cancellation(self):
 		from erpnext.accounts.doctype.payment_entry.test_payment_entry import get_payment_entry
 
-		po_doc = create_purchase_order()
+		po_doc = create_purchase_order(supplier="_Test Supplier USD", currency="USD", do_not_submit=1)
+		po_doc.conversion_rate = 80
+		po_doc.submit()
 
-		pe = get_payment_entry("Purchase Order", po_doc.name, bank_account="_Test Bank - _TC")
-		pe.reference_no = "1"
-		pe.reference_date = nowdate()
-		pe.paid_from_account_currency = po_doc.currency
-		pe.paid_to_account_currency = po_doc.currency
-		pe.source_exchange_rate = 1
+		pe = get_payment_entry("Purchase Order", po_doc.name)
+		pe.mode_of_payment = "Cash"
+		pe.paid_from = "Cash - _TC"
+		pe.source_exchange_rate = 80
 		pe.target_exchange_rate = 1
 		pe.paid_amount = po_doc.grand_total
 		pe.save(ignore_permissions=True)
 		pe.submit()
 
 		po_doc.reload()
-		self.assertEqual(po_doc.advance_paid, po_doc.base_grand_total)
+		self.assertEqual(po_doc.advance_paid, po_doc.grand_total)
+		self.assertEqual(po_doc.party_account_currency, "USD")
 
 		pe_doc = frappe.get_doc("Payment Entry", pe.name)
 		pe_doc.cancel()
 
 		po_doc.reload()
 		self.assertEqual(po_doc.advance_paid, 0)
+		self.assertEqual(po_doc.party_account_currency, "USD")
 
 	def test_schedule_date(self):
 		po = create_purchase_order(do_not_submit=True)
diff --git a/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json b/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json
index b8203bd..d471783 100644
--- a/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json
+++ b/erpnext/buying/doctype/purchase_order_item/purchase_order_item.json
@@ -44,6 +44,7 @@
   "discount_amount",
   "base_rate_with_margin",
   "sec_break2",
+  "apply_tds",
   "rate",
   "amount",
   "item_tax_template",
@@ -889,6 +890,12 @@
   {
    "fieldname": "column_break_54",
    "fieldtype": "Column Break"
+  },
+  {
+   "default": "1",
+   "fieldname": "apply_tds",
+   "fieldtype": "Check",
+   "label": "Apply TDS"
   }
  ],
  "idx": 1,
diff --git a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json
index 083cab7..019d45b 100644
--- a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json
+++ b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json
@@ -28,6 +28,7 @@
   "sec_break_email_2",
   "message_for_supplier",
   "terms_section_break",
+  "incoterm",
   "tc_name",
   "terms",
   "printing_settings",
@@ -271,13 +272,19 @@
    "fieldname": "schedule_date",
    "fieldtype": "Date",
    "label": "Required Date"
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-shopping-cart",
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-04-06 17:47:49.909000",
+ "modified": "2022-11-17 17:26:33.770993",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Request for Quotation",
@@ -345,5 +352,6 @@
  "search_fields": "status, transaction_date",
  "show_name_in_global_search": 1,
  "sort_field": "modified",
- "sort_order": "DESC"
-}
+ "sort_order": "DESC",
+ "states": []
+}
\ No newline at end of file
diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json
index 1636561..7776ab8 100644
--- a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json
+++ b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json
@@ -45,6 +45,7 @@
   "tax_category",
   "column_break_36",
   "shipping_rule",
+  "incoterm",
   "section_break_38",
   "taxes",
   "totals",
@@ -823,6 +824,12 @@
   {
    "fieldname": "column_break_85",
    "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-shopping-cart",
@@ -830,7 +837,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-09-27 18:20:09.462037",
+ "modified": "2022-11-17 17:27:32.179686",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Supplier Quotation",
diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index 216c9f4..1849e8b 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -1352,12 +1352,12 @@
 		party = self.customer if self.doctype == "Sales Order" else self.supplier
 		advance = (
 			frappe.qb.from_(ple)
-			.select(ple.account_currency, Abs(Sum(ple.amount)).as_("amount"))
+			.select(ple.account_currency, Abs(Sum(ple.amount_in_account_currency)).as_("amount"))
 			.where(
 				(ple.against_voucher_type == self.doctype)
 				& (ple.against_voucher_no == self.name)
 				& (ple.party == party)
-				& (ple.delinked == 0)
+				& (ple.docstatus == 1)
 				& (ple.company == self.company)
 			)
 			.run(as_dict=True)
diff --git a/erpnext/controllers/selling_controller.py b/erpnext/controllers/selling_controller.py
index e8e9076..88d2f06 100644
--- a/erpnext/controllers/selling_controller.py
+++ b/erpnext/controllers/selling_controller.py
@@ -581,6 +581,7 @@
 			"customer_address": "address_display",
 			"shipping_address_name": "shipping_address",
 			"company_address": "company_address_display",
+			"dispatch_address_name": "dispatch_address",
 		}
 
 		for address_field, address_display_field in address_dict.items():
diff --git a/erpnext/crm/utils.py b/erpnext/crm/utils.py
index 433d974..7374520 100644
--- a/erpnext/crm/utils.py
+++ b/erpnext/crm/utils.py
@@ -120,7 +120,7 @@
 		todo_doc = frappe.get_doc("ToDo", todo.name)
 		todo_doc.reference_type = doc.doctype
 		todo_doc.reference_name = doc.name
-		todo_doc.db_update()
+		todo_doc.save()
 
 
 def link_open_events(ref_doctype, ref_docname, doc):
diff --git a/erpnext/erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.py b/erpnext/erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.py
index b93c5c4..da56997 100644
--- a/erpnext/erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.py
+++ b/erpnext/erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.py
@@ -1345,7 +1345,7 @@
 		)[0]["name"]
 
 	def _publish(self, *args, **kwargs):
-		frappe.publish_realtime("quickbooks_progress_update", *args, **kwargs)
+		frappe.publish_realtime("quickbooks_progress_update", *args, **kwargs, user=self.modified_by)
 
 	def _get_unique_account_name(self, quickbooks_name, number=0):
 		if number:
diff --git a/erpnext/erpnext_integrations/doctype/tally_migration/tally_migration.py b/erpnext/erpnext_integrations/doctype/tally_migration/tally_migration.py
index cd4aaee..e6840f5 100644
--- a/erpnext/erpnext_integrations/doctype/tally_migration/tally_migration.py
+++ b/erpnext/erpnext_integrations/doctype/tally_migration/tally_migration.py
@@ -304,6 +304,7 @@
 		frappe.publish_realtime(
 			"tally_migration_progress_update",
 			{"title": title, "message": message, "count": count, "total": total},
+			user=self.modified_by,
 		)
 
 	def _import_master_data(self):
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_nexus/taxjar_nexus.json b/erpnext/erpnext_integrations/doctype/taxjar_nexus/taxjar_nexus.json
deleted file mode 100644
index d4d4a51..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_nexus/taxjar_nexus.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "actions": [],
- "allow_rename": 1,
- "creation": "2021-09-11 05:09:53.773838",
- "doctype": "DocType",
- "engine": "InnoDB",
- "field_order": [
-  "region",
-  "region_code",
-  "country",
-  "country_code"
- ],
- "fields": [
-  {
-   "fieldname": "region",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Region"
-  },
-  {
-   "fieldname": "region_code",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Region Code"
-  },
-  {
-   "fieldname": "country",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Country"
-  },
-  {
-   "fieldname": "country_code",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Country Code"
-  }
- ],
- "index_web_pages_for_search": 1,
- "istable": 1,
- "links": [],
- "modified": "2021-09-14 05:33:06.444710",
- "modified_by": "Administrator",
- "module": "ERPNext Integrations",
- "name": "TaxJar Nexus",
- "owner": "Administrator",
- "permissions": [],
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_nexus/taxjar_nexus.py b/erpnext/erpnext_integrations/doctype/taxjar_nexus/taxjar_nexus.py
deleted file mode 100644
index c24aa8c..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_nexus/taxjar_nexus.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2021, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-# import frappe
-from frappe.model.document import Document
-
-
-class TaxJarNexus(Document):
-	pass
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_settings/__init__.py b/erpnext/erpnext_integrations/doctype/taxjar_settings/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_settings/__init__.py
+++ /dev/null
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_settings/product_tax_category_data.json b/erpnext/erpnext_integrations/doctype/taxjar_settings/product_tax_category_data.json
deleted file mode 100644
index 4527bb2..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_settings/product_tax_category_data.json
+++ /dev/null
@@ -1,4084 +0,0 @@
-{
-    "categories": [
-        {
-            "description": "An item commonly used by a student in a course of study.  This category is limited to the following items...binders, blackboard chalk, cellophane tape, compasses, composition books, crayons, erasers, folders, glue/paste/glue sticks, highlighters, index cards, index card boxes, legal pads, lunch boxes, markers, notebooks, paper (copy, graph, tracing, manila, colored, construction, notebook), pencils, pencil boxes, pencil sharpeners, pens, posterboard, protractors, rulers, scissors, writing tablets.",
-            "name": "School Supplies",
-            "product_tax_code": "44121600A0001"
-        },
-        {
-            "description": "This is a labor charge for: the planning and design of interior spaces; preparation of layout drawings, schedules, and specifications pertaining to the planning and design of interior spaces; furniture arranging; design and planning of furniture, fixtures, and cabinetry; staging; lighting and sound design; and the selection, purchase, and arrangement of surface coverings, draperies, furniture, and other decorations.",
-            "name": "Interior Decorating Services",
-            "product_tax_code": "73890600A0000"
-        },
-        {
-            "description": "Ammunition for firearms with a barrel greater than an internal diameter of .50 caliber or a shotgun larger than 10 gauge., including bullets, shotgun shells, and gunpowder.",
-            "name": "Ammunition - designed for firearms other than small arms.",
-            "product_tax_code": "46101600A0002"
-        },
-        {
-            "description": "Firearms, limited to pistols, revolvers, rifles with a barrel greater than an internal diameter of .50 caliber or a shotgun larger than 10 gauge.",
-            "name": "Firearms - other than small arms",
-            "product_tax_code": "46101500A0002"
-        },
-        {
-            "description": "A charge for an objective visual examination of a house’s systems and physical structure. The charge includes a report of the inspector's findings including pictures, analysis, and recommendations.",
-            "name": "Home Inspection Services",
-            "product_tax_code": "80131802A0001"
-        },
-        {
-            "description": "A charge for custodial services to residential structures, including the cleaning of floors, carpets, walls, windows, appliances, furniture, fixtures, exterior cleaning, etc. No Tangible Personal Property is transferred.",
-            "name": "Cleaning/Janitorial Services - Residential",
-            "product_tax_code": "76111501A0001"
-        },
-        {
-            "description": "A subscription service for membership to an online dating platform.",
-            "name": "Online Dating Services",
-            "product_tax_code": "91000000A1111"
-        },
-        {
-            "description": "A charge for the service to maintain the proper operation of home or building gutters through cleaning out debris that could otherwise affect the proper water flow through the gutter system.",
-            "name": "Gutter Cleaning Services",
-            "product_tax_code": "72152602A0001"
-        },
-        {
-            "description": "Clothing - Swim Fins",
-            "name": "Clothing - Swim Fins",
-            "product_tax_code": "4914606A0001"
-        },
-        {
-            "description": "A series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.  These goods can be streamed and/or downloaded to a device with permanent access granted.  These goods include motion pictures, music videos, animations, news and entertainment programs, and live events, but do not include video greeting cards or video or electronic games.",
-            "name": "Digital Audio Visual Works - bundle - downloaded with permanent rights and streamed - non subscription",
-            "product_tax_code": "55111516A0110"
-        },
-        {
-            "description": "A series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.  These goods can be streamed and/or downloaded to a device with access that expires after a stated period of time.  These goods include motion pictures, music videos, animations, news and entertainment programs, and live events, but do not include video greeting cards or video or electronic games.",
-            "name": "Digital Audio Visual Works - bundle - downloaded with limited rights and streamed - non subscription",
-            "product_tax_code": "55111516A0210"
-        },
-        {
-            "description": "A series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.  These goods are downloaded to a device with access that expires after a stated period of time.  These goods include motion pictures, music videos, animations, news and entertainment programs, and live events, but do not include video greeting cards or video or electronic games.",
-            "name": "Digital Audio Visual Works - downloaded - non subscription - with limited rights",
-            "product_tax_code": "55111516A0020"
-        },
-        {
-            "description": "A series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.  These goods are downloaded to a device with permanent access granted.  These goods include motion pictures, music videos, animations, news and entertainment programs, and live events, but do not include video greeting cards or video or electronic games.",
-            "name": "Digital Audio Visual Works - downloaded - non subscription - with permanent rights",
-            "product_tax_code": "55111516A0010"
-        },
-        {
-            "description": "A series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.  These goods are streamed to a device with access that expires after a stated period of time.  These goods include motion pictures, music videos, animations, news and entertainment programs, and live events, but do not include video greeting cards or video or electronic games.",
-            "name": "Digital Audio Visual Works - streamed - non subscription - with limited rights",
-            "product_tax_code": "55111516A0030"
-        },
-        {
-            "description": "A series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.  These goods are streamed to a device with access that is conditioned upon continued subscription payment.  These goods include motion pictures, music videos, animations, news and entertainment programs, and live events, but do not include video greeting cards or video or electronic games.",
-            "name": "Digital Audio Visual Works - streamed - subscription - with conditional rights",
-            "product_tax_code": "55111516A0040"
-        },
-        {
-            "description": "A series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.  These goods are streamed and/or downloaded to a device with access that is conditioned upon continued subscription payment.  These goods include motion pictures, music videos, animations, news and entertainment programs, and live events, but do not include video greeting cards or video or electronic games.",
-            "name": "Digital Audio Visual Works - bundle - downloaded and streamed - subscription - with conditional rights",
-            "product_tax_code": "55111516A0310"
-        },
-        {
-            "description": "Works that result from the fixation of a series of musical, spoken, or other sounds that are transferred electronically.  These goods are streamed to a device with access that is conditioned upon continued subscription payment.  These goods include prerecorded or live music, prerecorded or live readings of books or other written materials, prerecorded or live speeches, ringtones, or other sound recordings, but not including audio greeting cards.",
-            "name": "Digital Audio Works - streamed - subscription - with conditional rights",
-            "product_tax_code": "55111512A0040"
-        },
-        {
-            "description": "Works that result from the fixation of a series of musical, spoken, or other sounds that are transferred electronically.  These goods are streamed to a device with access that expires after a stated period of time.  These goods include prerecorded or live music, prerecorded or live readings of books or other written materials, prerecorded or live speeches, ringtones, or other sound recordings, but not including audio greeting cards.",
-            "name": "Digital Audio Works - streamed - non subscription - with limited rights",
-            "product_tax_code": "55111512A0030"
-        },
-        {
-            "description": "Works that result from the fixation of a series of musical, spoken, or other sounds that are transferred electronically.  These goods are downloaded to a device with permanent access granted.  These goods include prerecorded or live music, prerecorded or live readings of books or other written materials, prerecorded or live speeches, ringtones, or other sound recordings, but not including audio greeting cards.",
-            "name": "Digital Audio Works - downloaded - non subscription - with permanent rights",
-            "product_tax_code": "55111512A0010"
-        },
-        {
-            "description": "Works that result from the fixation of a series of musical, spoken, or other sounds that are transferred electronically.  These goods are downloaded to a device with access that expires after a stated period of time.  These goods include prerecorded or live music, prerecorded or live readings of books or other written materials, prerecorded or live speeches, ringtones, or other sound recordings, but not including audio greeting cards.",
-            "name": "Digital Audio Works - downloaded - non subscription - with limited rights",
-            "product_tax_code": "55111512A0020"
-        },
-        {
-            "description": "A digital version of a traditional newspaper published at regular intervals with the entire publication or individual articles viewable (but not downloadable) on a device with access that is conditioned upon continued subscription payment.",
-            "name": "Digital Newspapers - viewable only - subscription - with conditional rights",
-            "product_tax_code": "55111507A0060"
-        },
-        {
-            "description": "A digital version of a traditional newspaper published at regular intervals with the entire publication or individual articles viewable (but not downloadable) on a device with permanent access granted.  The publication is accessed without a subscription.",
-            "name": "Digital Newspapers - viewable only - non subscription - with permanent rights",
-            "product_tax_code": "55111507A0040"
-        },
-        {
-            "description": "A digital version of a traditional newspaper published at regular intervals with the entire publication or individual articles viewable (but not downloadable) on a device with access that expires after a stated period of time.  The publication is accessed without a subscription.",
-            "name": "Digital Newspapers - viewable only - non subscription - with limited rights",
-            "product_tax_code": "55111507A0030"
-        },
-        {
-            "description": "A digital version of a traditional newspaper published at regular intervals.  The publication is accessed via a subscription which also entitles the purchaser to physical copies of the media.",
-            "name": "Digital Newspapers - subscription tangible and digital",
-            "product_tax_code": "55111507A0070"
-        },
-        {
-            "description": "A digital version of a traditional newspaper published at regular intervals with the entire publication or individual articles downloaded to a device with access that is conditioned upon continued subscription payment.",
-            "name": "Digital Newspapers - downloadable - subscription - with conditional rights",
-            "product_tax_code": "55111507A0050"
-        },
-        {
-            "description": "A digital version of a traditional newspaper published at regular intervals with the entire publication or individual articles downloaded to a device with permanent access granted.  The publication is accessed without a subscription.",
-            "name": "Digital Newspapers - downloadable - non subscription - with permanent rights",
-            "product_tax_code": "55111507A0010"
-        },
-        {
-            "description": "A digital version of a traditional newspaper published at regular intervals with the entire publication or individual articles downloaded to a device with access that expires after a stated period of time.  The publication is accessed without a subscription.",
-            "name": "Digital Newspapers - downloadable - non subscription - with limited rights",
-            "product_tax_code": "55111507A0020"
-        },
-        {
-            "description": "A digital version of a traditional periodical published at regular intervals with the entire publication or individual articles viewable (but not downloadable) on a device with access that is conditioned upon continued subscription payment.",
-            "name": "Digital Magazines/Periodicals - viewable only - subscription - with conditional rights",
-            "product_tax_code": "55111506A0060"
-        },
-        {
-            "description": "A digital version of a traditional periodical published at regular intervals with the entire publication or individual articles viewable (but not downloadable) on a device with permanent access granted.  The publication is accessed without a subscription.",
-            "name": "Digital Magazines/Periodicals - viewable only - non subscription - with permanent rights",
-            "product_tax_code": "55111506A0040"
-        },
-        {
-            "description": "A digital version of a traditional periodical published at regular intervals with the entire publication or individual articles viewable (but not downloadable) on a device with access that expires after a stated period of time.  The publication is accessed without a subscription.",
-            "name": "Digital Magazines/Periodicals - viewable only - non subscription - with limited rights",
-            "product_tax_code": "55111506A0030"
-        },
-        {
-            "description": "A digital version of a traditional magazine published at regular intervals.  The publication is accessed via a subscription which also entitles the purchaser to physical copies of the media.",
-            "name": "Digital Magazines/Periodicals - subscription tangible and digital",
-            "product_tax_code": "55111506A0070"
-        },
-        {
-            "description": "A digital version of a traditional periodical published at regular intervals with the entire publication or individual articles downloaded to a device with access that is conditioned upon continued subscription payment.",
-            "name": "Digital Magazines/Periodicals - downloadable - subscription - with conditional rights",
-            "product_tax_code": "55111506A0050"
-        },
-        {
-            "description": "A digital version of a traditional periodical published at regular intervals with the entire publication or individual articles downloaded to a device with permanent access granted.  The publication is accessed without a subscription.",
-            "name": "Digital Magazines/Periodicals - downloadable - non subscription - with permanent rights",
-            "product_tax_code": "55111506A0010"
-        },
-        {
-            "description": "A digital version of a traditional periodical published at regular intervals with the entire publication or individual articles downloaded to a device with access that expires after a stated period of time.  The publication is accessed without a subscription.",
-            "name": "Digital Magazines/Periodicals - downloadable - non subscription - with limited rights",
-            "product_tax_code": "55111506A0020"
-        },
-        {
-            "description": "Works that are generally recognized in the ordinary and usual sense as books and are transferred electronically.  These goods are viewable (but not downloadable) on a device with access that is conditioned upon continued subscription payment.  These goods include novels, autobiographies, encyclopedias, dictionaries, repair manuals, phone directories, business directories, zip code directories, cookbooks, etc.",
-            "name": "Digital Books - viewable only - subscription - with conditional rights",
-            "product_tax_code": "55111505A0060"
-        },
-        {
-            "description": "Works that are generally recognized in the ordinary and usual sense as books and are transferred electronically.  These goods are downloaded to a device with access that is conditioned upon continued subscription payment.  These goods include novels, autobiographies, encyclopedias, dictionaries, repair manuals, phone directories, business directories, zip code directories, cookbooks, etc.",
-            "name": "Digital Books - downloaded - subscription - with conditional rights",
-            "product_tax_code": "55111505A0050"
-        },
-        {
-            "description": "Works that are generally recognized in the ordinary and usual sense as books and are transferred electronically.  These goods are downloaded to a device with permanent access granted.  These goods include novels, autobiographies, encyclopedias, dictionaries, repair manuals, phone directories, business directories, zip code directories, cookbooks, etc.",
-            "name": "Digital Books - downloaded - non subscription - with permanent rights",
-            "product_tax_code": "55111505A0010"
-        },
-        {
-            "description": "Works that are generally recognized in the ordinary and usual sense as books and are transferred electronically.  These goods are downloaded to a device with access that expires after a stated period of time.  These goods include novels, autobiographies, encyclopedias, dictionaries, repair manuals, phone directories, business directories, zip code directories, cookbooks, etc.",
-            "name": "Digital Books - downloaded - non subscription - with limited rights",
-            "product_tax_code": "55111505A0020"
-        },
-        {
-            "description": "The final art used for actual reproduction by photomechanical or other processes or for display purposes, but does not include website or home page design, and that is transferred electronically.  These goods are downloaded to a device with access that is conditioned upon continued subscription payment.  These goods include drawings, paintings, designs, photographs, lettering, paste-ups, mechanicals, assemblies, charts, graphs, illustrative materials, etc.",
-            "name": "Digital Finished Artwork - downloaded - subscription - with conditional rights",
-            "product_tax_code": "82141502A0050"
-        },
-        {
-            "description": "The final art used for actual reproduction by photomechanical or other processes or for display purposes, but does not include website or home page design, and that is transferred electronically.  These goods are downloaded to a device with permanent access granted.  These goods include drawings, paintings, designs, photographs, lettering, paste-ups, mechanicals, assemblies, charts, graphs, illustrative materials, etc.",
-            "name": "Digital Finished Artwork - downloaded - non subscription - with permanent rights",
-            "product_tax_code": "82141502A0010"
-        },
-        {
-            "description": "The final art used for actual reproduction by photomechanical or other processes or for display purposes, but does not include website or home page design, and that is transferred electronically.  These goods are downloaded to a device with access that expires after a stated period of time.  These goods include drawings, paintings, designs, photographs, lettering, paste-ups, mechanicals, assemblies, charts, graphs, illustrative materials, etc.",
-            "name": "Digital Finished Artwork - downloaded - non subscription - with limited rights",
-            "product_tax_code": "82141502A0020"
-        },
-        {
-            "description": "Individual digital news articles, newsletters, and other stand-alone documents.  These goods are viewable (but not downloadable) on a device with access that is conditioned upon continued subscription payment.",
-            "name": "Digital other news or documents - viewable only - subscription - with conditional rights",
-            "product_tax_code": "82111900A0002"
-        },
-        {
-            "description": "Individual digital news articles, newsletters, and other stand-alone documents.  These goods are viewable (but not downloadable) on a device with permanent access granted.",
-            "name": "Digital other news or documents - viewable only - non subscription - with permanent rights",
-            "product_tax_code": "82111900A0005"
-        },
-        {
-            "description": "Individual digital news articles, newsletters, and other stand-alone documents.  These goods are viewable (but not downloadable) on a device with access that expires after a stated period of time.",
-            "name": "Digital other news or documents - viewable only - non subscription - with limited rights",
-            "product_tax_code": "82111900A0006"
-        },
-        {
-            "description": "Individual digital news articles, newsletters, and other stand-alone documents.  These goods are downloaded to a device with access that is conditioned upon continued subscription payment.",
-            "name": "Digital other news or documents - downloadable - subscription - with conditional rights",
-            "product_tax_code": "82111900A0001"
-        },
-        {
-            "description": "Individual digital news articles, newsletters, and other stand-alone documents.  These goods are downloaded to a device with permanent access granted.  These publications are accessed without a subscription.",
-            "name": "Digital other news or documents - downloadable - non subscription - with permanent rights",
-            "product_tax_code": "82111900A0003"
-        },
-        {
-            "description": "Individual digital news articles, newsletters, and other stand-alone documents.  These goods are downloaded to a device with access that expires after a stated period of time.",
-            "name": "Digital other news or documents - downloadable - non subscription - with limited rights",
-            "product_tax_code": "82111900A0004"
-        },
-        {
-            "description": "Works that are required as part of a formal academic education program and are transferred electronically.  These goods are downloaded to a device with permanent access granted.",
-            "name": "Digital School Textbooks - downloaded - non subscription - with permanent rights",
-            "product_tax_code": "55111513A0010"
-        },
-        {
-            "description": "Works that are required as part of a formal academic education program and are transferred electronically.  These goods are downloaded to a device with access that expires after a stated period of time.",
-            "name": "Digital School Textbooks - downloaded - non subscription - with limited rights",
-            "product_tax_code": "55111513A0020"
-        },
-        {
-            "description": "An electronic greeting \"card\" typically sent via email that contains only static images or text, rather than an audio visual or audio only experience.",
-            "name": "Digital Greeting Cards - Static text and/or images only",
-            "product_tax_code": "14111605A0003"
-        },
-        {
-            "description": "An electronic greeting \"card\" typically sent via email that contains a series of related images which, when shown in succession, impart an impression of motion, together with accompanying sounds, if any.",
-            "name": "Digital Greeting Cards - Audio Visual",
-            "product_tax_code": "14111605A0001"
-        },
-        {
-            "description": "An electronic greeting \"card\" typically sent via email that contains an audio only message.",
-            "name": "Digital Greeting Cards - Audio Only",
-            "product_tax_code": "14111605A0002"
-        },
-        {
-            "description": "Digital images that are downloaded to a device with permanent access granted.",
-            "name": "Digital Photographs/Images - downloaded - non subscription - with permanent rights for permanent use",
-            "product_tax_code": "60121011A0001"
-        },
-        {
-            "description": "Video or electronic games in the common sense are transferred electronically.  These goods are streamed to a device with access that is conditioned upon continued subscription payment.",
-            "name": "Video Games - streamed - subscription - with conditional rights",
-            "product_tax_code": "60141104A0040"
-        },
-        {
-            "description": "Video or electronic games in the common sense are transferred electronically.  These goods are streamed to a device with access that expires after a stated period of time.",
-            "name": "Video Games - streamed - non subscription - with limited rights",
-            "product_tax_code": "60141104A0030"
-        },
-        {
-            "description": "Video or electronic games in the common sense are transferred electronically.  These goods are downloaded to a device with access that is conditioned upon continued subscription payment.",
-            "name": "Video Games - downloaded - subscription - with conditional rights",
-            "product_tax_code": "60141104A0050"
-        },
-        {
-            "description": "Video or electronic games in the common sense are transferred electronically.  These goods are downloaded to a device with permanent access granted.",
-            "name": "Video Games - downloaded - non subscription - with permanent rights",
-            "product_tax_code": "60141104A0010"
-        },
-        {
-            "description": "Video or electronic games in the common sense are transferred electronically.  These goods are downloaded to a device with access that expires after a stated period of time.",
-            "name": "Video Games - downloaded - non subscription - with limited rights",
-            "product_tax_code": "60141104A0020"
-        },
-        {
-            "description": "The conceptualize, design, program or maintain a website. The code is unique to a particular client's website.",
-            "name": "Web Site Design",
-            "product_tax_code": "81112103A0000"
-        },
-        {
-            "description": "The process of renting or buying space to house a website on the World Wide Web. Website content such as HTML, CSS, and images has to be housed on a server to be viewable online.",
-            "name": "Web Hosting Services",
-            "product_tax_code": "81112105A0000"
-        },
-        {
-            "description": "A charge separately stated from the sale of the product itself that entitles the purchaser to future repair and labor services to return the defective item of tangible personal property to its original state.  The warranty contract is optional to the purchaser.  Motor vehicle warranties are excluded.",
-            "name": "Warranty - Optional",
-            "product_tax_code": "81111818A0000"
-        },
-        {
-            "description": "A charge separately stated from the sale of the product itself that entitles the purchaser to future repair and labor services to return the defective item of tangible personal property to its original state.  The warranty contract is mandatory and is required to be purchased on conjunction with the purchased tangible personal property.  Motor vehicle warranties are excluded.",
-            "name": "Warranty - Mandatory",
-            "product_tax_code": "81111818A0001"
-        },
-        {
-            "description": "Personal or small group teaching, designed to help people who need extra help with their studies",
-            "name": "Tutoring",
-            "product_tax_code": "86132001A0000"
-        },
-        {
-            "description": "Self Study web based training, not instructor led.  This does not include downloads of video replays.",
-            "name": "Training Services - Self Study Web Based",
-            "product_tax_code": "86132000A0002"
-        },
-        {
-            "description": "Live training web based.  This does not include video replays of the instruction or course.",
-            "name": "Training Services - Live Virtual",
-            "product_tax_code": "86132201A0000"
-        },
-        {
-            "description": "Charges for installing, configuring, debugging, modifying, testing, or troubleshooting computer  hardware,  networks,  programs  or  software.  Labor only charge.",
-            "name": "Technical Support Services",
-            "product_tax_code": "81111811A0001"
-        },
-        {
-            "description": "A charge to preserve an animal's body via mounting or stuffing, for the purpose of display or study.  The customer provide the animal.  This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Taxidermy Services",
-            "product_tax_code": "82151508A0000"
-        },
-        {
-            "description": "A charge to have files or documents shredded either onsite or offsite.",
-            "name": "Shredding Service",
-            "product_tax_code": "44101603A9007"
-        },
-        {
-            "description": "A charge to repair or restore footwear was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.  Note: This product tax code will partially apply tax in CA, MI, IL.",
-            "name": "Shoe Repair",
-            "product_tax_code": "53111600A9007"
-        },
-        {
-            "description": "A charge for the printing, imprinting, lithographing, mimeographing, photocopying, and similar reproductions of various articles including mailers, catalogs, letterhead, envelopes, business cards, presentation folders, forms, signage, etc.  The end result is the transfer of tangible personal property to the customer.",
-            "name": "Printing",
-            "product_tax_code": "82121500A0000"
-        },
-        {
-            "description": "Service processing payroll checks and tracking payroll data; including printing employees’ payroll checks, pay statements, management reports, tracking payroll taxes, preparing tax returns and producing W-2’s for distribution.",
-            "name": "Payroll Services",
-            "product_tax_code": "87210202A0000"
-        },
-        {
-            "description": "A charge to repair or restore to operating condition a motor vehicle that was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Motor Vehicle Repair",
-            "product_tax_code": "25100000A9007"
-        },
-        {
-            "description": "A charge to make customer provided meat suitable for human consumption, typically referred to a butcher or slaughter services.",
-            "name": "Meat Processing",
-            "product_tax_code": "42447000A0000"
-        },
-        {
-            "description": "A charge to repair or restore to operating condition a machine that was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Machine Repair",
-            "product_tax_code": "23019007A0000"
-        },
-        {
-            "description": "A charge to provide laundry services to linens and the like. This charge is not for clothing items. The business customer is the owner of the items being cleaned.",
-            "name": "Linen Services - Laundry only - items other than clothing",
-            "product_tax_code": "91111502A1601"
-        },
-        {
-            "description": "A charge to provide laundry services to clothing. The business customer is the owner of the items being cleaned.",
-            "name": "Linen Services - Laundry only",
-            "product_tax_code": "91111502A1600"
-        },
-        {
-            "description": "A charge to repair or restore jewelry that was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Jewelry Repair",
-            "product_tax_code": "54119007A0000"
-        },
-        {
-            "description": "A charge for the wrapping of articles in a box or bag with paper and other decorative additions.  The wrapping not linked the purchased of the article(s) and is performed by a party other vendor of the article(s).",
-            "name": "Gift Wrapping - separate from purchase of article",
-            "product_tax_code": "14111601A9007"
-        },
-        {
-            "description": "A charge for the wrapping of articles in a box or bag with paper and other decorative additions. The charge is separately stated from the article.",
-            "name": "Gift Wrapping - in conjunction with purchase of article",
-            "product_tax_code": "14111601A0001"
-        },
-        {
-            "description": "A charge to perform an alteration on a item of clothing by a service provider other than vendor of the article.  The alteration is not linked to the clothing purchase.  Alterations could include hemming of a dress, shortening of pants, adjusting the waistline of a garment, etc.",
-            "name": "Garment Alterations- separate from purchase of garment",
-            "product_tax_code": "81149000A0000"
-        },
-        {
-            "description": "A charge to perform an alteration on a item of clothing by the vendor of the article.  The alteration is separately stated from the clothing, but contracted for at the time of the clothing purchase.  Alterations could include hemming of a dress, shortening of pants, adjusting the waistline of a garment, etc.",
-            "name": "Garment Alterations- in conjunction with purchase of garment",
-            "product_tax_code": "81149000A0001"
-        },
-        {
-            "description": "A separately stated labor charge to cover a piece of furniture previously owned by the customer with new fabric coverings. Any materials transferred as part of the service are separately stated.",
-            "name": "Furniture Reupholstering",
-            "product_tax_code": "72153614A0000"
-        },
-        {
-            "description": "A charge to create a finished good from materials supplied by the customer.  This is a labor only charge to transform a customer's existing property.",
-            "name": "Fabrication",
-            "product_tax_code": "23839000A0000"
-        },
-        {
-            "description": "E-file services for tax returns",
-            "name": "Electronic Filing Service",
-            "product_tax_code": "72910000A0000"
-        },
-        {
-            "description": "Private schools, not college or university",
-            "name": "Educational Services",
-            "product_tax_code": "86132209A0000"
-        },
-        {
-            "description": "A charge to a non-commercial customer for the cleaning or renovating items other than clothing by immersion and agitation, spraying, vaporization, or immersion only, in a volatile, commercially moisture-free solvent or by the use of a volatile or inflammable product. This does not include the use of a self-service coin (or credit card) operated cleaning machine.",
-            "name": "Dry Cleaning - items other than clothing",
-            "product_tax_code": "91111503A1601"
-        },
-        {
-            "description": "A charge to repair or restore to operating condition computer hardware that was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Computer Repair",
-            "product_tax_code": "81112300A0000"
-        },
-        {
-            "description": "A charge to clean, wash or wax a motor vehicle, other than a self-service coin (or credit card) operated washing station.  This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Car Washing",
-            "product_tax_code": "81119200A0000"
-        },
-        {
-            "description": "A charge to assemble goods for a purchaser who will later sell the assembled goods to end consumers.",
-            "name": "Assembly - prior to final purchase of article",
-            "product_tax_code": "93121706A0001"
-        },
-        {
-            "description": "A charge separately stated from the sale of the product itself to bring the article to its finished state and in the condition specified by the buyer.",
-            "name": "Assembly - in conjunction with final purchase of article",
-            "product_tax_code": "93121706A0000"
-        },
-        {
-            "description": "A charge to repair or restore to operating condition an appliance (dishwasher, washing machine, refrigerator, etc.) that was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Appliance Repair",
-            "product_tax_code": "52143609A0000"
-        },
-        {
-            "description": "A charge to repair or restore to operating condition an aircraft that was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential. Commercial aircraft is excluded.",
-            "name": "Aircraft Repair",
-            "product_tax_code": "78181800A0000"
-        },
-        {
-            "description": "A charge for the printing, imprinting, or lithographing on any article supplied by the customer.  The customer owns the article throughout the process.  This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Printing - customer supplied articles",
-            "product_tax_code": "19009"
-        },
-        {
-            "description": "A charge to a non-commercial customer for the cleaning or renovating clothing by immersion and agitation, spraying, vaporization, or immersion only, in a volatile, commercially moisture-free solvent or by the use of a volatile or inflammable product. This does not include the use of a self-service coin (or credit card) operated cleaning machine.",
-            "name": "Dry Cleaning Services",
-            "product_tax_code": "19006"
-        },
-        {
-            "description": "A charge to repair or restore tangible personal property that was broken, worn, damaged, defective, or malfunctioning. This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Repair Services",
-            "product_tax_code": "19007"
-        },
-        {
-            "description": "Food for household pets that is consumed for nutritional value. This code is not intended for food related to working farm animals or animals raised for meat or milk production. This code is intended for retail sales made directly to end consumers.",
-            "name": "OTC Pet Food",
-            "product_tax_code": "10122100A0000"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with candy, with the candy comprising between 25% and 49% of the overall value of the bundle (food comprises 51 to 75%).  Note that any candy containing flour should be considered as food (and not candy) when determining bundle percentages.",
-            "name": "Food/Candy Bundle - with Candy 25% to 49%",
-            "product_tax_code": "50193400A0008"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with candy, with the candy comprising between 11% and 24% of the overall value of the bundle (food comprises 76% to 89%).  Note that any candy containing flour should be considered as food (and not candy) when determining bundle percentages.",
-            "name": "Food/Candy Bundle - with Candy 11% to 24%",
-            "product_tax_code": "50193400A0009"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with candy, with the candy comprising 10% or less of the overall value of the bundle (food comprises 90% or more).  Note that any candy containing flour should be considered as food (and not candy) when determining bundle percentages.",
-            "name": "Food/Candy Bundle - with Candy 10% or less",
-            "product_tax_code": "50193400A0010"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with candy, with the candy comprising 50% or more of the overall value of the bundle (food comprises 50% or less).  Note that any candy containing flour should be considered as food (and not candy) when determining bundle percentages.",
-            "name": "Food/Candy Bundle - with Candy 50% or more",
-            "product_tax_code": "50193400A0007"
-        },
-        {
-            "description": "Male or female condoms and vaginal sponges used to prevent pregnancy and/or exposure to STDs, containing a spermicidal lubricant as indicated by a \"drug facts\" panel or a statement of active ingredients, sold under prescription order of a licensed professional.",
-            "name": "Condoms with Spermicide with Prescription",
-            "product_tax_code": "53131622A0004"
-        },
-        {
-            "description": "Over-the-Counter emergency contraceptive pills act to prevent pregnancy after intercourse. The contraceptive contains a hormone that prevents ovulation, fertilization, or implantation of an embryo.",
-            "name": "Birth Control - Over-the-Counter Oral Contraceptives",
-            "product_tax_code": "51350000A0001"
-        },
-        {
-            "description": "An oral medication containing hormones effective in altering the menstrual cycle to eliminate ovulation and prevent pregnancy, available only under prescription order of a licensed professional.  Other than preventing pregnancy, hormonal birth control can also be used to treat various conditions, such as Polycystic Ovary Syndrome, Endometriosis, Primary Ovarian Insufficiency, etc.",
-            "name": "Birth Control - Prescription Oral Contraceptives",
-            "product_tax_code": "51350000A0000"
-        },
-        {
-            "description": "Over-the-Counter emergency contraceptive pills act to prevent pregnancy after intercourse, sold under prescription order of a licensed professional.  The contraceptive contains a hormone that prevents ovulation, fertilization, or implantation of an embryo.",
-            "name": "Birth Control - Over-the-Counter Oral Contraceptives with Prescription",
-            "product_tax_code": "51350000A0002"
-        },
-        {
-            "description": "Barrier based prescription only birth control methods, including the diaphragm and cervical cap that prevent the joining of the sperm and egg, available only under prescription order of a licensed professional.",
-            "name": "Birth Control - Prescription non-Oral Contraceptives - Barriers",
-            "product_tax_code": "42143103A0000"
-        },
-        {
-            "description": "Hormonal based birth control methods other than the oral pill, including intrauterine devices, injections, skin implants, transdermal patches, and vaginal rings that release a continuous dose of hormones to eliminate ovulation and prevent pregnancy, available only under prescription order of a licensed professional.",
-            "name": "Birth Control - Prescription non-Oral Contraceptives - Hormonal",
-            "product_tax_code": "51350000A0003"
-        },
-        {
-            "description": "Male or female condoms and vaginal sponges used to prevent pregnancy and/or exposure to STDs, sold under prescription order of a licensed professional.",
-            "name": "Condoms with Prescription",
-            "product_tax_code": "53131622A0003"
-        },
-        {
-            "description": "Feminine hygiene product designed to absorb the menstrual flow. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Tampons, menstrual cups, pads, liners",
-            "product_tax_code": "53131615A0000"
-        },
-        {
-            "description": "Infant washable/reusable cloth diapers.",
-            "name": "Clothing - Cloth Diapers",
-            "product_tax_code": "53102305A0001"
-        },
-        {
-            "description": "Clothing - Diaper liners",
-            "name": "Clothing - Diaper liners",
-            "product_tax_code": "53102308A0000"
-        },
-        {
-            "description": "Clothing - Adult diapers",
-            "name": "Clothing - Adult diapers",
-            "product_tax_code": "53102306A0000"
-        },
-        {
-            "description": "Clothing - Infant diapers",
-            "name": "Clothing - Infant diapers",
-            "product_tax_code": "53102305A0000"
-        },
-        {
-            "description": "Food and Beverage - Candy containing flour as an ingredient",
-            "name": "Food and Beverage - Candy containing flour as an ingredient",
-            "product_tax_code": "50161800A0001"
-        },
-        {
-            "description": "Food and Beverage - Food and Food Ingredients for Home Consumption",
-            "name": "Food and Beverage - Food and Food Ingredients for Home Consumption",
-            "product_tax_code": "50000000A0000"
-        },
-        {
-            "description": "Clothing - Zippers",
-            "name": "Clothing - Zippers",
-            "product_tax_code": "53141503A0000"
-        },
-        {
-            "description": "Clothing - Gorgets",
-            "name": "Clothing - Gorgets",
-            "product_tax_code": "53102519A0000"
-        },
-        {
-            "description": "Clothing - Shoulder boards or epaulettes",
-            "name": "Clothing - Shoulder boards or epaulettes",
-            "product_tax_code": "53102520A0000"
-        },
-        {
-            "description": "Yarn - For use other than fabricating/repairing clothing",
-            "name": "Yarn - For use other than fabricating/repairing clothing",
-            "product_tax_code": "11151700A0001"
-        },
-        {
-            "description": "Clothing - Snaps",
-            "name": "Clothing - Snaps",
-            "product_tax_code": "53141506A0000"
-        },
-        {
-            "description": "Clothing - Clasps",
-            "name": "Clothing - Clasps",
-            "product_tax_code": "53141507A0000"
-        },
-        {
-            "description": "Clothing - Buttons",
-            "name": "Clothing - Buttons",
-            "product_tax_code": "53141505A0000"
-        },
-        {
-            "description": "Clothing - Clothing - Fabric dye",
-            "name": "Clothing - Fabric dye",
-            "product_tax_code": "60105810A0000"
-        },
-        {
-            "description": "Clothing - Fabric for use in clothing",
-            "name": "Clothing - Fabric for use in clothing",
-            "product_tax_code": "11160000A0000"
-        },
-        {
-            "description": "Clothing - Clothing - Yarn",
-            "name": "Clothing - Yarn",
-            "product_tax_code": "11151700A0000"
-        },
-        {
-            "description": "A lump sum charge where both the downloaded digital products and the service components each are greater than 10% of the bundle.",
-            "name": "Digital Products (> 10%) / General Services (> 10%) Bundle",
-            "product_tax_code": "55111500A5000"
-        },
-        {
-            "description": "Services provided by a licensed or registered professional in the medical field.  Examples: Doctor, dentist, nurse, optometrist, etc.",
-            "name": "Medical Professional Services - Physician, Dentist, and similar",
-            "product_tax_code": "62139900A0000"
-        },
-        {
-            "description": "The puncturing or penetration of the skin of a person and the insertion of jewelry or other adornment into the opening.",
-            "name": "Body Piercing",
-            "product_tax_code": "72990190A0000"
-        },
-        {
-            "description": "Cosmetic beauty treatment for the fingernails and toenails. Consists of filing, cutting and shaping and the application of polish.",
-            "name": "Manicure Services",
-            "product_tax_code": "72310104A0000"
-        },
-        {
-            "description": "Performing tests and research for a particular client in connection with the development of particular products, property, goods or services that the client sells to consumers in the regular course of business.",
-            "name": "Marketing Services",
-            "product_tax_code": "87420300A0000"
-        },
-        {
-            "description": "Performing surveying and mapping services of the surface of the earth, including the sea floor. These services may include surveying and mapping of areas above or below the surface of the earth, such as the creation of view easements or segregating rights in parcels of land by creating underground utility easements.",
-            "name": "Property Surveying Services",
-            "product_tax_code": "87130000A0000"
-        },
-        {
-            "description": "Providing a systematic inquiry, examination, or analysis of people, events or documents, to determine the facts of a given situation. The evaluation is submitted in the form of a report or provided as a testimony in legal proceedings. Techniques such as surveillance, background checks, computer searches, fingerprinting, lie detector services, and interviews may be used to gather the information.",
-            "name": "Private Investigator Services",
-            "product_tax_code": "73810204A0000"
-        },
-        {
-            "description": "The provision of expertise or strategic advice that is presented for consideration and decision-making.",
-            "name": "Consulting Services",
-            "product_tax_code": "87480000A0000"
-        },
-        {
-            "description": "Services relating to advocating for the passage or defeat of legislation to members or staff of the government.",
-            "name": "Lobbying Services",
-            "product_tax_code": "87439901A0000"
-        },
-        {
-            "description": "Preparation of materials, written or otherwise, that are designed to influence the general public or other groups by promoting the interests of a service recipient.",
-            "name": "Public Relations",
-            "product_tax_code": "87430000A0000"
-        },
-        {
-            "description": "Services related to the art and science of designing and building structures for human habitation or use and includes planning, providing preliminary studies, designs, specifications, working drawings and providing for general administration of construction contracts.",
-            "name": "Architectural Services",
-            "product_tax_code": "87120000A0000"
-        },
-        {
-            "description": "Services provided by a profession trained to apply physical laws and principles of engineering in the design, development, and utilization of machines, materials, instruments, structures, processes, and systems. The services involve any of the following activities: provision of advice, preparation of feasibility studies, preparation of preliminary and final plans and designs, provision of technical services during the construction or installation phase, inspection and evaluation of engineering projects, and related services.",
-            "name": "Engineering Services",
-            "product_tax_code": "87110000A0000"
-        },
-        {
-            "description": "Services that provide non-medical care and supervision for infant to school-age children or senior citizens.",
-            "name": "Childcare Services / Adultcare",
-            "product_tax_code": "83510000A0000"
-        },
-        {
-            "description": "Services provided by a facility for overnight care of an animal not related to veterinary care.",
-            "name": "Pet Services - Boarding",
-            "product_tax_code": "81291000A0001"
-        },
-        {
-            "description": "Services relating to or concerned with the law. Such services include, but are not limited to, representation by an attorney (or other person, when permitted) in an administrative or legal proceeding, legal drafting, paralegal services, legal research services, arbitration, mediation, and court reporting services.",
-            "name": "Legal Services",
-            "product_tax_code": "81110000A0000"
-        },
-        {
-            "description": "Medical procedure performed on an individual that is directed at improving the individual's appearance and that does not meaningfully promote the proper function of the body or prevent or treat illness or disease.",
-            "name": "Cosmetic Medical Procedure",
-            "product_tax_code": "80110517A0000"
-        },
-        {
-            "description": "Alarm monitoring involves people using computers, software, and telecommunications to monitor homes and businesses for break-ins, fires, and other unexpected events.",
-            "name": "Security - Alarm Services",
-            "product_tax_code": "73829901A0000"
-        },
-        {
-            "description": "Services related to protecting persons or their property, preventing the theft of goods, merchandise, or money.  Responding to alarm signal device, burglar alarm, television camera, still camera, or a mechanical or electronic device installed or used to prevent or detect burglary, theft, shoplifting, pilferage, losses, or other security measures.  Providing management and control of crowds for safety and protection.",
-            "name": "Security - Guard Services",
-            "product_tax_code": "73810105A0000"
-        },
-        {
-            "description": "Transporting under armed private security guard from one place to another any currency, jewels, stocks, bonds, paintings, or other valuables of any kind in a specially equipped motor vehicle that offers a high degree of security.",
-            "name": "Armored Car Services",
-            "product_tax_code": "73810101A0000"
-        },
-        {
-            "description": "Services related to providing personnel, on a temporary basis, to perform work or labor under the supervision or control of another.",
-            "name": "Temporary Help Services",
-            "product_tax_code": "73630103A0000"
-        },
-        {
-            "description": "Services employment agencies provide are finding a job for a job-seeker and finding an employee for an employer.",
-            "name": "Employment Services",
-            "product_tax_code": "73610000A0000"
-        },
-        {
-            "description": "Services to industrial, commercial or income-producing real property, such as as management, electrical, plumbing, painting and carpentry, provided to income-producing property.",
-            "name": "Building Management Services",
-            "product_tax_code": "73490000A0000"
-        },
-        {
-            "description": "Services which include, but are not limited to, editing, letter writing, proofreading, resume writing, typing or word processing.  Not including court reporting and stenographic services.",
-            "name": "Secretarial Services",
-            "product_tax_code": "73389903A0000"
-        },
-        {
-            "description": "Services that include typing, taking shorthand, and taking and transcribing dictation for others for a consideration.",
-            "name": "Stenographic Services",
-            "product_tax_code": "73380200A0000"
-        },
-        {
-            "description": "A process that uses needles and colored ink to permanently put a mark or design on a person’s skin. Also applying permanent make-up, such as eyelining and other permanent colors to enhance the skin of the face, lips, eyelids, and eyebrows.",
-            "name": "Tattooing Services",
-            "product_tax_code": "72990106A0000"
-        },
-        {
-            "description": "A variety of personal services typically with the purpose of improving health, beauty and relaxation through treatments such as hair, massages and facials.",
-            "name": "Spa Services",
-            "product_tax_code": "72990201A0000"
-        },
-        {
-            "description": "Services where the use of structured touch, include holding, applying pressure, positioning, and mobilizing soft tissue of the body by manual technique.  Note: This does not include medical massage prescribed by a physician.",
-            "name": "Massage Services",
-            "product_tax_code": "72990200A0000"
-        },
-        {
-            "description": "The measurement, processing and communication of financial information about economic entities including, but is not limited to, financial accounting, management accounting, auditing, cost containment and auditing services, taxation and accounting information systems; excluding general bookkeeping service.",
-            "name": "Accounting Services",
-            "product_tax_code": "87210200A0000"
-        },
-        {
-            "description": "The training of an animal to obey certain commands.",
-            "name": "Pet Services - Obedience Training",
-            "product_tax_code": "81291000A0002"
-        },
-        {
-            "description": "Credit monitoring services are companies consumers pay to keep an eye on your credit files. The services notifies one when they see activity in credit files, so one can determine if that activity is a result of action one took or possibly fraudulent",
-            "name": "Credit Monitoring Services",
-            "product_tax_code": "56145000A0000"
-        },
-        {
-            "description": "Grooming services for an animal such as haircuts, bathing, nail trimming, and flea dips.",
-            "name": "Pet Services - Grooming",
-            "product_tax_code": "81291000A0000"
-        },
-        {
-            "description": "Debt collection is when a collection agency or company tries to collect past-due debts from borrowers.",
-            "name": "Debt Collection Services",
-            "product_tax_code": "73229902A0000"
-        },
-        {
-            "description": "A service that arranges introductions, for a fee, for strangers seeking romantic partners or friends.  This excludes online dating services.",
-            "name": "Dating Services",
-            "product_tax_code": "72990301A0000"
-        },
-        {
-            "description": "A service that allows merchants to accept credit cards as well as send credit card payment details to the credit card network. It then forwards the payment authorization back to the acquiring bank.",
-            "name": "Credit Card Processing Services",
-            "product_tax_code": "52232000A0000"
-        },
-        {
-            "description": "Services for artificial tanning and skin beautification.",
-            "name": "Tanning Services",
-            "product_tax_code": "72990105A0000"
-        },
-        {
-            "description": "Credit reporting agencies receive various types of information which can be included in their offerings for customers.",
-            "name": "Credit Reporting Services",
-            "product_tax_code": "73230000A0000"
-        },
-        {
-            "description": "Miscellaneous personal services are generally services that affect the appearance or comfort of people.  This does not include haircutting/styling services",
-            "name": "Personal Services",
-            "product_tax_code": "72990000A0000"
-        },
-        {
-            "description": "The removal of hair from the face or body using chemicals or heat energy.",
-            "name": "Electrolysis",
-            "product_tax_code": "72310102A0000"
-        },
-        {
-            "description": "Services provided to insurance companies providing insurance to consumers.  Examples are loss or damage appraisals, inspections, actuarial services, claims adjustment or processing.  Investigations as excluded from this definition.",
-            "name": "Insurance Services",
-            "product_tax_code": "64110000A0000"
-        },
-        {
-            "description": "An at-home infectious disease test kit that can be sold without a prescription.",
-            "name": "Infectious Disease Test - Over-the-Counter",
-            "product_tax_code": "41116205A0005"
-        },
-        {
-            "description": "An at-home infectious disease test kit that can only be sold with a prescription.",
-            "name": "Infectious Disease Test - Prescription only",
-            "product_tax_code": "41116205A0004"
-        },
-        {
-            "description": "Online database information retrieval service (personal or individual)",
-            "name": "Online database information retrieval service (personal or individual)",
-            "product_tax_code": "81111902A0001"
-        },
-        {
-            "description": "Database information retrieval",
-            "name": "Database information retrieval (personal or individual)",
-            "product_tax_code": "81111901A0001"
-        },
-        {
-            "description": "Services provided by beauty shops and barber shops, including but not limited to haircutting, hair coloring, shampooing, blow drying, permanents, hair extensions, hair straightening, and hair restorations.",
-            "name": "Hairdressing Services",
-            "product_tax_code": "19008"
-        },
-        {
-            "description": "Professional services which are not subject to a service-specific tax levy.",
-            "name": "Professional Services",
-            "product_tax_code": "19005"
-        },
-        {
-            "description": "Online database information retrieval service",
-            "name": "Online database information retrieval service",
-            "product_tax_code": "81111902A0000"
-        },
-        {
-            "description": "Database information retrieval",
-            "name": "Database information retrieval",
-            "product_tax_code": "81111901A0000"
-        },
-        {
-            "description": "Cash donation",
-            "name": "Cash donation",
-            "product_tax_code": "14111803A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicaid, medical grade oyxgen.",
-            "name": "Medical Oxygen with Prescription billed to Medicaid",
-            "product_tax_code": "42271700A0008"
-        },
-        {
-            "description": "When sold without prescription order of a licensed professional, a machine used that filters a patient's blood to remove excess water and waste products when the kidneys are damaged,",
-            "name": "Kidney Dialysis Equipment for home use without Prescription",
-            "product_tax_code": "42161800A0006"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicaid, equipment that: can withstand repeated use; is primarily and customarily used to serve a medical purpose; generally is not useful to a person in the absence of illness or injury; and is not worn in or on the body. Home use means the equipment is sold to an individual for use at home, regardless of where the individual resides. Examples include hospital beds, commode chairs, bed pans, shower and bath aids, IV poles, etc.",
-            "name": "Durable Medical Equipment for home use with Prescription reimbursed by Medicaid",
-            "product_tax_code": "42140000A0005"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicare, a machine used that filters a patient's blood to remove excess water and waste products when the kidneys are damaged,  dysfunctional, or missing. The kidney dialysis machine is an artificial part which augments the natural functioning of the kidneys.",
-            "name": "Kidney Dialysis Equipment for home use with Prescription billed to Medicare",
-            "product_tax_code": "42161800A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicare, equipment that: can withstand repeated use; is primarily and customarily used to serve a medical purpose; generally is not useful to a person in the absence of illness or injury; and is not worn in or on the body. Home use means the equipment is sold to an individual for use at home, regardless of where the individual resides. Examples include hospital beds, commode chairs, bed pans, shower and bath aids, IV poles, etc.",
-            "name": "Durable Medical Equipment for home use with Prescription reimbursed by Medicare",
-            "product_tax_code": "42140000A0004"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicare, equipment used to administer oxygen directly into the lungs of the patient for the relief of conditions in which the human body experiences an abnormal deficiency or inadequate supply of oxygen. Oxygen equipment means oxygen cylinders, cylinder transport devices, including sheaths and carts, cylinder studs and support devices, regulators, flowmeters, tank wrenches, oxygen concentrators, liquid oxygen base dispensers, liquid oxygen portable dispensers, oxygen tubing, nasal cannulas, face masks, oxygen humidifiers, and oxygen fittings and accessories.",
-            "name": "Oxygen Delivery Equipment for home use with Prescription reimbursed by Medicare",
-            "product_tax_code": "42271700A0004"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, equipment that: can withstand repeated use; is primarily and customarily used to serve a medical purpose; generally is not useful to a person in the absence of illness or injury; and is not worn in or on the body.  Home use means the equipment is sold to an individual for use at home, regardless of where the individual resides. Examples include hospital beds, commode chairs, bed pans, shower and bath aids, IV poles, etc.",
-            "name": "Durable Medical Equipment for home use with Prescription",
-            "product_tax_code": "42140000A0001"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicare, equipment used to administer oxygen directly into the lungs of the patient for the relief of conditions in which the human body experiences an abnormal deficiency or inadequate supply of oxygen. Oxygen equipment means oxygen cylinders, cylinder transport devices, including sheaths and carts, cylinder studs and support devices, regulators, flowmeters, tank wrenches, oxygen concentrators, liquid oxygen base dispensers, liquid oxygen portable dispensers, oxygen tubing, nasal cannulas, face masks, oxygen humidifiers, and oxygen fittings and accessories.",
-            "name": "Oxygen Delivery Equipment for home use with Prescription billed to Medicare",
-            "product_tax_code": "42271700A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicaid, medical grade oyxgen.",
-            "name": "Medical Oxygen with Prescription reimbursed by Medicaid",
-            "product_tax_code": "42271700A0010"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, medical grade oyxgen.",
-            "name": "Medical Oxygen with Prescription",
-            "product_tax_code": "42271700A0012"
-        },
-        {
-            "description": "When sold without prescription order of a licensed professional, medical grade oyxgen.",
-            "name": "Medical Oxygen without Prescription",
-            "product_tax_code": "42271700A0011"
-        },
-        {
-            "description": "Equipment which is primarily and customarily used to provide or increase the ability to move from one place to another, sold without a prescription, and which is appropriate for use either in a home or a motor vehicle; Is not generally used by persons with normal mobility; and does not include any motor vehicle or equipment on a motor vehicle normally provided by a motor vehicle manufacturer.  Examples include wheelchairs, crutches, canes, walkers, chair lifts, etc.",
-            "name": "Mobility Enhancing Equipment without Prescription",
-            "product_tax_code": "42211500A0006"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicaid, equipment used to administer oxygen directly into the lungs of the patient for the relief of conditions in which the human body experiences an abnormal deficiency or inadequate supply of oxygen. Oxygen equipment means oxygen cylinders, cylinder transport devices, including sheaths and carts, cylinder studs and support devices, regulators, flowmeters, tank wrenches, oxygen concentrators, liquid oxygen base dispensers, liquid oxygen portable dispensers, oxygen tubing, nasal cannulas, face masks, oxygen humidifiers, and oxygen fittings and accessories.",
-            "name": "Oxygen Delivery Equipment for home use with Prescription billed to Medicaid",
-            "product_tax_code": "42271700A0003"
-        },
-        {
-            "description": "Synthetic or animal-based insulin used as an injectible drug for diabetes patients, sold under prescription order of a licensed professional.",
-            "name": "Insulin with Prescription",
-            "product_tax_code": "51183603A0000"
-        },
-        {
-            "description": "Devices used by diabetic individuals to monitor sugar levels in the blood, sold under prescription order of a licensed professional.",
-            "name": "Blood Glucose Monitoring Devices with Prescription",
-            "product_tax_code": "41116201A0000"
-        },
-        {
-            "description": "Devices used by diabetic individuals to monitor sugar levels in the blood, sold without prescription order of a licensed professional.",
-            "name": "Blood Glucose Monitoring Devices without Prescription",
-            "product_tax_code": "41116201A0001"
-        },
-        {
-            "description": "At home urine-based tests used to detect the presense of various drug substances in an individual.",
-            "name": "Drug Testing Kits",
-            "product_tax_code": "41116136A0001"
-        },
-        {
-            "description": "Single use hollow needle commonly used with a syringe to inject insulin into the body by diabetic individuals, sold under prescription order of a licensed professional.",
-            "name": "Hypodermic Needles/Syringes with prescription - Insulin",
-            "product_tax_code": "42142523A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicare, medical grade oyxgen.",
-            "name": "Medical Oxygen with Prescription reimbursed by Medicare",
-            "product_tax_code": "42271700A0009"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicare, medical grade oyxgen.",
-            "name": "Medical Oxygen with Prescription billed to Medicare",
-            "product_tax_code": "42271700A0007"
-        },
-        {
-            "description": "When sold without prescription order of a licensed professional, a replacement, corrective, or supportive device, worn on or in the body to: Artificially replace a missing portion of the body; Prevent or correct physical deformity or malfunction; or Support a weak or deformed portion of the body. Worn in or on the body means that the item is implanted or attached so that it becomes part of the body, or is carried by the body and does not hinder the mobility of the individual. Examples include artificial limbs, pacemakers, orthopedics, ostomy/colostomy devices, etc.",
-            "name": "Prosthetic Devices without Prescription",
-            "product_tax_code": "42242000A0006"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicaid, a replacement, corrective, or supportive device, worn on or in the body to: Artificially replace a missing portion of the body; Prevent or correct physical deformity or malfunction; or Support a weak or deformed portion of the body. Worn in or on the body means that the item is implanted or attached so that it becomes part of the body, or is carried by the body and does not hinder the mobility of the individual. Examples include artificial limbs, pacemakers, orthotics, orthopedics, ostomy/colostomy devices, catheters, etc.",
-            "name": "Prosthetic Devices with Prescription Billed to Medicaid",
-            "product_tax_code": "42242000A0003"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicare, a replacement, corrective, or supportive device, worn on or in the body to: Artificially replace a missing portion of the body; Prevent or correct physical deformity or malfunction; or Support a weak or deformed portion of the body. Worn in or on the body means that the item is implanted or attached so that it becomes part of the body, or is carried by the body and does not hinder the mobility of the individual. Examples include artificial limbs, pacemakers, orthotics, orthopedics, ostomy/colostomy devices, catheters, etc.",
-            "name": "Prosthetic Devices with Prescription Billed to Medicare",
-            "product_tax_code": "42242000A0002"
-        },
-        {
-            "description": "At home saliva, cheeek swab or blood drop based tests used to detect various genetic markers in an individual.",
-            "name": "DNA Testing Kits",
-            "product_tax_code": "41116205A0003"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicaid, nutritional tube feeding equipment including button-style feeding tubes, standard G-tubes, NG-tubes, extension sets, adapters, feeding pumps, feeding pump delivery sets.",
-            "name": "Enteral Feeding Equipment for home use with Prescription reimbursed by Medicaid",
-            "product_tax_code": "42231500A0005"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicaid, equipment used to administer oxygen directly into the lungs of the patient for the relief of conditions in which the human body experiences an abnormal deficiency or inadequate supply of oxygen. Oxygen equipment means oxygen cylinders, cylinder transport devices, including sheaths and carts, cylinder studs and support devices, regulators, flowmeters, tank wrenches, oxygen concentrators, liquid oxygen base dispensers, liquid oxygen portable dispensers, oxygen tubing, nasal cannulas, face masks, oxygen humidifiers, and oxygen fittings and accessories.",
-            "name": "Oxygen Delivery Equipment for home use with Prescription reimbursed by Medicaid",
-            "product_tax_code": "42271700A0005"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, equipment used to administer oxygen directly into the lungs of the patient for the relief of conditions in which the human body experiences an abnormal deficiency or inadequate supply of oxygen. Oxygen equipment means oxygen cylinders, cylinder transport devices, including sheaths and carts, cylinder studs and support devices, regulators, flowmeters, tank wrenches, oxygen concentrators, liquid oxygen base dispensers, liquid oxygen portable dispensers, oxygen tubing, nasal cannulas, face masks, oxygen humidifiers, and oxygen fittings and accessories.",
-            "name": "Oxygen Delivery Equipment for home use with Prescription",
-            "product_tax_code": "42271700A0001"
-        },
-        {
-            "description": "Synthetic or animal-based insulin used as an injectible drug for diabetes patients, sold without prescription order of a licensed professional.",
-            "name": "Insulin without Prescription",
-            "product_tax_code": "51183603A0001"
-        },
-        {
-            "description": "Single use hollow needle commonly used with a syringe to inject insulin into the body by diabetic individuals, sold without prescription order of a licensed professional.",
-            "name": "Hypodermic Needles/Syringes without prescription - Insulin",
-            "product_tax_code": "42142523A0001"
-        },
-        {
-            "description": "When sold without prescription order of a licensed professional, equipment used to administer oxygen directly into the lungs of the patient for the relief of conditions in which the human body experiences an abnormal deficiency or inadequate supply of oxygen. Oxygen equipment means oxygen cylinders, cylinder transport devices, including sheaths and carts, cylinder studs and support devices, regulators, flowmeters, tank wrenches, oxygen concentrators, liquid oxygen base dispensers, liquid oxygen portable dispensers, oxygen tubing, nasal cannulas, face masks, oxygen humidifiers, and oxygen fittings and accessories.",
-            "name": "Oxygen Delivery Equipment for home use without Prescription",
-            "product_tax_code": "42271700A0006"
-        },
-        {
-            "description": "At home blood-prick based tests used to monitor cholesterol levels in an individual.",
-            "name": "Cholesterol Testing Kits",
-            "product_tax_code": "41116202A0001"
-        },
-        {
-            "description": "Single use supplies utilized by diabetics in the regular blood sugar monitoring regimen. Includes skin puncture lancets, test strips for blood glucose monitors, visual read test strips, and urine test strips, sold under prescription order of a licensed professional.",
-            "name": "Diabetic Testing Supplies - single use - with Prescription",
-            "product_tax_code": "41116120A0002"
-        },
-        {
-            "description": "A breast pump is a mechanical device that lactating women use to extract milk from their breasts. They may be manual devices powered by hand or foot movements or automatic devices powered by electricity.",
-            "name": "Breast Pumps",
-            "product_tax_code": "42231901A0000"
-        },
-        {
-            "description": "At home urine-based tests used to detect pregancy hormone levels.",
-            "name": "Pregenacy Testing Kits",
-            "product_tax_code": "41116205A0001"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, and reimbursed by Medicaid, equipment which is primarily and customarily used to provide or increase the ability to move from one place to another and which is appropriate for use either in a home or a motor vehicle; Is not generally used by persons with normal mobility; and Does not include any motor vehicle or equipment on a motor vehicle normally provided by a motor vehicle manufacturer.  Examples include wheelchairs, crutches, canes, walkers, chair lifts, etc.",
-            "name": "Mobility Enhancing Equipment with Prescription Reimbursed by Medicaid",
-            "product_tax_code": "42211500A0005"
-        },
-        {
-            "description": "When sold without prescription order of a licensed professional, a replacement, corrective, or supportive device, worn in the mouth, including dentures, orthodontics, crowns, bridges, etc.",
-            "name": "Dental Prosthetics without Prescription",
-            "product_tax_code": "42151500A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, a replacement, corrective, or supportive device, worn in the mouth, including dentures, orthodontics, crowns, bridges, etc.",
-            "name": "Dental Prosthetics with Prescription",
-            "product_tax_code": "42151500A0001"
-        },
-        {
-            "description": "At home urine-based tests used to detect impending ovulation to assist in pregnancy planning.",
-            "name": "Ovulation Testing Kits",
-            "product_tax_code": "41116205A0002"
-        },
-        {
-            "description": "When sold without prescription order of a licensed professional, nutritional tube feeding equipment including button-style feeding tubes, standard G-tubes, NG-tubes, extension sets, adapters, feeding pumps, feeding pump delivery sets.",
-            "name": "Enteral Feeding Equipment for home use without Prescription",
-            "product_tax_code": "42231500A0006"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicare, nutritional tube feeding equipment including button-style feeding tubes, standard G-tubes, NG-tubes, extension sets, adapters, feeding pumps, feeding pump delivery sets.",
-            "name": "Enteral Feeding Equipment for home use with Prescription reimbursed by Medicare",
-            "product_tax_code": "42231500A0004"
-        },
-        {
-            "description": "When sold without prescription order of a licensed professional, equipment that: can withstand repeated use; is primarily and customarily used to serve a medical purpose; generally is not useful to a person in the absence of illness or injury; and is not worn in or on the body. Home use means the equipment is sold to an individual for use at home, regardless of where the individual resides. Examples include hospital beds, commode chairs, bed pans, IV poles, etc.",
-            "name": "Durable Medical Equipment for home use without Prescription",
-            "product_tax_code": "42140000A0006"
-        },
-        {
-            "description": "Male or female condoms used to prevent pregnancy or exposure to STDs, containing a spermicidal lubricant as indicated by a \"drug facts\" panel or a statement of active ingredients.",
-            "name": "Condoms with Spermicide",
-            "product_tax_code": "53131622A0001"
-        },
-        {
-            "description": "Single use supplies utilized by diabetics in the regular blood sugar monitoring regimen. Includes skin puncture lancets, test strips for blood glucose monitors, visual read test strips, and urine test strips.",
-            "name": "Diabetic Testing Supplies - single use - without Prescription",
-            "product_tax_code": "41116120A0001"
-        },
-        {
-            "description": "An electronic device that clips onto a patient's finger to measure heart rate and oxygen saturation in his or her red blood cells.",
-            "name": "Pulse Oximeter",
-            "product_tax_code": "42181801A0000"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, equipment which is primarily and customarily used to provide or increase the ability to move from one place to another and which is appropriate for use either in a home or a motor vehicle; Is not generally used by persons with normal mobility; and Does not include any motor vehicle or equipment on a motor vehicle normally provided by a motor vehicle manufacturer.  Examples include wheelchairs, crutches, canes, walkers, chair lifts, etc.",
-            "name": "Mobility Enhancing Equipment with Prescription",
-            "product_tax_code": "42211500A0001"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, a replacement, corrective, or supportive device, worn on or in the body to: Artificially replace a missing portion of the body; Prevent or correct physical deformity or malfunction; or Support a weak or deformed portion of the body. Worn in or on the body means that the item is implanted or attached so that it becomes part of the body, or is carried by the body and does not hinder the mobility of the individual. Examples include artificial limbs, pacemakers, orthotics, orthopedics, ostomy/colostomy devices, catheters, etc.",
-            "name": "Prosthetic Devices with Prescription",
-            "product_tax_code": "42242000A0001"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicare, nutritional tube feeding equipment including button-style feeding tubes, standard G-tubes, NG-tubes, extension sets, adapters, feeding pumps, feeding pump delivery sets.",
-            "name": "Enteral Feeding Equipment for home use with Prescription billed to Medicare",
-            "product_tax_code": "42231500A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicaid, equipment that: can withstand repeated use; is primarily and customarily used to serve a medical purpose; generally is not useful to a person in the absence of illness or injury; and is not worn in or on the body. Home use means the equipment is sold to an individual for use at home, regardless of where the individual resides. Examples include hospital beds, commode chairs, bed pans, shower and bath aids, IV poles, etc.",
-            "name": "Durable Medical Equipment for home use with Prescription billed to Medicaid",
-            "product_tax_code": "42140000A0003"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicare, a replacement, corrective, or supportive device, worn on or in the body to: Artificially replace a missing portion of the body; Prevent or correct physical deformity or malfunction; or Support a weak or deformed portion of the body. Worn in or on the body means that the item is implanted or attached so that it becomes part of the body, or is carried by the body and does not hinder the mobility of the individual. Examples include artificial limbs, pacemakers, orthotics, orthopedics, ostomy/colostomy devices, catheters, etc.",
-            "name": "Prosthetic Devices with Prescription Reimbursed by Medicare",
-            "product_tax_code": "42242000A0004"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, and billed to Medicare, equipment which is primarily and customarily used to provide or increase the ability to move from one place to another and which is appropriate for use either in a home or a motor vehicle; Is not generally used by persons with normal mobility; and Does not include any motor vehicle or equipment on a motor vehicle normally provided by a motor vehicle manufacturer.  Examples include wheelchairs, crutches, canes, walkers, chair lifts, etc.",
-            "name": "Mobility Enhancing Equipment with Prescription Billed to Medicare",
-            "product_tax_code": "42211500A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, and billed to Medicaid, equipment which is primarily and customarily used to provide or increase the ability to move from one place to another and which is appropriate for use either in a home or a motor vehicle; Is not generally used by persons with normal mobility; and Does not include any motor vehicle or equipment on a motor vehicle normally provided by a motor vehicle manufacturer.  Examples include wheelchairs, crutches, canes, walkers, chair lifts, etc.",
-            "name": "Mobility Enhancing Equipment with Prescription Billed to Medicaid",
-            "product_tax_code": "42211500A0003"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicare, a machine used that filters a patient's blood to remove excess water and waste products when the kidneys are damaged, dysfunctional, or missing. The kidney dialysis machine is an artificial part which augments the natural functioning of the kidneys.",
-            "name": "Kidney Dialysis Equipment for home use with Prescription reimbursed by Medicare",
-            "product_tax_code": "42161800A0004"
-        },
-        {
-            "description": "At home digital or manual (aneroid) sphygmomanometers, also known as a blood pressure meter, blood pressure monitor, or blood pressure gauge, are devices used to measure blood pressure, composed of an inflatable cuff to collapse and then release the artery under the cuff in a controlled manner.",
-            "name": "Blood Pressure Testing Devices",
-            "product_tax_code": "42181600A0001"
-        },
-        {
-            "description": "A topical preparation containing a spermicidal lubricant to prevent pregnancy as indicated by a \"drug facts\" panel or a statement of active ingredients.",
-            "name": "Contraceptive Ointments",
-            "product_tax_code": "53131622A0002"
-        },
-        {
-            "description": "Male or female condoms used to prevent pregnacy or exposure to STDs.",
-            "name": "Condoms",
-            "product_tax_code": "53131622A0000"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicare, equipment that: can withstand repeated use; is primarily and customarily used to serve a medical purpose; generally is not useful to a person in the absence of illness or injury; and is not worn in or on the body. Home use means the equipment is sold to an individual for use at home, regardless of where the individual resides. Examples include hospital beds, commode chairs, bed pans, shower and bath aids, IV poles, etc.",
-            "name": "Durable Medical Equipment for home use with Prescription billed to Medicare",
-            "product_tax_code": "42140000A0002"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicaid, a replacement, corrective, or supportive device, worn on or in the body to: Artificially replace a missing portion of the body; Prevent or correct physical deformity or malfunction; or Support a weak or deformed portion of the body. Worn in or on the body means that the item is implanted or attached so that it becomes part of the body, or is carried by the body and does not hinder the mobility of the individual. Examples include artificial limbs, pacemakers, orthotics, orthopedics, ostomy/colostomy devices, catheters, etc.",
-            "name": "Prosthetic Devices with Prescription Reimbursed by Medicaid",
-            "product_tax_code": "42242000A0005"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, and reimbursed by Medicare, equipment which is primarily and customarily used to provide or increase the ability to move from one place to another and which is appropriate for use either in a home or a motor vehicle; Is not generally used by persons with normal mobility; and Does not include any motor vehicle or equipment on a motor vehicle normally provided by a motor vehicle manufacturer.  Examples include wheelchairs, crutches, canes, walkers, chair lifts, etc.",
-            "name": "Mobility Enhancing Equipment with Prescription Reimbursed by Medicare",
-            "product_tax_code": "42211500A0004"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicaid, nutritional tube feeding equipment including button-style feeding tubes, standard G-tubes, NG-tubes, extension sets, adapters, feeding pumps, feeding pump delivery sets.",
-            "name": "Enteral Feeding Equipment for home use with prescription billed to Medicaid",
-            "product_tax_code": "42231500A0003"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, nutritional tube feeding equipment including button-style feeding tubes, standard G-tubes, NG-tubes, extension sets, adapters, feeding pumps, feeding pump delivery sets.",
-            "name": "Enteral Feeding Equipment for home use with Prescription",
-            "product_tax_code": "42231500A0001"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and billed directly to Medicaid, a machine used that filters a patient's blood to remove excess water and waste products when the kidneys are damaged,  dysfunctional, or missing. The kidney dialysis machine is an artificial part which augments the natural functioning of the kidneys.",
-            "name": "Kidney Dialysis Equipment for home use with Prescription billed to Medicaid",
-            "product_tax_code": "42161800A0003"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional and reimbursed by Medicaid, a machine used that filters a patient's blood to remove excess water and waste products when the kidneys are damaged, dysfunctional, or missing. The kidney dialysis machine is an artificial part which augments the natural functioning of the kidneys.",
-            "name": "Kidney Dialysis Equipment for home use with Prescription and reimbursed by Medicaid",
-            "product_tax_code": "42161800A0005"
-        },
-        {
-            "description": "When sold under prescription order of a licensed professional, a machine used that filters a patient's blood to remove excess water and waste products when the kidneys are damaged,  dysfunctional, or missing. The kidney dialysis machine is an artificial part which augments the natural functioning of the kidneys.",
-            "name": "Kidney Dialysis Equipment for home use with Prescription",
-            "product_tax_code": "42161800A0001"
-        },
-        {
-            "description": "Handbags, Purses",
-            "name": "Handbags, Purses",
-            "product_tax_code": "53121600A0000"
-        },
-        {
-            "description": "Video Gaming Console - Fixed",
-            "name": "Video Gaming Console - Fixed",
-            "product_tax_code": "52161557A0000"
-        },
-        {
-            "description": "Video Cameras",
-            "name": "Video Cameras",
-            "product_tax_code": "45121515A0000"
-        },
-        {
-            "description": "Portable audio equipment that records digital music for playback",
-            "name": "Digital Music Players",
-            "product_tax_code": "52161543A0000"
-        },
-        {
-            "description": "A type of consumer electronic device used to play vinyl recordings.",
-            "name": "Audio Turntables",
-            "product_tax_code": "52161548A0000"
-        },
-        {
-            "description": "Video Gaming Console - Portable",
-            "name": "Video Gaming Console - Portable",
-            "product_tax_code": "52161558A0000"
-        },
-        {
-            "description": "A framed display designed to display preloaded digital images (jpeg or any digital image format). Has slots for flash memory cards and/or an interface for digital photo camera connection.",
-            "name": "Digital Picture Frames",
-            "product_tax_code": "52161549A0000"
-        },
-        {
-            "description": "Digital Cameras",
-            "name": "Digital Cameras",
-            "product_tax_code": "45121504A0000"
-        },
-        {
-            "description": "Mobile Phones",
-            "name": "Mobile Phones",
-            "product_tax_code": "43191501A0000"
-        },
-        {
-            "description": "A digital wristwatch that provides many other features besides timekeeping.  Like a smartphone, a smartwatch has a touchscreen display, which allows you to perform actions by tapping or swiping on the screen. Smartwatches include allow access to apps, similar to apps for smartphones and tablets.",
-            "name": "Watches - Smart",
-            "product_tax_code": "54111500A0001"
-        },
-        {
-            "description": "A bicycle helmet that is NOT marketed and labeled as being intended for youth.",
-            "name": "Bicycle Helmets - Adult",
-            "product_tax_code": "46181704A0003"
-        },
-        {
-            "description": "A bicycle helmet marketed and labeled as being intended for youth.",
-            "name": "Bicycle Helmets - Youth",
-            "product_tax_code": "46181704A0002"
-        },
-        {
-            "description": "Luggage",
-            "name": "Luggage",
-            "product_tax_code": "53121500A0000"
-        },
-        {
-            "description": "Clothing - Sleep or eye mask",
-            "name": "Clothing - Sleep or eye mask",
-            "product_tax_code": "53102607A0000"
-        },
-        {
-            "description": "Clothing - Pocket protectors",
-            "name": "Clothing - Pocket protectors",
-            "product_tax_code": "53102514A0000"
-        },
-        {
-            "description": "Clothing - Button covers",
-            "name": "Clothing - Button covers",
-            "product_tax_code": "53102515A0000"
-        },
-        {
-            "description": "Shoe Inserts/Insoles",
-            "name": "Clothing - Shoe Inserts/Insoles",
-            "product_tax_code": "46182208A0000"
-        },
-        {
-            "description": "Aprons - Household/Kitchen",
-            "name": "Clothing - Aprons - Household/Kitchen",
-            "product_tax_code": "46181501A0002"
-        },
-        {
-            "description": "Hunting Vests",
-            "name": "Clothing - Hunting Vests",
-            "product_tax_code": "53103100A0003"
-        },
-        {
-            "description": "Clothing apparel/uniforms that are specific to the training and competition of various martial arts.",
-            "name": "Clothing - Martial Arts Attire",
-            "product_tax_code": "53102717A0001"
-        },
-        {
-            "description": "Clothing - Umbrellas",
-            "name": "Clothing - Umbrellas",
-            "product_tax_code": "53102505A0000"
-        },
-        {
-            "description": "Briefcases",
-            "name": "Briefcases",
-            "product_tax_code": "53121701A0000"
-        },
-        {
-            "description": "Wallets",
-            "name": "Wallets",
-            "product_tax_code": "53121600A0001"
-        },
-        {
-            "description": "Wristwatch timepieces",
-            "name": "Watches",
-            "product_tax_code": "54111500A0000"
-        },
-        {
-            "description": "Jewelry",
-            "name": "Jewelry",
-            "product_tax_code": "54100000A0000"
-        },
-        {
-            "description": "Non-prescription sunglasses",
-            "name": "Sunglasses - Non-Rx",
-            "product_tax_code": "42142905A0001"
-        },
-        {
-            "description": "Wigs, Hairpieces, Hair extensions",
-            "name": "Clothing - Wigs, Hairpieces, Hair extensions",
-            "product_tax_code": "53102500A0002"
-        },
-        {
-            "description": "Hair notions, hair clips,  barrettes, hair bows, hair nets, etc.",
-            "name": "Clothing - Hair Accessories",
-            "product_tax_code": "53102500A0001"
-        },
-        {
-            "description": "Clothing - Headbands",
-            "name": "Clothing - Headbands",
-            "product_tax_code": "53102513A0000"
-        },
-        {
-            "description": "These supplies contain medication such as an antibiotic ointment.  They are a labeled with a \"drug facts\" panel or a statement of active ingredients.  A wound care supply is defined as an item that is applied directly to or inside a wound to absorb wound drainage, protect healing tissue, maintain a moist or dry wound environment (as appropriate), or prevent bacterial contamination.  Examples include bandages, dressings, gauze, medical tape.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Wound Care Supplies - Bandages, Dressings, Gauze - Medicated",
-            "product_tax_code": "42311514A0000"
-        },
-        {
-            "description": "A wound care supply is defined as an item that is applied directly to or inside a wound to absorb wound drainage, protect healing tissue, maintain a moist or dry wound environment (as appropriate), or prevent bacterial contamination.  Examples include bandages, dressings, gauze, medical tape.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Wound Care Supplies - Bandages, Dressings, Gauze",
-            "product_tax_code": "42311500A0001"
-        },
-        {
-            "description": "Toothpaste containing \"drug facts\" panel or a statement of active ingredients.  These products do contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Toothpaste",
-            "product_tax_code": "53131502A0000"
-        },
-        {
-            "description": "Disposable moistened cleansing wipes - non medicated.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Baby Wipes/Cleansing Wipes",
-            "product_tax_code": "53131624A0000"
-        },
-        {
-            "description": "Toilet Paper.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Toilet Paper",
-            "product_tax_code": "14111704A0000"
-        },
-        {
-            "description": "A lotion, spray, gel, foam, stick or other topical product that absorbs or reflects some of the sun's ultraviolet (UV) radiation and thus helps protect against sunburn.  Sunscreen contains a \"drug facts\" label or statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Sunscreen",
-            "product_tax_code": "53131609A0000"
-        },
-        {
-            "description": "Soaps, body washes, shower gels for personal hygiene containing antibacterial. These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Soaps - Antibacterial",
-            "product_tax_code": "53131608A0001"
-        },
-        {
-            "description": "Over-the-counter nicotine replacement products, including patches, gum, lozenges, sprays and inhalers.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Smoking Cessation Products",
-            "product_tax_code": "51143218A0000"
-        },
-        {
-            "description": "Lotions, moisturizers, creams, powders, sprays, etc that promote optimal skin health.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Skin Care Products- Medicated",
-            "product_tax_code": "51241200A0001"
-        },
-        {
-            "description": "A hair care product for cleansing the hair/scalp, with anti-dandruff active ingredients.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Shampoo - medicated (anti-dandruff)",
-            "product_tax_code": "53131628A0001"
-        },
-        {
-            "description": "A multi-purpose skin protectorant and topical ointment.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Petroleum Jelly",
-            "product_tax_code": "53131641A0000"
-        },
-        {
-            "description": "An over-the-counter drug via RX is a substance that contains a label identifying it as a drug and including a \"drug facts\" panel or a statement of active ingredients, that can be obtained without a prescription,  but is sold under prescription order of a licensed professional.  A drug can be intended for internal (ingestible, implant, injectable) or external (topical) application to the human body.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Over-the-Counter Drugs via Prescription",
-            "product_tax_code": "51030"
-        },
-        {
-            "description": "Flexible adhesive strips that attach over the bridge of the nose to lift the sides of the nose, opening the nasal passages to provide relief for congestion and snoring.  The products are drug free and contain no active drug ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Nasal Breathing Strips",
-            "product_tax_code": "42312402A0001"
-        },
-        {
-            "description": "Therapeutic mouthwash, having active ingredients (such as antiseptic, or flouride) intended to help control or reduce conditions like bad breath, gingivitis, plaque, and tooth decay.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Mouthwash - Therapeutic",
-            "product_tax_code": "53131501A0000"
-        },
-        {
-            "description": "Multiple use medical thermometers for oral, temporal/forehead, or rectal body temperature diagnostics.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Medical Thermometers - Reusable",
-            "product_tax_code": "42182200A0002"
-        },
-        {
-            "description": "One-time use medical thermometers for oral, temporal/forehead, or rectal body temperature diagnostics.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Medical Thermometers - Disposable",
-            "product_tax_code": "42182200A0001"
-        },
-        {
-            "description": "Masks designed for one-time use to protect the wearer from contamination of breathable particles.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Medical Masks",
-            "product_tax_code": "42131713A0001"
-        },
-        {
-            "description": "A medicated skin protectorant for the lips.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Lip Balm - Medicated",
-            "product_tax_code": "53131630A0001"
-        },
-        {
-            "description": "A skin protectorant for the lips.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Lip Balm",
-            "product_tax_code": "53131630A0000"
-        },
-        {
-            "description": "Artificial devices to correct or alleviate hearing deficiencies, sold under prescription order of a licensed professional. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hearing Aids with Prescription",
-            "product_tax_code": "42211705A0000"
-        },
-        {
-            "description": "Artificial deives to correct or alleviate hearing deficiencies, sold without a prescription order of a licensed professional. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hearing Aids without Prescription",
-            "product_tax_code": "42211705A0001"
-        },
-        {
-            "description": "Batteries specifically labeled and designed to operate hearing aid devices, sold under prescription order of a licensed professional. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hearing Aid Batteries with Prescription",
-            "product_tax_code": "26111710A0001"
-        },
-        {
-            "description": "Batteries specifically labeled and designed to operate hearing aid devices, sold without a prescription order of a licensed professional.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hearing Aid Batteries without Prescription",
-            "product_tax_code": "26111710A0002"
-        },
-        {
-            "description": "A liquid, gel, foam, or wipe generally used to decrease infectious agents on the hands. Alcohol-based versions typically contain some combination of isopropyl alcohol, ethanol (ethyl alcohol), or n-propanol.  Alcohol-free products are generally based on disinfectants, or on antimicrobial agents.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hand Sanitizers",
-            "product_tax_code": "53131626A0000"
-        },
-        {
-            "description": "Topical foams, creams, gels, etc that prevent hair loss and promote hair regrowth.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hair Loss Products",
-            "product_tax_code": "51182001A0001"
-        },
-        {
-            "description": "A collection of mixed supplies and equipment that is used to give medical treatment, often housed in durable plastic boxes, fabric pouches or in wall mounted cabinets.  Exempt or low rated qualifying medicinal items (eg. OTC drugs) make up 51% or more of the value of the kit.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "First Aid Kits - 51% or more medicinal items",
-            "product_tax_code": "42172001A0002"
-        },
-        {
-            "description": "A collection of mixed supplies and equipment that is used to give medical treatment, often housed in durable plastic boxes, fabric pouches or in wall mounted cabinets.  Exempt or low rated qualifying medicinal items (eg. OTC drugs) make up 50% or less of the value of the kit.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "First Aid Kits - 50% or less medicinal items",
-            "product_tax_code": "42172001A0001"
-        },
-        {
-            "description": "Over-the-counter antifungal creams, ointments or suppositories to treat yeast infections, containing a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Feminine Yeast Treatments",
-            "product_tax_code": "51302300A0001"
-        },
-        {
-            "description": "Vaginal cleaning products include douches and wipes with medication such as an antiseptic, containing a \"drug facts\" panel or a statement of active ingredients. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Feminine Cleansing Solutions - Medicated",
-            "product_tax_code": "53131615A0002"
-        },
-        {
-            "description": "Vaginal cleaning products include douches and wipes. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Feminine Cleansing Solutions",
-            "product_tax_code": "53131615A0001"
-        },
-        {
-            "description": "Single use disposable gloves (latex, nitrile, vinyl, etc) that while appropriate for multiple uses,  have an application in a first aid or medical setting.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Disposable Gloves",
-            "product_tax_code": "42132203A0000"
-        },
-        {
-            "description": "Personal under-arm deodorants/antiperspirants.  These products do contain a \"drug facts\" panel or a statement of active ingredients, typically aluminum.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Deodorant/Antiperspirant",
-            "product_tax_code": "53131606A0000"
-        },
-        {
-            "description": "Denture adhesives are pastes, powders or adhesive pads that may be placed in/on dentures to help them stay in place.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Denture creams/adhesives",
-            "product_tax_code": "53131510A0000"
-        },
-        {
-            "description": "Toothbrushes.    This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Toothbrushes",
-            "product_tax_code": "53131503A0000"
-        },
-        {
-            "description": "Dental Floss/picks.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Dental Floss/picks",
-            "product_tax_code": "53131504A0000"
-        },
-        {
-            "description": "Single use cotton balls or swabs for multi-purpose use other than applying medicines and cleaning wounds, due to not being sterile.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Cotton Balls/Swabs - Unsterile",
-            "product_tax_code": "42141500A0002"
-        },
-        {
-            "description": "Single use cotton balls or swabs for application of antiseptics and medications and to cleanse scratches, cuts or minor wounds.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Cotton Balls/Swabs - Sterile",
-            "product_tax_code": "42141500A0001"
-        },
-        {
-            "description": "Corrective lenses, eyeglasses, sold under prescription order of a licensed professional.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Corrective Lenses, Eyeglasses with Prescription",
-            "product_tax_code": "42142900A0001"
-        },
-        {
-            "description": "Corrective lenses, including eyeglasses and contact lenses, sold without a prescription order of a licensed professional.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Corrective Lenses without Prescription",
-            "product_tax_code": "42142900A0002"
-        },
-        {
-            "description": "Liquid solution for lubricating/rewetting, but not disinfecting, contact lenses.  This solution is applied directly to the lens, rather then inserted into the eye. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Contact Lens Lubricating Solutions - For lens",
-            "product_tax_code": "42142914A0001"
-        },
-        {
-            "description": "Liquid solution for lubricating/rewetting, but not disinfecting, contact lenses.  This solution is applied directly to the eye. This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Contact Lens Lubricating Solutions - For eyes",
-            "product_tax_code": "42142914A0002"
-        },
-        {
-            "description": "Contact lenses, sold under prescription order of a licensed professional.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Contact Lenses with Prescription",
-            "product_tax_code": "42142913A0000"
-        },
-        {
-            "description": "Liquid solution for cleaning and disinfecting contact lenses.   This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Contact Lens Disinfecting Solutions",
-            "product_tax_code": "42142914A0000"
-        },
-        {
-            "description": "A reusable pain management supply that includes artificial ice packs, gel packs, heat wraps, etc used for pain relief.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Cold or Hot Therapy Packs - Reusable",
-            "product_tax_code": "42142100A0002"
-        },
-        {
-            "description": "A heating pad is a pad used for warming of parts of the body in order to manage pain.  Types of heating pads include electrical, chemical and hot water bottles.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Heating Pads",
-            "product_tax_code": "42142100A0001"
-        },
-        {
-            "description": "A single use pain management supply that includes artificial ice packs, gel packs, heat wraps, etc used for pain relief.   These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Cold or Hot Therapy Packs - Disposable - Medicated",
-            "product_tax_code": "42142100A0004"
-        },
-        {
-            "description": "A single use pain management supply that includes artificial ice packs, gel packs, heat wraps, etc used for pain relief.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Cold or Hot Therapy Packs - Disposable",
-            "product_tax_code": "42142100A0003"
-        },
-        {
-            "description": "Baby powder is an astringent powder used for preventing diaper rash, as a spray, and for other cosmetic uses. It may be composed of talcum (in which case it is also called talcum powder) or corn starch.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Baby Powder",
-            "product_tax_code": "53131649A0001"
-        },
-        {
-            "description": "Baby oil is an inert (typically mineral) oil for the purpose of keeping skin soft and supple.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Baby Oil",
-            "product_tax_code": "51241900A0001"
-        },
-        {
-            "description": "A cosmetic foam or gel used for shaving preparation. The purpose of shaving cream is to soften the hair by providing lubrication.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.    This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Shaving Creams",
-            "product_tax_code": "53131611A0000"
-        },
-        {
-            "description": "Personal under-arm deodorants/antiperspirants containing natural ingredients and/or ingredients that are not considered drugs.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Deodorant - Natural or no active ingredients",
-            "product_tax_code": "53131606A0001"
-        },
-        {
-            "description": "A hair care product for cleansing the hair/scalp.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Shampoo",
-            "product_tax_code": "53131628A0000"
-        },
-        {
-            "description": "Various surfactant preparations to improve cleaning, enhance the enjoyment of bathing, and serve as a vehicle for cosmetic agents.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.    This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Bubble Bath, Bath Salts/Oils/Crystals",
-            "product_tax_code": "53131612A0001"
-        },
-        {
-            "description": "Cosmetic mouthwash may temporarily control bad breath and leave behind a pleasant taste, but has no chemical or biological application beyond their temporary benefit.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Mouthwash - Cosmetic",
-            "product_tax_code": "53131501A0001"
-        },
-        {
-            "description": "Teeth whitening gels, rinse, strips, trays, etc containing bleaching agents.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.    This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Teeth Whitening Kits",
-            "product_tax_code": "42151506A0000"
-        },
-        {
-            "description": "A hair care product typically applied and rinsed after shampooing that is used to improve the feel, appearance and manageability of hair.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Conditioner - Hair",
-            "product_tax_code": "53131628A0002"
-        },
-        {
-            "description": "Depilatories are cosmetic preparations used to remove hair from the skin.  Chemical depilatories are available in gel, cream, lotion, aerosol, roll-on, and powder forms.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.    This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hair Removal Products",
-            "product_tax_code": "53131623A0000"
-        },
-        {
-            "description": "Breath spray is a product sprayed into the mouth and breath strips dissolve in the mouth for the purpose of eliminating halitosis.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.    This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Breath Spray/dissolvable strips",
-            "product_tax_code": "53131509A0000"
-        },
-        {
-            "description": "Lotions, moisturizers, creams, powders, sprays, etc that promote optimal skin health.  These products do not contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Skin Care Products",
-            "product_tax_code": "51241200A0002"
-        },
-        {
-            "description": "Liquid drops to be placed inside the ear canal to reduce the symptoms of an ear ache, or to act as an ear drying aid, or to loosen, cleanse, and aid in the removal of ear wax.  These products contain a \"drug facts\" panel or a statement of active ingredients.  Examples include Ear Ache, Swimmers' Ears, and Ear Wax removal drops.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Ear Drops - Medicated",
-            "product_tax_code": "51241000A0001"
-        },
-        {
-            "description": "Topical medicated solutions for treating skin acne.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Acne Treatments",
-            "product_tax_code": "51241400A0001"
-        },
-        {
-            "description": "A skin cream forming a protective barrier to help heal and soothe diaper rash discomfort.  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Diaper Cream",
-            "product_tax_code": "51241859A0001"
-        },
-        {
-            "description": "A liquid solution typically used as a topical antiseptic.  The products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Isopropyl (Rubbing) Alcohol",
-            "product_tax_code": "51471901A0000"
-        },
-        {
-            "description": "Hydrogen peroxide is a mild antiseptic used on the skin to prevent infection of minor cuts, scrapes, and burns.  It may also be used as a mouth rinse to help remove mucus or to relieve minor mouth irritation (e.g., due to canker/cold sores, gingivitis).  These products contain a \"drug facts\" panel or a statement of active ingredients.  This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Hydrogen Peroxide",
-            "product_tax_code": "51473503A0000"
-        },
-        {
-            "description": "Articles intended to be rubbed, poured, sprinkled, or sprayed on, introduced into, or otherwise applied to the human body or any part thereof for beautifying, promoting attractiveness, or altering the appearance.  This category supports only the following items: Acrylic fingernail glue, Acrylic fingernails, Artificial eyelashes, Blush, Bronzer, Body glitter, Concealer, Eyelash glue, Finger/toenail decorations, Finger/toenail polish, Nail polish remover, Hair coloring, Hair mousse/gel, Hair oil, Hair spray, Hair relaxer, Hair wave treatment, Hair wax, Lip gloss, Lip liner, Lipstick, Liquid foundation, Makeup, Mascara, Nail polish remover, Powder foundation, Cologne, Perfume.    This code is intended for sales directly to end consumers that are NOT healthcare providers.",
-            "name": "Cosmetics - Beautifying",
-            "product_tax_code": "53131619A0001"
-        },
-        {
-            "description": "Power cords",
-            "name": "Power cords",
-            "product_tax_code": "26121636A0000"
-        },
-        {
-            "description": "Archery accessories including quivers, releases, arrow shafts, armguards, hunting belts, bow parts, cleaning products, mounted safety equipment, scopes, sights, hunting slings, string wax, targets, target throwers, etc.",
-            "name": "Archery Accessories",
-            "product_tax_code": "49181602A0002"
-        },
-        {
-            "description": "Landscape soil, mulch, compost - residential",
-            "name": "Landscape Soil, Mulch, Compost - Residential",
-            "product_tax_code": "11121700A0001"
-        },
-        {
-            "description": "Firearms, limited to pistols, revolvers, rifles with a barrel no greater than an internal diameter of .50 caliber or a shotguns of 10 gauge or smaller.",
-            "name": "Firearms",
-            "product_tax_code": "46101500A0001"
-        },
-        {
-            "description": "Firearm accessories including repair parts, cleaning products, holsters, mounted safety equipment, choke tubes, scopes, shooting tripod/bipod/monopod, shooting bags/pouches, sights, etc.",
-            "name": "Firearm Accessories",
-            "product_tax_code": "46101506A0001"
-        },
-        {
-            "description": "Portable fuel container",
-            "name": "Portable Fuel Container",
-            "product_tax_code": "24111808A0001"
-        },
-        {
-            "description": "Hard and soft cases designed specifically for firearms equipment",
-            "name": "Gun Cases",
-            "product_tax_code": "46101801A0000"
-        },
-        {
-            "description": "Primary archery equipment including bows, crossbow, and bow strings.",
-            "name": "Archery Equipment",
-            "product_tax_code": "49181602A0001"
-        },
-        {
-            "description": "Hard and soft cases designed specifically for archery equipment.",
-            "name": "Archery Cases",
-            "product_tax_code": "46101801A0001"
-        },
-        {
-            "description": "Protective earmuffs to muffle the sound of gunfire.",
-            "name": "Hearing Protection Earmuffs",
-            "product_tax_code": "46181902A0001"
-        },
-        {
-            "description": "Ammunition for firearms with a barrel no greater than an internal diameter of .50 caliber or a shotgun of 10 gauge or smaller., including bullets, shotgun shells, and gunpowder.",
-            "name": "Ammunition",
-            "product_tax_code": "46101600A0001"
-        },
-        {
-            "description": "Bedclothes items including sheets, pillow cases, bedspreads, comforters, blankets, throws, duvet covers, pillow shams, bed skirts, mattress pad, mattress toppers, and pillows.",
-            "name": "Bedding",
-            "product_tax_code": "52121500A0000"
-        },
-        {
-            "description": "Towels used for individual drying of persons, including bath towels, beach towels, wash cloths, hand towels, fact towels, sport towels, etc.",
-            "name": "Bath towels",
-            "product_tax_code": "52121700A0000"
-        },
-        {
-            "description": "WaterSense labeled urinals.",
-            "name": "Urinals - WaterSense",
-            "product_tax_code": "30181506A0000"
-        },
-        {
-            "description": "WaterSense labeled toilets.",
-            "name": "Toilets - WaterSense",
-            "product_tax_code": "30181505A0000"
-        },
-        {
-            "description": "WaterSense labeled irrigation controllers, which act like a thermostat for your sprinkler system telling it when to turn on and off, use local weather and landscape conditions to tailor watering schedules to actual conditions on the site.",
-            "name": "Irrigation Controls - WaterSense",
-            "product_tax_code": "21102503A0001"
-        },
-        {
-            "description": "Ceiling Fans carrying an Energy Star rating.",
-            "name": "Ceiling fans - Energy Star",
-            "product_tax_code": "40101609A0000"
-        },
-        {
-            "description": "Standard incandescent light bulbs carrying an Energy Star rating.",
-            "name": "Incandescent Light Bulbs - Energy Star",
-            "product_tax_code": "39101612A0001"
-        },
-        {
-            "description": "Compact Fluorescent light (CFL) bulbs carrying an Energy Star rating.",
-            "name": "Compact Fluorescent Light Bulbs - Energy Star",
-            "product_tax_code": "39101619A0001"
-        },
-        {
-            "description": "Domestic appliance carrying an Energy Star Rating which reduces and maintains the level of humidity in the air.",
-            "name": "Dehumidifier - Energy Star",
-            "product_tax_code": "40101902A0000"
-        },
-        {
-            "description": "Domestic air conditioning (central or room) systems carrying Energy Star rating.",
-            "name": "Air conditioners - Energy Star",
-            "product_tax_code": "40101701A0000"
-        },
-        {
-            "description": "Artificial ice, blue ice, ice packs, reusable ice",
-            "name": "Artificial Ice",
-            "product_tax_code": "24121512A0000"
-        },
-        {
-            "description": "A port replicator is an attachment for a notebook computer that allows a number of devices such as a printer, large monitor, and keyboard to be simultaneously connected.",
-            "name": "Port Replicators",
-            "product_tax_code": "43211603A0000"
-        },
-        {
-            "description": "Computer Mouse/Pointing Devices",
-            "name": "Computer Mouse/Pointing Devices",
-            "product_tax_code": "43211708A0000"
-        },
-        {
-            "description": "Storage drives, hard drives, Zip drives, etc.",
-            "name": "Computer Drives",
-            "product_tax_code": "43201800A0001"
-        },
-        {
-            "description": "An in home programmable thermostat, such as a WiFi enabled smart thermostat, carrying an Energy Star rating.",
-            "name": "Programmable Wall Thermostat - Energy Star",
-            "product_tax_code": "41112209A0001"
-        },
-        {
-            "description": "Domestic gas or oil boilers for space or water heating carrying an Energy Star rating.",
-            "name": "Boilers - Energy Star",
-            "product_tax_code": "40102004A0001"
-        },
-        {
-            "description": "Domestic water heater carrying Energy Star rating.",
-            "name": "Water heater - Energy Star",
-            "product_tax_code": "40101825A0000"
-        },
-        {
-            "description": "Domestic freezers carrying Energy Star rating.",
-            "name": "Freezers- Energy Star",
-            "product_tax_code": "52141506A0000"
-        },
-        {
-            "description": "Domestic air source heat pumps carrying Energy Star rating.",
-            "name": "Heat Pumps - Energy Star",
-            "product_tax_code": "40101806A0000"
-        },
-        {
-            "description": "Domestic gas or oil furnaces carrying an Energy Star rating.",
-            "name": "Furnaces - Energy Star",
-            "product_tax_code": "40101805A0000"
-        },
-        {
-            "description": "Plywood, window film, storm shutters, hurricane shutters or other materials specifically designed to protect windows.",
-            "name": "Storm shutters/window protection devices",
-            "product_tax_code": "30151801A0001"
-        },
-        {
-            "description": "Smoke Detectors",
-            "name": "Smoke Detectors",
-            "product_tax_code": "46191501A0000"
-        },
-        {
-            "description": "Mobile phone charging device/cord",
-            "name": "Mobile Phone Charging Device/cord",
-            "product_tax_code": "43191501A0002"
-        },
-        {
-            "description": "A webcam is a video camera that feeds or streams an image or video in real time to or through a computer to a computer network, such as the Internet. Webcams are typically small cameras that sit on a desk, attach to a user's monitor, or are built into the hardware",
-            "name": "Web Camera",
-            "product_tax_code": "45121520A0000"
-        },
-        {
-            "description": "A sound card is an expansion component used in computers to receive and send audio.",
-            "name": "Sound Cards",
-            "product_tax_code": "43201502A0000"
-        },
-        {
-            "description": "Computer Speakers",
-            "name": "Computer Speakers",
-            "product_tax_code": "43211607A0000"
-        },
-        {
-            "description": "Computer Microphones",
-            "name": "Computer Microphones",
-            "product_tax_code": "43211719A0000"
-        },
-        {
-            "description": "A docking station is a hardware frame and set of electrical connection interfaces that enable a notebook computer to effectively serve as a desktop computer.",
-            "name": "Docking Stations",
-            "product_tax_code": "43211602A0000"
-        },
-        {
-            "description": "Computer Batteries",
-            "name": "Computer Batteries",
-            "product_tax_code": "26111711A0001"
-        },
-        {
-            "description": "Computer Monitor/Displays",
-            "name": "Computer Monitor/Displays",
-            "product_tax_code": "43211900A0000"
-        },
-        {
-            "description": "Computer Keyboards",
-            "name": "Computer Keyboards",
-            "product_tax_code": "43211706A0000"
-        },
-        {
-            "description": "Printer Ink",
-            "name": "Printer Ink",
-            "product_tax_code": "44103105A0000"
-        },
-        {
-            "description": "Printer Paper",
-            "name": "Printer Paper",
-            "product_tax_code": "14111507A0000"
-        },
-        {
-            "description": "Non-electric can opener",
-            "name": "Can opener - manual",
-            "product_tax_code": "52151605A0001"
-        },
-        {
-            "description": "Sheet music - Student",
-            "name": "Sheet music - Student",
-            "product_tax_code": "55101514A0000"
-        },
-        {
-            "description": "Musical instruments - Student",
-            "name": "Musical instruments - Student",
-            "product_tax_code": "60130000A0001"
-        },
-        {
-            "description": "Reference printed material commonly used by a student in a course of study as a reference and to learn the subject being taught.",
-            "name": "Dictionaries/Thesauruses",
-            "product_tax_code": "55101526A0001"
-        },
-        {
-            "description": "An item commonly used by a student in a course of study for artwork.  This category is limited to the following items...clay and glazes, paints, paintbrushes for artwork, sketch and drawing pads, watercolors.",
-            "name": "School Art Supplies",
-            "product_tax_code": "60121200A0001"
-        },
-        {
-            "description": "A calendar based notebook to aid in outlining one's daily appointments, classes, activities, etc.",
-            "name": "Daily Planners",
-            "product_tax_code": "44112004A0001"
-        },
-        {
-            "description": "Portable self-powered or battery powered radio, two-way radio, weatherband radio.",
-            "name": "Portable Radios",
-            "product_tax_code": "43191510A0000"
-        },
-        {
-            "description": "Single or multi-pack AA, AAA, c, D, 6-volt or 9-volt batteries, excluding automobile or boat batteries.",
-            "name": "Alkaline Batteries",
-            "product_tax_code": "26111702A0000"
-        },
-        {
-            "description": "Routers",
-            "name": "Routers",
-            "product_tax_code": "43222609A0000"
-        },
-        {
-            "description": "Removable storage media such as compact disks, flash drives, thumb drives, flash memory cards.",
-            "name": "Computer Storage Media",
-            "product_tax_code": "43202000A0000"
-        },
-        {
-            "description": "Computer Printer",
-            "name": "Computer Printer",
-            "product_tax_code": "43212100A0001"
-        },
-        {
-            "description": "Portable self-powered or battery powered light sources, including flashlights, lanterns, emergency glow sticks or light sticks.",
-            "name": "Portable Light Sources",
-            "product_tax_code": "39111610A0000"
-        },
-        {
-            "description": "Canned software on tangible media that is used for non-recreational purposes, such as Antivirus, Database, Educational, Financial, Word processing, etc.",
-            "name": "Software - Prewritten, tangible media - Non-recreational",
-            "product_tax_code": "43230000A1101"
-        },
-        {
-            "description": "Personal computers, including laptops, tablets, desktops.",
-            "name": "Personal Computers",
-            "product_tax_code": "43211500A0001"
-        },
-        {
-            "description": "A device that joins pages of paper or similar material by fastening a thin metal staple through the sheets and folding the ends underneath.",
-            "name": "Staplers/Staples",
-            "product_tax_code": "44121615A0000"
-        },
-        {
-            "description": "Pins/tacks to secure papers, pictures, calendars, etc. to bulletin boards, walls, etc.",
-            "name": "Push pins/tacks",
-            "product_tax_code": "44122106A0000"
-        },
-        {
-            "description": "Bags/packs designed to carry students' books during the school day.  This category does not include backpags for traveling, hiking, camping, etc.",
-            "name": "Bookbags/Backpacks - Student",
-            "product_tax_code": "53121603A0001"
-        },
-        {
-            "description": "Ground anchor systems and tie down kits for securing property against severe weather.",
-            "name": "Ground Anchor Systems and Tie-down Kits",
-            "product_tax_code": "31162108A0000"
-        },
-        {
-            "description": "An expansion card that allows the computer to send graphical information to a video display device such as a monitor, TV, or projector. Video cards are often used by gamers in place of integrated graphics due to their extra processing power and video ram.",
-            "name": "Video/Graphics Card",
-            "product_tax_code": "43201401A0000"
-        },
-        {
-            "description": "Scanners",
-            "name": "Scanners",
-            "product_tax_code": "43211711A0000"
-        },
-        {
-            "description": "Modems",
-            "name": "Modems",
-            "product_tax_code": "43222628A0000"
-        },
-        {
-            "description": "A map that could be used by a student in a course of study as a reference and to learn the subject being taught.",
-            "name": "Maps - Student",
-            "product_tax_code": "60103410A0001"
-        },
-        {
-            "description": "Tarps, plastic sheeting, plastic drop cloths, waterproof sheeting.",
-            "name": "Tarpaulins and Weatherproof Sheeting",
-            "product_tax_code": "24141506A0000"
-        },
-        {
-            "description": "Portable generator used to provide light or communications or power appliances during a power outage.",
-            "name": "Portable Generator",
-            "product_tax_code": "26111604A0001"
-        },
-        {
-            "description": "Headphones/Earbuds",
-            "name": "Headphones/Earbuds",
-            "product_tax_code": "52161514A0000"
-        },
-        {
-            "description": "A portable electronic device for reading digital books and periodicals.",
-            "name": "E-Book Readers",
-            "product_tax_code": "43211519A0000"
-        },
-        {
-            "description": "Mobile phone batteries",
-            "name": "Mobile Phone Batteries",
-            "product_tax_code": "43191501A0001"
-        },
-        {
-            "description": "A globe that could be used by a student in a course of study as a reference and to learn the subject being taught.",
-            "name": "Globes - Student",
-            "product_tax_code": "60104414A0001"
-        },
-        {
-            "description": "Domestic standard size refrigerators carrying Energy Star rating.",
-            "name": "Refrigerators - Energy Star",
-            "product_tax_code": "52141501A0000"
-        },
-        {
-            "description": "Non-electric food or beverage cooler.",
-            "name": "Food Storage Cooler",
-            "product_tax_code": "52152002A0001"
-        },
-        {
-            "description": "A motherboard is the physical component in a computer that contains the computer's basic circuitry and other components",
-            "name": "Motherboards",
-            "product_tax_code": "43201513A0000"
-        },
-        {
-            "description": "Calculators",
-            "name": "Calculators",
-            "product_tax_code": "44101807A0000"
-        },
-        {
-            "description": "Axes/Hatchets",
-            "name": "Axes/Hatchets",
-            "product_tax_code": "27112005A0000"
-        },
-        {
-            "description": "Water conserving products are for conserving or retaining groundwater; recharging water tables; or decreasing ambient air temperature, and so limiting water evaporation. Examples include soil sufactants, a soaker or drip-irrigation hose, a moisture control for a sprinkler or irrigation system, a rain barrel or an alternative rain and moisture collection system, a permeable ground cover surface that allows water to reach underground basins, aquifers or water collection points.",
-            "name": "Water Conserving Products",
-            "product_tax_code": "21102500A0001"
-        },
-        {
-            "description": "Domestic clothes drying appliances carrying Energy Star rating.",
-            "name": "Clothes drying machine - Energy Star",
-            "product_tax_code": "52141602A0000"
-        },
-        {
-            "description": "Software - Prewritten, electronic delivery - Business Use",
-            "name": "Software - Prewritten, electronic delivery - Business Use",
-            "product_tax_code": "43230000A9200"
-        },
-        {
-            "description": "Software - Custom, electronic delivery - Business Use",
-            "name": "Software - Custom, electronic delivery - Business Use",
-            "product_tax_code": "43230000A9201"
-        },
-        {
-            "description": "Food and Beverage - Sugar and Sugar Substitutes",
-            "name": "Food and Beverage - Sugar and Sugar Substitutes",
-            "product_tax_code": "50161900A0000"
-        },
-        {
-            "description": "Food and Beverage - Eggs and egg products",
-            "name": "Food and Beverage - Eggs and egg products",
-            "product_tax_code": "50131600A0000"
-        },
-        {
-            "description": "Food and Beverage - Coffee, coffee substitutes and tea",
-            "name": "Food and Beverage - Coffee, coffee substitutes and tea",
-            "product_tax_code": "50201700A0000"
-        },
-        {
-            "description": "Food and Beverage - Candy",
-            "name": "Food and Beverage - Candy",
-            "product_tax_code": "50161800A0000"
-        },
-        {
-            "description": "Food and Beverage - Butter, Margarine, Shortening and Cooking Oils",
-            "name": "Food and Beverage - Butter, Margarine, Shortening and Cooking Oils",
-            "product_tax_code": "50151500A0000"
-        },
-        {
-            "description": "Clothing - Facial shields",
-            "name": "Clothing - Facial shields",
-            "product_tax_code": "46181702A0001"
-        },
-        {
-            "description": "Clothing - Hard hats",
-            "name": "Clothing - Hard hats",
-            "product_tax_code": "46181701A0001"
-        },
-        {
-            "description": "Clothing - Cleanroom footwear",
-            "name": "Clothing - Cleanroom footwear",
-            "product_tax_code": "46181603A0001"
-        },
-        {
-            "description": "Clothing - Fire retardant footwear",
-            "name": "Clothing - Fire retardant footwear",
-            "product_tax_code": "46181601A0001"
-        },
-        {
-            "description": "Clothing - Protective pants",
-            "name": "Clothing - Protective pants",
-            "product_tax_code": "46181527A0001"
-        },
-        {
-            "description": "Clothing - Garters",
-            "name": "Clothing - Garters",
-            "product_tax_code": "53102509A0000"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for custom software including items delivered electronically (includes support services only - no updates/upgrades)",
-            "name": "Software maintenance and support - Optional, custom, electronic delivery (support services only)",
-            "product_tax_code": "81112200A2222"
-        },
-        {
-            "description": "Software maintenance and support - Mandatory maintenance and support charges for prewritten software including items delivered by load and leave",
-            "name": "Software maintenance and support - Mandatory, prewritten, load and leave delivery",
-            "product_tax_code": "81112200A1310"
-        },
-        {
-            "description": "Software maintenance and support - Mandatory maintenance and support charges for prewritten software including items delivered electronically",
-            "name": "Software maintenance and support - Mandatory, prewritten, electronic delivery",
-            "product_tax_code": "81112200A1210"
-        },
-        {
-            "description": "Electronic software documentation or user manuals - For prewritten software & delivered electronically",
-            "name": "Electronic software documentation or user manuals - Prewritten, electronic delivery",
-            "product_tax_code": "55111601A1200"
-        },
-        {
-            "description": "Clothing - Fur Ear muffs or scarves",
-            "name": "Clothing - Fur Ear muffs or scarves",
-            "product_tax_code": "53102502A0001"
-        },
-        {
-            "description": "Clothing - Safety glasses",
-            "name": "Clothing - Safety glasses",
-            "product_tax_code": "46181802A0001"
-        },
-        {
-            "description": "Software - Prewritten & delivered on tangible media",
-            "name": "Software - Prewritten, tangible media",
-            "product_tax_code": "43230000A1100"
-        },
-        {
-            "description": "Mainframe administration services\r\n",
-            "name": "Mainframe administration services\r\n",
-            "product_tax_code": "81111802A0000"
-        },
-        {
-            "description": "Co-location service",
-            "name": "Co-location service",
-            "product_tax_code": "81111814A0000"
-        },
-        {
-            "description": "Information management system for mine action IMSMA\r\n",
-            "name": "Information management system for mine action IMSMA\r\n",
-            "product_tax_code": "81111710A0000"
-        },
-        {
-            "description": "Local area network LAN maintenance or support",
-            "name": "Local area network LAN maintenance or support",
-            "product_tax_code": "81111803A0000"
-        },
-        {
-            "description": "Data center services",
-            "name": "Data center services",
-            "product_tax_code": "81112003A0000"
-        },
-        {
-            "description": "Wide area network WAN maintenance or support",
-            "name": "Wide area network WAN maintenance or support",
-            "product_tax_code": "81111804A0000"
-        },
-        {
-            "description": "Electronic data interchange EDI design\r\n",
-            "name": "Electronic data interchange EDI design\r\n",
-            "product_tax_code": "81111703A0000"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered on tangible media (includes support services only - no updates/upgrades)",
-            "name": "Software maintenance and support - Optional, prewritten, tangible media (support services only)",
-            "product_tax_code": "81112200A1122"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered on tangible media (includes software updates/upgrades)",
-            "name": "Software maintenance and support - Optional, prewritten, tangible media (incl. updates/upgrades)",
-            "product_tax_code": "81112200A1121"
-        },
-        {
-            "description": "Clothing - Safety sleeves",
-            "name": "Clothing - Safety sleeves",
-            "product_tax_code": "46181516A0001"
-        },
-        {
-            "description": "Clothing - Fire retardant apparel",
-            "name": "Clothing - Fire retardant apparel",
-            "product_tax_code": "46181508A0001"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered by load and leave (includes support services only - no updates/upgrades)",
-            "name": "Software maintenance and support - Optional, prewritten, load and leave delivery (support services only)",
-            "product_tax_code": "81112200A1322"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered by load and leave (includes software updates/upgrades)",
-            "name": "Software maintenance and support - Optional, prewritten, load and leave delivery (incl. updates/upgrades)",
-            "product_tax_code": "81112200A1321"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered electronically (includes support services only - no updates/upgrades)",
-            "name": "Software maintenance and support - Optional, prewritten, electronic delivery (support services only)",
-            "product_tax_code": "81112200A1222"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for custom software including items delivered on tangible media (includes support services only - no updates/upgrades)",
-            "name": "Software maintenance and support - Optional maintenance and support charges for custom software including items delivered on tangible media (includes support services only - no updates/upgrades)\r\n",
-            "product_tax_code": "81112200A2122"
-        },
-        {
-            "description": "Clothing - Protective ponchos",
-            "name": "Clothing - Protective ponchos",
-            "product_tax_code": "46181506A0001"
-        },
-        {
-            "description": "Clothing - Protective gloves",
-            "name": "Clothing - Protective gloves",
-            "product_tax_code": "46181504A0001"
-        },
-        {
-            "description": "Clothing - Synthetic Fur Vest",
-            "name": "Clothing - Synthetic Fur Vest",
-            "product_tax_code": "53103100A0002"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for custom software including items delivered on tangible media (includes software updates/upgrades)",
-            "name": "Software maintenance and support - Optional, custom, tangible media (incl. updates/upgrades)",
-            "product_tax_code": "81112200A2121"
-        },
-        {
-            "description": "Computer graphics service\r\n",
-            "name": "Computer graphics service\r\n",
-            "product_tax_code": "81111512A0000"
-        },
-        {
-            "description": "Proprietary or licensed systems maintenance or support",
-            "name": "Proprietary or licensed systems maintenance or support",
-            "product_tax_code": "81111805A0000"
-        },
-        {
-            "description": "Software - Prewritten & delivered electronically",
-            "name": "Software - Prewritten, electronic delivery",
-            "product_tax_code": "43230000A1200"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for prewritten software including items delivered electronically (includes software updates/upgrades)",
-            "name": "Software maintenance and support - Optional, prewritten, electronic delivery (incl. updates/upgrades)",
-            "product_tax_code": "81112200A1221"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for custom software including items delivered by load and leave (includes support services only - no updates/upgrades)",
-            "name": "Software maintenance and support - Optional, custom, load and leave delivery (support services only)",
-            "product_tax_code": "81112200A2322"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for custom software including items delivered by load and leave (includes software updates/upgrades)",
-            "name": "Software maintenance and support - Optional, custom, load and leave delivery (incl. updates/upgrades)",
-            "product_tax_code": "81112200A2321"
-        },
-        {
-            "description": "Software maintenance and support - Optional maintenance and support charges for custom software including items delivered electronically (includes software updates/upgrades)",
-            "name": "Software maintenance and support - Optional, custom, electronic delivery (incl. updates/upgrades)",
-            "product_tax_code": "81112200A2221"
-        },
-        {
-            "description": "Software maintenance and support - Mandatory maintenance and support charges for custom software including items delivered on tangible media",
-            "name": "Software maintenance and support - Mandatory, custom, tangible media",
-            "product_tax_code": "81112200A2110"
-        },
-        {
-            "description": "Software maintenance and support - Mandatory maintenance and support charges for custom software including items delivered electronically",
-            "name": "Software maintenance and support - Mandatory, custom, electronic delivery",
-            "product_tax_code": "81112200A2210"
-        },
-        {
-            "description": "Food and Beverage - Fish and seafood",
-            "name": "Food and Beverage - Fish and seafood",
-            "product_tax_code": "50121500A0000"
-        },
-        {
-            "description": "Food and Beverage - Ice cubes",
-            "name": "Food and Beverage - Ice cubes",
-            "product_tax_code": "50202302A0000"
-        },
-        {
-            "description": "Food and Beverage - Cooking Ingredients",
-            "name": "Food and Beverage - Cooking Ingredients",
-            "product_tax_code": "50181700A0000"
-        },
-        {
-            "description": "Food and Beverage - Cocoa and Cocoa products",
-            "name": "Food and Beverage - Cocoa and Cocoa products",
-            "product_tax_code": "50161511A0000"
-        },
-        {
-            "description": "Food and Beverage - Baby foods and formulas",
-            "name": "Food and Beverage - Baby foods and formulas",
-            "product_tax_code": "42231800A0000"
-        },
-        {
-            "description": "Clothing - Hazardous material protective footwear",
-            "name": "Clothing - Hazardous material protective footwear",
-            "product_tax_code": "46181602A0001"
-        },
-        {
-            "description": "Clothing - Welder gloves",
-            "name": "Clothing - Welder gloves",
-            "product_tax_code": "46181540A0001"
-        },
-        {
-            "description": "Clothing - Protective shirts",
-            "name": "Clothing - Protective shirts",
-            "product_tax_code": "46181526A0001"
-        },
-        {
-            "description": "Gift Cards",
-            "name": "Gift Cards",
-            "product_tax_code": "14111803A0001"
-        },
-        {
-            "description": "Clothing - Leg protectors",
-            "name": "Clothing - Leg protectors",
-            "product_tax_code": "46181520A0001"
-        },
-        {
-            "description": "Clothing - Protective coveralls",
-            "name": "Clothing - Protective coveralls",
-            "product_tax_code": "46181503A0001"
-        },
-        {
-            "description": "Internet or intranet client application development services\r\n",
-            "name": "Internet or intranet client application development services\r\n",
-            "product_tax_code": "81111509A0000"
-        },
-        {
-            "description": "Database design\r\n",
-            "name": "Database design\r\n",
-            "product_tax_code": "81111704A0000"
-        },
-        {
-            "description": "Computer programmers\r\n",
-            "name": "Computer programmers\r\n",
-            "product_tax_code": "81111600A0000"
-        },
-        {
-            "description": "Clothing - Synthetic Fur Hat",
-            "name": "Clothing - Synthetic Fur Hat",
-            "product_tax_code": "53102504A0002"
-        },
-        {
-            "description": "System or application programming management service\r\n",
-            "name": "System or application programming management service\r\n",
-            "product_tax_code": "81111511A0000"
-        },
-        {
-            "description": "Food and Beverage - Fruit",
-            "name": "Food and Beverage - Fruit",
-            "product_tax_code": "50300000A0000"
-        },
-        {
-            "description": "Food and Beverage - Vegetables",
-            "name": "Food and Beverage - Vegetables",
-            "product_tax_code": "50400000A0000"
-        },
-        {
-            "description": "Food and Beverage - Dried fruit, unsweetened",
-            "name": "Food and Beverage - Dried fruit, unsweetened",
-            "product_tax_code": "50320000A0000"
-        },
-        {
-            "description": "Food and Beverage - Snack Foods",
-            "name": "Food and Beverage - Snack Foods",
-            "product_tax_code": "50192100A0000"
-        },
-        {
-            "description": "Food and Beverage - Processed Nuts and Seeds",
-            "name": "Food and Beverage - Nuts and seeds that have been processed or treated by salting, spicing, smoking, roasting, or other means",
-            "product_tax_code": "50101716A0001"
-        },
-        {
-            "description": "Food and Beverage - Non-Alcoholic Beer, Wine",
-            "name": "Food and Beverage - Non-Alcoholic Beer, Wine",
-            "product_tax_code": "50202300A0001"
-        },
-        {
-            "description": "Food and Beverage - Ice Cream, sold in container less than one pint",
-            "name": "Food and Beverage - Ice Cream, sold in container less than one pint",
-            "product_tax_code": "50192304A0000"
-        },
-        {
-            "description": "Food and Beverage - Alcoholic beverages - Spirits",
-            "name": "Food and Beverage - Alcoholic beverages - Spirits",
-            "product_tax_code": "50202206A0000"
-        },
-        {
-            "description": "Food and Beverage - Wine",
-            "name": "Food and Beverage - Alcoholic beverages - Wine",
-            "product_tax_code": "50202203A0000"
-        },
-        {
-            "description": "Electronic content bundle - Delivered electronically with less than permanent rights of usage and streamed",
-            "name": "Electronic content bundle - Delivered electronically with less than permanent rights of usage and streamed",
-            "product_tax_code": "55111500A9220"
-        },
-        {
-            "description": "Clothing - Welding masks",
-            "name": "Clothing - Welding masks",
-            "product_tax_code": "46181703A0001"
-        },
-        {
-            "description": "Clothing - Protective wear dispenser",
-            "name": "Clothing - Protective wear dispenser",
-            "product_tax_code": "46181553A0001"
-        },
-        {
-            "description": "Clothing - Anti cut gloves",
-            "name": "Clothing - Anti cut gloves",
-            "product_tax_code": "46181536A0001"
-        },
-        {
-            "description": "Clothing - Reflective apparel or accessories",
-            "name": "Clothing - Reflective apparel or accessories",
-            "product_tax_code": "46181531A0001"
-        },
-        {
-            "description": "Clothing - Heat resistant clothing",
-            "name": "Clothing - Heat resistant clothing",
-            "product_tax_code": "46181518A0001"
-        },
-        {
-            "description": "Clothing - Cleanroom apparel",
-            "name": "Clothing - Cleanroom apparel",
-            "product_tax_code": "46181512A0001"
-        },
-        {
-            "description": "Clothing - Hazardous material protective apparel",
-            "name": "Clothing - Hazardous material protective apparel",
-            "product_tax_code": "46181509A0001"
-        },
-        {
-            "description": "Clothing - Safety vests",
-            "name": "Clothing - Safety vests",
-            "product_tax_code": "46181507A0001"
-        },
-        {
-            "description": "Clothing - Protective knee pads",
-            "name": "Clothing - Protective knee pads",
-            "product_tax_code": "46181505A0001"
-        },
-        {
-            "description": "Clothing - Bullet proof vests",
-            "name": "Clothing - Bullet proof vests",
-            "product_tax_code": "46181502A0001"
-        },
-        {
-            "description": "Clothing - Vest or waistcoats",
-            "name": "Clothing - Vest or waistcoats",
-            "product_tax_code": "53103100A0000"
-        },
-        {
-            "description": "Clothing - Prisoner uniform",
-            "name": "Clothing - Prisoner uniform",
-            "product_tax_code": "53102716A0000"
-        },
-        {
-            "description": "Clothing - Paramedic uniforms",
-            "name": "Clothing - Paramedic uniforms",
-            "product_tax_code": "53102712A0000"
-        },
-        {
-            "description": "Clothing - Ambulance officers uniforms",
-            "name": "Clothing - Ambulance officers uniforms",
-            "product_tax_code": "53102709A0000"
-        },
-        {
-            "description": "Clothing - Doctors coat",
-            "name": "Clothing - Doctors coat",
-            "product_tax_code": "53102707A0000"
-        },
-        {
-            "description": "Clothing - Sweat bands",
-            "name": "Clothing - Sweat bands",
-            "product_tax_code": "53102506A0000"
-        },
-        {
-            "description": "Clothing - Helmet parts or accessories",
-            "name": "Clothing - Helmet parts or accessories",
-            "product_tax_code": "46181706A0001"
-        },
-        {
-            "description": "Clothing - Fur Vest",
-            "name": "Clothing - Fur Vest",
-            "product_tax_code": "53103100A0001"
-        },
-        {
-            "description": "Clothing - Fur Gloves",
-            "name": "Clothing - Fur Gloves",
-            "product_tax_code": "53102503A0001"
-        },
-        {
-            "description": "Clothing - Motorcycle helmets",
-            "name": "Clothing - Motorcycle helmets",
-            "product_tax_code": "46181705A0001"
-        },
-        {
-            "description": "Operating system programming services\r\n",
-            "name": "Operating system programming services\r\n",
-            "product_tax_code": "81111505A0000"
-        },
-        {
-            "description": "Local area network communications design\r\n",
-            "name": "Local area network communications design\r\n",
-            "product_tax_code": "81111702A0000"
-        },
-        {
-            "description": "Clothing - Eye shields",
-            "name": "Clothing - Eye shields",
-            "product_tax_code": "46181803A0001"
-        },
-        {
-            "description": "Clothing - Welders helmet",
-            "name": "Clothing - Welders helmet",
-            "product_tax_code": "46181711A0001"
-        },
-        {
-            "description": "Clothing - Footwear covers",
-            "name": "Clothing - Footwear covers",
-            "product_tax_code": "46181606A0001"
-        },
-        {
-            "description": "Clothing - Cooling vest",
-            "name": "Clothing - Cooling vest",
-            "product_tax_code": "46181554A0001"
-        },
-        {
-            "description": "Clothing - Protective mesh jacket",
-            "name": "Clothing - Protective mesh jacket",
-            "product_tax_code": "46181551A0001"
-        },
-        {
-            "description": "Clothing - Protective scarf",
-            "name": "Clothing - Protective scarf",
-            "product_tax_code": "46181550A0001"
-        },
-        {
-            "description": "Clothing - Neck gaitor",
-            "name": "Clothing - Neck gaitor",
-            "product_tax_code": "46181549A0001"
-        },
-        {
-            "description": "Clothing - Welder bib",
-            "name": "Clothing - Welder bib",
-            "product_tax_code": "46181548A0001"
-        },
-        {
-            "description": "Clothing - Waterproof cap cover",
-            "name": "Clothing - Waterproof cap cover",
-            "product_tax_code": "46181547A0001"
-        },
-        {
-            "description": "Clothing - Waterproof suit",
-            "name": "Clothing - Waterproof suit",
-            "product_tax_code": "46181545A0001"
-        },
-        {
-            "description": "Clothing - Waterproof trousers or pants",
-            "name": "Clothing - Waterproof trousers or pants",
-            "product_tax_code": "46181544A0001"
-        },
-        {
-            "description": "Clothing - Protective mittens",
-            "name": "Clothing - Protective mittens",
-            "product_tax_code": "46181542A0001"
-        },
-        {
-            "description": "Clothing - Chemical resistant gloves",
-            "name": "Clothing - Chemical resistant gloves",
-            "product_tax_code": "46181541A0001"
-        },
-        {
-            "description": "Clothing - Anti vibratory gloves",
-            "name": "Clothing - Anti vibratory gloves",
-            "product_tax_code": "46181539A0001"
-        },
-        {
-            "description": "Clothing - Thermal gloves",
-            "name": "Clothing - Thermal gloves",
-            "product_tax_code": "46181538A0001"
-        },
-        {
-            "description": "Clothing - Insulated gloves",
-            "name": "Clothing - Insulated gloves",
-            "product_tax_code": "46181537A0001"
-        },
-        {
-            "description": "Clothing - Protective socks or hosiery",
-            "name": "Clothing - Protective socks or hosiery",
-            "product_tax_code": "46181535A0001"
-        },
-        {
-            "description": "Clothing - Protective wristbands",
-            "name": "Clothing - Protective wristbands",
-            "product_tax_code": "46181534A0001"
-        },
-        {
-            "description": "Clothing - Protective coats",
-            "name": "Clothing - Protective coats",
-            "product_tax_code": "46181533A0001"
-        },
-        {
-            "description": "Clothing - Insulated clothing for cold environments",
-            "name": "Clothing - Insulated clothing for cold environments",
-            "product_tax_code": "46181529A0001"
-        },
-        {
-            "description": "Clothing - Protective frock",
-            "name": "Clothing - Protective frock",
-            "product_tax_code": "46181528A0001"
-        },
-        {
-            "description": "Clothing - Safety hoods",
-            "name": "Clothing - Safety hoods",
-            "product_tax_code": "46181522A0001"
-        },
-        {
-            "description": "Clothing - Insulated or flotation suits",
-            "name": "Clothing - Insulated or flotation suits",
-            "product_tax_code": "46181517A0001"
-        },
-        {
-            "description": "Clothing - Elbow protectors",
-            "name": "Clothing - Elbow protectors",
-            "product_tax_code": "46181514A0001"
-        },
-        {
-            "description": "Clothing - Protective aprons",
-            "name": "Clothing - Protective aprons",
-            "product_tax_code": "46181501A0001"
-        },
-        {
-            "description": "Clothing - Shoes",
-            "name": "Clothing - Shoes",
-            "product_tax_code": "53111600A0000"
-        },
-        {
-            "description": "Clothing - Athletic wear",
-            "name": "Clothing - Athletic wear",
-            "product_tax_code": "53102900A0000"
-        },
-        {
-            "description": "Clothing - Folkloric clothing",
-            "name": "Clothing - Folkloric clothing",
-            "product_tax_code": "53102200A0000"
-        },
-        {
-            "description": "Clothing - Overalls or coveralls",
-            "name": "Clothing - Overalls or coveralls",
-            "product_tax_code": "53102100A0000"
-        },
-        {
-            "description": "Clothing - Dresses or skirts or saris or kimonos",
-            "name": "Clothing - Dresses or skirts or saris or kimonos",
-            "product_tax_code": "53102000A0000"
-        },
-        {
-            "description": "Clothing - Suits",
-            "name": "Clothing - Suits",
-            "product_tax_code": "53101900A0000"
-        },
-        {
-            "description": "Clothing - Sport uniform",
-            "name": "Clothing - Sport uniform",
-            "product_tax_code": "53102717A0000"
-        },
-        {
-            "description": "Clothing - Judicial robe",
-            "name": "Clothing - Judicial robe",
-            "product_tax_code": "53102714A0000"
-        },
-        {
-            "description": "Clothing - Ushers uniforms",
-            "name": "Clothing - Ushers uniforms",
-            "product_tax_code": "53102713A0000"
-        },
-        {
-            "description": "Clothing - Nurses uniforms",
-            "name": "Clothing - Nurses uniforms",
-            "product_tax_code": "53102708A0000"
-        },
-        {
-            "description": "Clothing - School uniforms",
-            "name": "Clothing - School uniforms",
-            "product_tax_code": "53102705A0000"
-        },
-        {
-            "description": "Clothing - Institutional food preparation or service attire",
-            "name": "Clothing - Institutional food preparation or service attire",
-            "product_tax_code": "53102704A0000"
-        },
-        {
-            "description": "Clothing - Police uniforms",
-            "name": "Clothing - Police uniforms",
-            "product_tax_code": "53102703A0000"
-        },
-        {
-            "description": "Clothing - Customs uniforms",
-            "name": "Clothing - Customs uniforms",
-            "product_tax_code": "53102702A0000"
-        },
-        {
-            "description": "Clothing - Bandannas",
-            "name": "Clothing - Bandannas",
-            "product_tax_code": "53102511A0000"
-        },
-        {
-            "description": "Clothing - Armbands",
-            "name": "Clothing - Armbands",
-            "product_tax_code": "53102508A0000"
-        },
-        {
-            "description": "Clothing - Caps",
-            "name": "Clothing - Caps",
-            "product_tax_code": "53102516A0000"
-        },
-        {
-            "description": "Clothing - Protective finger cots",
-            "name": "Clothing - Protective finger cots",
-            "product_tax_code": "46181530A0001"
-        },
-        {
-            "description": "Application programming services\r\n",
-            "name": "Application programming services\r\n",
-            "product_tax_code": "81111504A0000"
-        },
-        {
-            "description": "Application implementation services\r\n",
-            "name": "Application implementation services\r\n",
-            "product_tax_code": "81111508A0000"
-        },
-        {
-            "description": "Clothing - Synthetic Fur Ear muffs or scarves",
-            "name": "Clothing - Synthetic Fur Ear muffs or scarves",
-            "product_tax_code": "53102502A0002"
-        },
-        {
-            "description": "Clothing - Fur Poncho or Cape",
-            "name": "Clothing - Fur Poncho or Cape",
-            "product_tax_code": "53101806A0001"
-        },
-        {
-            "description": "Food and Beverage - Vitamins and Supplements - labeled with nutritional facts",
-            "name": "Food and Beverage - Vitamins and Supplements - labeled with nutritional facts",
-            "product_tax_code": "50501500A0001"
-        },
-        {
-            "description": "Food and Beverage - Nuts and seeds",
-            "name": "Food and Beverage - Nuts and seeds",
-            "product_tax_code": "50101716A0000"
-        },
-        {
-            "description": "Food and Beverage - Milk Substitutes",
-            "name": "Food and Beverage - Milk Substitutes",
-            "product_tax_code": "50151515A9000"
-        },
-        {
-            "description": "Food and Beverage - Milk and milk products",
-            "name": "Food and Beverage - Milk and milk products",
-            "product_tax_code": "50131700A0000"
-        },
-        {
-            "description": "Food and Beverage - Cheese",
-            "name": "Food and Beverage - Cheese",
-            "product_tax_code": "50131800A0000"
-        },
-        {
-            "description": "Clothing - Sandals",
-            "name": "Clothing - Sandals",
-            "product_tax_code": "53111800A0000"
-        },
-        {
-            "description": "Clothing - Pajamas or nightshirts or robes",
-            "name": "Clothing - Pajamas or nightshirts or robes",
-            "product_tax_code": "53102600A0000"
-        },
-        {
-            "description": "Clothing - Sweaters",
-            "name": "Clothing - Sweaters",
-            "product_tax_code": "53101700A0000"
-        },
-        {
-            "description": "Clothing - Slacks or trousers or shorts",
-            "name": "Clothing - Slacks or trousers or shorts",
-            "product_tax_code": "53101500A0000"
-        },
-        {
-            "description": "Clothing - Firefighter uniform",
-            "name": "Clothing - Firefighter uniform",
-            "product_tax_code": "53102718A0000"
-        },
-        {
-            "description": "Clothing - Salon smocks",
-            "name": "Clothing - Salon smocks",
-            "product_tax_code": "53102711A0000"
-        },
-        {
-            "description": "Clothing - Military uniforms",
-            "name": "Clothing - Military uniforms",
-            "product_tax_code": "53102701A0000"
-        },
-        {
-            "description": "Clothing - Heel pads",
-            "name": "Clothing - Heel pads",
-            "product_tax_code": "53112003A0000"
-        },
-        {
-            "description": "Clothing - Shoelaces",
-            "name": "Clothing - Shoelaces",
-            "product_tax_code": "53112002A0000"
-        },
-        {
-            "description": "Clothing - Infant swaddles or buntings or receiving blankets",
-            "name": "Clothing - Infant swaddles or buntings or receiving blankets",
-            "product_tax_code": "53102608A0000"
-        },
-        {
-            "description": "Clothing - Hats",
-            "name": "Clothing - Hats",
-            "product_tax_code": "53102503A0000"
-        },
-        {
-            "description": "Clothing - Ties or scarves or mufflers",
-            "name": "Clothing - Ties or scarves or mufflers",
-            "product_tax_code": "53102502A0000"
-        },
-        {
-            "description": "Clothing - Belts or suspenders",
-            "name": "Clothing - Belts or suspenders",
-            "product_tax_code": "53102501A0000"
-        },
-        {
-            "description": "Clothing - Tights",
-            "name": "Clothing - Tights",
-            "product_tax_code": "53102404A0000"
-        },
-        {
-            "description": "Clothing - Disposable youth training pants",
-            "name": "Clothing - Disposable youth training pants",
-            "product_tax_code": "53102311A0000"
-        },
-        {
-            "description": "Clothing - Undershirts",
-            "name": "Clothing - Undershirts",
-            "product_tax_code": "53102301A0000"
-        },
-        {
-            "description": "Clothing - Insulated cold weather shoe",
-            "name": "Clothing - Insulated cold weather shoe",
-            "product_tax_code": "46181610A0000"
-        },
-        {
-            "description": "Food and Beverage - Grains, Rice, Cereal",
-            "name": "Food and Beverage - Grains, Rice, Cereal",
-            "product_tax_code": "50221200A0000"
-        },
-        {
-            "description": "Clothing - Shirts",
-            "name": "Clothing - Shirts",
-            "product_tax_code": "53101600A0000"
-        },
-        {
-            "description": "Clothing - Safety boots",
-            "name": "Clothing - Safety boots",
-            "product_tax_code": "46181604A0000"
-        },
-        {
-            "description": "Clothing - Shin guards",
-            "name": "Clothing - Shin guards",
-            "product_tax_code": "49161525A0001"
-        },
-        {
-            "description": "Clothing - Athletic supporter",
-            "name": "Clothing - Athletic supporter",
-            "product_tax_code": "49161517A0001"
-        },
-        {
-            "description": "Clothing - Cleated or spiked shoes",
-            "name": "Clothing - Cleated or spiked shoes",
-            "product_tax_code": "53111900A0002"
-        },
-        {
-            "description": "Wide area network communications design\r\n",
-            "name": "Wide area network communications design\r\n\r\n",
-            "product_tax_code": "81111701A0000"
-        },
-        {
-            "description": "Systems integration design\r\n",
-            "name": "Systems integration design\r\n",
-            "product_tax_code": "81111503A0000"
-        },
-        {
-            "description": "Clothing - Bridal Gown",
-            "name": "Clothing - Bridal Gown",
-            "product_tax_code": "53101801A0004"
-        },
-        {
-            "description": "Clothing - Waterproof cap",
-            "name": "Clothing - Waterproof cap",
-            "product_tax_code": "46181546A0000"
-        },
-        {
-            "description": "Food and Beverage - Yogurt",
-            "name": "Food and Beverage - Yogurt",
-            "product_tax_code": "50131800A0001"
-        },
-        {
-            "description": "Food and Beverage - Nut Butters",
-            "name": "Food and Beverage - Nut Butters",
-            "product_tax_code": "50480000A9000"
-        },
-        {
-            "description": "Food and Beverage - Jams and Jellies",
-            "name": "Food and Beverage - Jams and Jellies",
-            "product_tax_code": "50192401A0000"
-        },
-        {
-            "description": "Food and Beverage - Honey, Maple Syrup",
-            "name": "Food and Beverage - Honey, Maple Syrup",
-            "product_tax_code": "50161509A0000"
-        },
-        {
-            "description": "Food and Beverage - Foods for Immediate Consumption",
-            "name": "Food and Beverage - Foods for Immediate Consumption",
-            "product_tax_code": "90100000A0001"
-        },
-        {
-            "description": "Food and Beverage - Bread and Flour Products",
-            "name": "Food and Beverage - Bread and Flour Products",
-            "product_tax_code": "50180000A0000"
-        },
-        {
-            "description": "Clothing - Overshoes",
-            "name": "Clothing - Overshoes",
-            "product_tax_code": "53112000A0000"
-        },
-        {
-            "description": "Clothing - Athletic footwear",
-            "name": "Clothing - Athletic footwear",
-            "product_tax_code": "53111900A0000"
-        },
-        {
-            "description": "Clothing - Slippers",
-            "name": "Clothing - Slippers",
-            "product_tax_code": "53111700A0000"
-        },
-        {
-            "description": "Clothing - Boots",
-            "name": "Clothing - Boots",
-            "product_tax_code": "53111500A0000"
-        },
-        {
-            "description": "Clothing - T-Shirts",
-            "name": "Clothing - T-Shirts",
-            "product_tax_code": "53103000A0000"
-        },
-        {
-            "description": "Clothing - Swimwear",
-            "name": "Clothing - Swimwear",
-            "product_tax_code": "53102800A0000"
-        },
-        {
-            "description": "Clothing - Coats or jackets",
-            "name": "Clothing - Coats or jackets",
-            "product_tax_code": "53101800A0000"
-        },
-        {
-            "description": "Clothing - Prison officer uniform",
-            "name": "Clothing - Prison officer uniform",
-            "product_tax_code": "53102715A0000"
-        },
-        {
-            "description": "Clothing - Corporate uniforms",
-            "name": "Clothing - Corporate uniforms",
-            "product_tax_code": "53102710A0000"
-        },
-        {
-            "description": "Clothing - Security uniforms",
-            "name": "Clothing - Security uniforms",
-            "product_tax_code": "53102706A0000"
-        },
-        {
-            "description": "Clothing - Chevrons",
-            "name": "Clothing - Chevrons",
-            "product_tax_code": "53102518A0000"
-        },
-        {
-            "description": "Clothing - Disposable work coat",
-            "name": "Clothing - Disposable work coat",
-            "product_tax_code": "53103201A0000"
-        },
-        {
-            "description": "Clothing - Bath robes",
-            "name": "Clothing - Bath robes",
-            "product_tax_code": "53102606A0000"
-        },
-        {
-            "description": "Clothing - Bib",
-            "name": "Clothing - Bib",
-            "product_tax_code": "53102521A0000"
-        },
-        {
-            "description": "Clothing - Gloves or mittens",
-            "name": "Clothing - Gloves or mittens",
-            "product_tax_code": "53102504A0000"
-        },
-        {
-            "description": "Clothing - Mouth guards",
-            "name": "Clothing - Mouth guards",
-            "product_tax_code": "42152402A0001"
-        },
-        {
-            "description": "Clothing - Boxing gloves",
-            "name": "Clothing - Boxing gloves",
-            "product_tax_code": "49171600A0000"
-        },
-        {
-            "description": "Clothing - Golf shoes",
-            "name": "Clothing - Golf shoes",
-            "product_tax_code": "53111900A0004"
-        },
-        {
-            "description": "Clothing - Bowling shoes",
-            "name": "Clothing - Bowling shoes",
-            "product_tax_code": "53111900A0003"
-        },
-        {
-            "description": "Internet or intranet server application development services\r\n",
-            "name": "Internet or intranet server application development services\r\n",
-            "product_tax_code": "81111510A0000"
-        },
-        {
-            "description": "Data conversion service\r\n",
-            "name": "Data conversion service\r\n",
-            "product_tax_code": "81112010A0000"
-        },
-        {
-            "description": "Client or server programming services\r\n",
-            "name": "Client or server programming services\r\n",
-            "product_tax_code": "81111506A0000"
-        },
-        {
-            "description": "Clothing - Ballet or tap shoes",
-            "name": "Clothing - Ballet or tap shoes",
-            "product_tax_code": "53111900A0001"
-        },
-        {
-            "description": "Clothing - Golf gloves",
-            "name": "Clothing - Golf gloves",
-            "product_tax_code": "49211606A0000"
-        },
-        {
-            "description": "Hardware as a service (HaaS)",
-            "name": "Hardware as a service (HaaS)",
-            "product_tax_code": "81161900A0000"
-        },
-        {
-            "description": "Cloud-based platform as a service (PaaS) - Personal Use",
-            "name": "Cloud-based platform as a service (PaaS) - Personal Use",
-            "product_tax_code": "81162100A0000"
-        },
-        {
-            "description": "Clothing - Panty hose",
-            "name": "Clothing - Panty hose",
-            "product_tax_code": "53102403A0000"
-        },
-        {
-            "description": "Clothing - Brassieres",
-            "name": "Clothing - Brassieres",
-            "product_tax_code": "53102304A0000"
-        },
-        {
-            "description": "Clothing - Protective sandals",
-            "name": "Clothing - Protective sandals",
-            "product_tax_code": "46181608A0000"
-        },
-        {
-            "description": "Clothing - Tuxedo or Formalwear",
-            "name": "Clothing - Tuxedo or Formalwear",
-            "product_tax_code": "53101801A0001"
-        },
-        {
-            "description": "Clothing - Lab coats",
-            "name": "Clothing - Lab coats",
-            "product_tax_code": "46181532A0000"
-        },
-        {
-            "description": "Systems planning services\r\n",
-            "name": "Systems planning services\r\n",
-            "product_tax_code": "81111707A0000"
-        },
-        {
-            "description": "Food and Beverage - Vitamins and Supplements",
-            "name": "Food and Beverage - Vitamins and Supplements - labeled with supplement facts",
-            "product_tax_code": "50501500A0000"
-        },
-        {
-            "description": "Food and Beverage - Jello and pudding mixes",
-            "name": "Food and Beverage - Jello and pudding mixes",
-            "product_tax_code": "50192404A0000"
-        },
-        {
-            "description": "Food and Beverage - Cooking spices",
-            "name": "Food and Beverage - Cooking spices",
-            "product_tax_code": "50171500A0000"
-        },
-        {
-            "description": "Food and Beverage - Alcoholic beverages - Beer/Malt Beverages",
-            "name": "Food and Beverage - Alcoholic beverages - Beer/Malt Beverages",
-            "product_tax_code": "50202201A0000"
-        },
-        {
-            "description": "Food and Beverage - Ice Cream, packaged",
-            "name": "Food and Beverage - Ice Cream, packaged",
-            "product_tax_code": "50192303A0000"
-        },
-        {
-            "description": "Electronic content bundle - Delivered electronically with permanent rights of usage and streamed",
-            "name": "Electronic content bundle - Delivered electronically with permanent rights of usage and streamed",
-            "product_tax_code": "55111500A9210"
-        },
-        {
-            "description": "Clothing - Roller skates or roller blades",
-            "name": "Clothing - Roller skates or roller blades",
-            "product_tax_code": "49221509A0000"
-        },
-        {
-            "description": "Clothing - Ice Skates",
-            "name": "Clothing - Ice Skates",
-            "product_tax_code": "49151602A0000"
-        },
-        {
-            "description": "Clothing - Life vests or preservers ",
-            "name": "Clothing - Life vests or preservers ",
-            "product_tax_code": "46161604A0000"
-        },
-        {
-            "description": "Clothing - Swim goggles",
-            "name": "Clothing - Swim goggles",
-            "product_tax_code": "49141606A0000"
-        },
-        {
-            "description": "Clothing - Bowling gloves",
-            "name": "Clothing - Bowling gloves",
-            "product_tax_code": "49211606A0002"
-        },
-        {
-            "description": "Fire Extinguishers",
-            "name": "Fire Extinguishers",
-            "product_tax_code": "46191601A0000"
-        },
-        {
-            "description": "Carbon Monoxide Detectors",
-            "name": "Carbon Monoxide Detectors",
-            "product_tax_code": "46191509A0001"
-        },
-        {
-            "description": "Ladder used for home emergency evacuation.",
-            "name": "Emergency/rescue ladder",
-            "product_tax_code": "30191501A0001"
-        },
-        {
-            "description": "Candles to be used a light source.",
-            "name": "Candles",
-            "product_tax_code": "39112604A0001"
-        },
-        {
-            "description": "Non-electric water container to store water for emergency usage.",
-            "name": "Water storage container",
-            "product_tax_code": "24111810A0001"
-        },
-        {
-            "description": "Duct Tape",
-            "name": "Duct Tape",
-            "product_tax_code": "31201501A0000"
-        },
-        {
-            "description": "Gas-powered chainsaw.",
-            "name": "Garden chainsaw",
-            "product_tax_code": "27112038A0000"
-        },
-        {
-            "description": "Chainsaw accessories include chains, lubricants, motor oil, chain sharpeners, bars, wrenches, carrying cases, repair parts, safety apparel.",
-            "name": "Chainsaw accessories",
-            "product_tax_code": "27112038A0001"
-        },
-        {
-            "description": "Shower curtain/liner used to keep water from escaping a showering area.",
-            "name": "Shower Curtain or Liner",
-            "product_tax_code": "30181607A0000"
-        },
-        {
-            "description": "Dish towels used for kitchenware drying.",
-            "name": "Dish towels",
-            "product_tax_code": "52121601A0000"
-        },
-        {
-            "description": "A bumper/liner that borders the interior walls/slats of the crib to help protect the baby.",
-            "name": "Crib bumpers/liners",
-            "product_tax_code": "56101804A0001"
-        },
-        {
-            "description": "A small mat/rug used to cover portion of bathroom floor.",
-            "name": "Bath Mats/rugs",
-            "product_tax_code": "52101507A0000"
-        },
-        {
-            "description": "A handheld computer that is capable of plotting graphs, solving simultaneous equations, and performing other tasks with variables.",
-            "name": "Graphing Calculators",
-            "product_tax_code": "44101808A0001"
-        },
-        {
-            "description": "Portable locks used by students in a school setting to prevent use, theft, vandalism or harm.",
-            "name": "Padlocks - Student",
-            "product_tax_code": "46171501A0001"
-        },
-        {
-            "description": "Domestic clothes washing appliances carrying Energy Star rating.",
-            "name": "Clothes Washing Machine - Energy Star",
-            "product_tax_code": "52141601A0000"
-        },
-        {
-            "description": "WaterSense labeled showerheads.",
-            "name": "Showerheads - WaterSense",
-            "product_tax_code": "30181801A0000"
-        },
-        {
-            "description": "Domestic dish washing appliances carrying Energy Star rating.",
-            "name": "Dishwashers - Energy Star",
-            "product_tax_code": "52141505A0000"
-        },
-        {
-            "description": "WaterSense labeled sprinkler body is the exterior shell that connects to the irrigation system piping and houses the spray nozzle that applies water on the landscape.",
-            "name": "Spray Water Sprinkler Bodies - WaterSense",
-            "product_tax_code": "21101803A0001"
-        },
-        {
-            "description": "Ropes and Cords",
-            "name": "Ropes and Cords",
-            "product_tax_code": "31151500A0000"
-        },
-        {
-            "description": "Light emitting diode (LED) bulbs carrying an Energy Star rating.",
-            "name": "LED Bulbs - Energy Star",
-            "product_tax_code": "39101628A0001"
-        },
-        {
-            "description": "WaterSense labeled bathroom sink faucets and accessories.",
-            "name": "Bathroom Faucets - WaterSense",
-            "product_tax_code": "30181702A0001"
-        },
-        {
-            "description": "Cables with industry standard connection and termination configurations used to connect various peripherals and equipment to computers.",
-            "name": "Computer Cables",
-            "product_tax_code": "43202222A0001"
-        },
-        {
-            "description": "Canned software delivered electronically that is used for non-recreational purposes, such as Antivirus, Database, Educational, Financial, Word processing, etc.",
-            "name": "Software - Prewritten, Electronic delivery - Non-recreational",
-            "product_tax_code": "43230000A1102"
-        },
-        {
-            "description": "Clothing - Baseball batting gloves",
-            "name": "Clothing - Baseball batting gloves",
-            "product_tax_code": "49211606A0001"
-        },
-        {
-            "description": "Cloud-based platform as a service (PaaS) - Business Use",
-            "name": "Cloud-based platform as a service (PaaS) - Business Use",
-            "product_tax_code": "81162100A9000"
-        },
-        {
-            "description": "Cloud-based Infrastructure as a service (IaaS) - Personal Use",
-            "name": "Cloud-based infrastructure as a service (IaaS) - Personal Use",
-            "product_tax_code": "81162200A0000"
-        },
-        {
-            "description": "Clothing - Costume Mask",
-            "name": "Clothing - Costume Mask",
-            "product_tax_code": "60122800A0000"
-        },
-        {
-            "description": "Clothing - Ski boots",
-            "name": "Clothing - Ski boots",
-            "product_tax_code": "53111900A0005"
-        },
-        {
-            "description": "Personal computer PC application design\r\n",
-            "name": "Personal computer PC application design\r\n",
-            "product_tax_code": "81111502A0000"
-        },
-        {
-            "description": "Network planning services\r\n",
-            "name": "Network planning services\r\n",
-            "product_tax_code": "81111706A0000"
-        },
-        {
-            "description": "ERP or database applications programming services\r\n",
-            "name": "ERP or database applications programming services\r\n",
-            "product_tax_code": "81111507A0000"
-        },
-        {
-            "description": "Content or data classification services\r\n",
-            "name": "Content or data classification services\r\n",
-            "product_tax_code": "81112009A0000"
-        },
-        {
-            "description": "Clothing - Prom Dress",
-            "name": "Clothing - Prom Dress",
-            "product_tax_code": "53101801A0003"
-        },
-        {
-            "description": "Clothing - Formal Dress",
-            "name": "Clothing - Formal Dress",
-            "product_tax_code": "53101801A0002"
-        },
-        {
-            "description": "Clothing - Handkerchiefs",
-            "name": "Clothing - Handkerchiefs",
-            "product_tax_code": "53102512A0000"
-        },
-        {
-            "description": "Clothing - Protective lens",
-            "name": "Clothing - Protective lens",
-            "product_tax_code": "46181811A0001"
-        },
-        {
-            "description": "Clothing - Body shaping garments",
-            "name": "Clothing - Body shaping garments",
-            "product_tax_code": "53102307A0000"
-        },
-        {
-            "description": "Clothing - Underpants",
-            "name": "Clothing - Underpants",
-            "product_tax_code": "53102303A0000"
-        },
-        {
-            "description": "Clothing - Waterproof boot",
-            "name": "Clothing - Waterproof boot",
-            "product_tax_code": "46181611A0000"
-        },
-        {
-            "description": "Electronic software documentation or user manuals - For prewritten software & delivered by load and leave",
-            "name": "Electronic software documentation or user manuals - Prewritten, load and leave delivery",
-            "product_tax_code": "55111601A1300"
-        },
-        {
-            "description": "Electronic software documentation or user manuals - For custom software & delivered on tangible media",
-            "name": "Electronic software documentation or user manuals - Custom, tangible media",
-            "product_tax_code": "55111601A2100"
-        },
-        {
-            "description": "Electronic software documentation or user manuals - For custom software & delivered by load and leave",
-            "name": "Electronic software documentation or user manuals - Custom, load and leave delivery",
-            "product_tax_code": "55111601A2300"
-        },
-        {
-            "description": "Electronic software documentation or user manuals - For custom software & delivered electronically",
-            "name": "Electronic software documentation or user manuals - Custom, electronic delivery",
-            "product_tax_code": "55111601A2200"
-        },
-        {
-            "description": "Electronic publications and music - Streamed",
-            "name": "Electronic publications and music - Streamed",
-            "product_tax_code": "55111500A1500"
-        },
-        {
-            "description": "Electronic publications and music - Delivered electronically with permanent rights of usage",
-            "name": "Electronic publications and music - Delivered electronically with permanent rights of usage",
-            "product_tax_code": "55111500A1210"
-        },
-        {
-            "description": "Electronic publications and music - Delivered electronically with less than permanent rights of usage",
-            "name": "Electronic publications and music - Delivered electronically with less than permanent rights of usage",
-            "product_tax_code": "55111500A1220"
-        },
-        {
-            "description": "Software - Custom & delivered on tangible media",
-            "name": "Software - Custom, tangible media",
-            "product_tax_code": "43230000A2100"
-        },
-        {
-            "description": "Software - Prewritten & delivered by digital keycode printed on tangible media",
-            "name": "Software - Prewritten, delivered by digital keycode printed on tangible media",
-            "product_tax_code": "43230000A1400"
-        },
-        {
-            "description": "Software - Prewritten & delivered by load and leave",
-            "name": "Software - Prewritten, load and leave delivery",
-            "product_tax_code": "43230000A1300"
-        },
-        {
-            "description": "Internet cloud storage service\r\n",
-            "name": "Internet cloud storage service\r\n",
-            "product_tax_code": "81111513A0000"
-        },
-        {
-            "description": "Computer or network or internet security\r\n",
-            "name": "Computer or network or internet security\r\n",
-            "product_tax_code": "81111801A0000"
-        },
-        {
-            "description": "Document scanning service\r\n",
-            "name": "Document scanning service\r\n",
-            "product_tax_code": "81112005A0000"
-        },
-        {
-            "description": "Cloud-based software as a service (SaaS) - Business Use",
-            "name": "Cloud-based software as a service (SaaS) - Business Use",
-            "product_tax_code": "81162000A9000"
-        },
-        {
-            "description": "Demining geographical or geospatial information system GIS\r\n",
-            "name": "Demining geographical or geospatial information system GIS\r\n",
-            "product_tax_code": "81111709A0000"
-        },
-        {
-            "description": "Content or data standardization services\r\n",
-            "name": "Content or data standardization services\r\n",
-            "product_tax_code": "81112007A0000"
-        },
-        {
-            "description": "Data processing or preparation services\r\n",
-            "name": "Data processing or preparation services\r\n",
-            "product_tax_code": "81112002A0000"
-        },
-        {
-            "description": "Database analysis service\r\n",
-            "name": "Database analysis service\r\n",
-            "product_tax_code": "81111806A0000"
-        },
-        {
-            "description": "Electronic software documentation or user manuals - For prewritten software & delivered on tangible media",
-            "name": "Electronic software documentation or user manuals - Prewritten, tangible media",
-            "product_tax_code": "55111601A1100"
-        },
-        {
-            "description": "Cloud-based software as a service (SaaS) - Personal Use",
-            "name": "Cloud-based software as a service (SaaS) - Personal Use",
-            "product_tax_code": "81162000A0000"
-        },
-        {
-            "description": "Clothing - Costume",
-            "name": "Clothing - Costume",
-            "product_tax_code": "60141401A0000"
-        },
-        {
-            "description": "Online data processing service\r\n",
-            "name": "Online data processing service\r\n",
-            "product_tax_code": "81112001A0000"
-        },
-        {
-            "description": "System usability services\r\n",
-            "name": "System usability services\r\n",
-            "product_tax_code": "81111820A0000"
-        },
-        {
-            "description": "Services that provide both essential proactive and reactive operations and maintenance support.",
-            "name": "IT Support Services",
-            "product_tax_code": "81111811A0000"
-        },
-        {
-            "description": "System analysis service\r\n",
-            "name": "System analysis service\r\n",
-            "product_tax_code": "81111808A0000"
-        },
-        {
-            "description": "Data storage service\r\n",
-            "name": "Data storage service\r\n",
-            "product_tax_code": "81112006A0000"
-        },
-        {
-            "description": "Quality assurance services\r\n",
-            "name": "Quality assurance services\r\n",
-            "product_tax_code": "81111819A0000"
-        },
-        {
-            "description": "Software - Custom & delivered by load & leave",
-            "name": "Software - Custom, load and leave delivery",
-            "product_tax_code": "43230000A2300"
-        },
-        {
-            "description": "Food and Beverage - Meat Sticks, Meat Jerky",
-            "name": "Food and Beverage - Meat Sticks, Meat Jerky",
-            "product_tax_code": "50112000A0000"
-        },
-        {
-            "description": "Clothing - Synthetic Fur Poncho or Cape",
-            "name": "Clothing - Synthetic Fur Poncho or Cape",
-            "product_tax_code": "53101806A0002"
-        },
-        {
-            "description": "Clothing - Wetsuit",
-            "name": "Clothing - Wetsuit",
-            "product_tax_code": "49141506A0000"
-        },
-        {
-            "description": "Cloud-based business process as a service - Business Use",
-            "name": "Cloud-based business process as a service - Business Use",
-            "product_tax_code": "81162300A9000"
-        },
-        {
-            "description": "Cloud-based infrastructure as a service (IaaS) - Business Use",
-            "name": "Cloud-based infrastructure as a service (IaaS) - Business Use",
-            "product_tax_code": "81162200A9000"
-        },
-        {
-            "description": "Clothing - Belt Buckle",
-            "name": "Clothing - Belt Buckle",
-            "product_tax_code": "53102501A0001"
-        },
-        {
-            "description": "Clothing - Shower Cap",
-            "name": "Clothing - Shower Cap",
-            "product_tax_code": "53131601A0000"
-        },
-        {
-            "description": "Clothing - Eye shield garters",
-            "name": "Clothing - Eye shield garters",
-            "product_tax_code": "46181809A0001"
-        },
-        {
-            "description": "Clothing - Socks",
-            "name": "Clothing - Socks",
-            "product_tax_code": "53102402A0000"
-        },
-        {
-            "description": "Clothing - Stockings",
-            "name": "Clothing - Stockings",
-            "product_tax_code": "53102401A0000"
-        },
-        {
-            "description": "Food and Beverage - Meat and meat products",
-            "name": "Food and Beverage - Meat and meat products",
-            "product_tax_code": "50110000A0000"
-        },
-        {
-            "description": "Clothing - Slips",
-            "name": "Clothing - Slips",
-            "product_tax_code": "53102302A0000"
-        },
-        {
-            "description": "Clothing - Goggle protective covers",
-            "name": "Clothing - Goggle protective covers",
-            "product_tax_code": "46181808A0001"
-        },
-        {
-            "description": "Clothing - Goggles",
-            "name": "Clothing - Goggles",
-            "product_tax_code": "46181804A0001"
-        },
-        {
-            "description": "Clothing - Football receiver gloves",
-            "name": "Clothing - Football receiver gloves",
-            "product_tax_code": "49211606A0004"
-        },
-        {
-            "description": "Disaster recovery services",
-            "name": "Disaster recovery services",
-            "product_tax_code": "81112004A0000"
-        },
-        {
-            "description": "Clothing - Mountain climbing boot",
-            "name": "Clothing - Mountain climbing boot",
-            "product_tax_code": "46181613A0000"
-        },
-        {
-            "description": "Software maintenance and support - Mandatory maintenance and support charges for prewritten software including items delivered on tangible media",
-            "name": "Software maintenance and support - Mandatory, prewritten, tangible media",
-            "product_tax_code": "81112200A1110"
-        },
-        {
-            "description": "Clothing - Military boot",
-            "name": "Clothing - Military boot",
-            "product_tax_code": "46181612A0000"
-        },
-        {
-            "description": "Carbonated beverages marketed as energy drinks, carrying a Supplement Facts Label, that contain a blend of energy enhancing vitamins, minerals, herbals, stimulants, etc.",
-            "name": "Energy Beverages - Carbonated - with Supplement Facts Label",
-            "product_tax_code": "50202309A0001"
-        },
-        {
-            "description": "Non-carbonated beverages marketed as energy drinks, carrying a Supplement Facts Label, that contain a blend of energy enhancing vitamins, minerals, herbals, stimulants, etc.",
-            "name": "Energy Beverages - Non-Carbonated - with Supplement Facts Label",
-            "product_tax_code": "50202309A0000"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with tangible personal property, with the food comprising 90% or more of the overall value of the bundle, where all food consists of candy (not containing flour).",
-            "name": "Food/TPP Bundle - with Food 90% or more - Food is all Candy",
-            "product_tax_code": "50193400A0001"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with tangible personal property, with the food comprising less 90% or more of the overall value of the bundle.",
-            "name": "Food/TPP Bundle - with Food 90% or more",
-            "product_tax_code": "50193400A0000"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 76% and 89% of the overall value of the bundle, where all food consists of candy (not containing flour).",
-            "name": "Food/TPP Bundle - with Food between 76% and 89% - Food is all Candy",
-            "product_tax_code": "50193400A0005"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 76% and 89% of the overall value of the bundle.",
-            "name": "Food/TPP Bundle - with Food between 76% and 89%",
-            "product_tax_code": "50193400A0004"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 50% and 75% of the overall value of the bundle, where all food consists of candy (not containing flour).",
-            "name": "Food/TPP Bundle - with Food between 50% and 75% - Food is all Candy",
-            "product_tax_code": "50193400A0003"
-        },
-        {
-            "description": "Food bundle or basket containing food staples combined with tangible personal property, with the food comprising between 50% and 75% of the overall value of the bundle.",
-            "name": "Food/TPP Bundle - with Food between 50% and 75%",
-            "product_tax_code": "50193400A0002"
-        },
-        {
-            "description": "Food/TPP Bundle - with Food less than 50%",
-            "name": "Food/TPP Bundle - with Food less than 50%",
-            "product_tax_code": "50193400A0006"
-        },
-        {
-            "description": "Ready to drink beverages, not containing milk, formulated and labled for their nutritional value, such as increased caloric or protein intake and containing natrual or artificial sweeteners.",
-            "name": "Nutritional Supplement/protein drinks, shakes - contains no milk",
-            "product_tax_code": "50501703A0000"
-        },
-        {
-            "description": "Ready to drink beverages, containing milk, formulated and labled for their nutritional value, such as increased caloric or protein intake.",
-            "name": "Nutritional Supplement/protein drinks, shakes - contains milk",
-            "product_tax_code": "50501703A0001"
-        },
-        {
-            "description": "Powdered mixes to be reconstituted into a drinkable beverage using water.",
-            "name": "Powdered Drink Mixes - to be mixed with water",
-            "product_tax_code": "50202311A0000"
-        },
-        {
-            "description": "Powdered mixes to be reconstituted into a drinkable beverage using milk or a milk substitute.",
-            "name": "Powdered Drink Mixes - to be mixed with milk",
-            "product_tax_code": "50202311A0001"
-        },
-        {
-            "description": "Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing no flour",
-            "name": "Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing no flour",
-            "product_tax_code": "50221202A0002"
-        },
-        {
-            "description": "Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing flour",
-            "name": "Food and Beverage - Granola Bars, Cereal Bars, Energy Bars, Protein Bars containing flour",
-            "product_tax_code": "50221202A0001"
-        },
-        {
-            "description": "Nutritional supplement in powder form, dairy based or plant based, focused on increasing ones intake of protein for various benefits.",
-            "name": "Protein Powder",
-            "product_tax_code": "50501703A0002"
-        },
-        {
-            "description": "Ready to drink non-carbonated beverage containing tea with natural or artificial sweeteners.",
-            "name": "Bottled tea - non-carbonated  - sweetened",
-            "product_tax_code": "50201712A0003"
-        },
-        {
-            "description": "Ready to drink non-carbonated beverage containing tea without natural or artificial sweeteners.",
-            "name": "Bottled tea - non-carbonated - unsweetened",
-            "product_tax_code": "50201712A0000"
-        },
-        {
-            "description": "Ready to drink carbonated beverage containing tea with natural or artificial sweeteners.",
-            "name": "Bottled tea - carbonated  - sweetened",
-            "product_tax_code": "50201712A0002"
-        },
-        {
-            "description": "Ready to drink carbonated beverage containing tea and without any natural or artificial sweeteners.",
-            "name": "Bottled tea - carbonated - unsweetened",
-            "product_tax_code": "50201712A0001"
-        },
-        {
-            "description": "Ready to drink coffee based beverage containing milk or milk substitute.",
-            "name": "Bottled coffee - containing milk or milk substitute",
-            "product_tax_code": "50201708A0002"
-        },
-        {
-            "description": "Ready to drink coffee based beverage not containing milk, containing natural or artificial sweetener.",
-            "name": "Bottled coffee - no milk - sweetened",
-            "product_tax_code": "50201708A0001"
-        },
-        {
-            "description": "Ready to drink coffee based beverage containing neither milk nor natural or artificial sweeteners.",
-            "name": "Bottled coffee - no milk - unsweetened",
-            "product_tax_code": "50201708A0000"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural vegetable juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 51-69% vegetable juice",
-            "product_tax_code": "50202306A0008"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural fruit juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 1-9% fruit juice",
-            "product_tax_code": "50202306A0001"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural fruit juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 70-99% fruit juice",
-            "product_tax_code": "50202304A0010"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural vegetable juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 51-69% vegetable juice",
-            "product_tax_code": "50202304A0009"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural vegetable juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 25-50% vegetable juice",
-            "product_tax_code": "50202304A0007"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural fruit juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 10-24% fruit juice",
-            "product_tax_code": "50202304A0004"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural vegetable juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 70-99% vegetable juice",
-            "product_tax_code": "50202304A0011"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and zero natural fruit or vegetable juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - No fruit or vegetable juice",
-            "product_tax_code": "50202304A0001"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural fruit juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 51-69% fruit juice",
-            "product_tax_code": "50202304A0008"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural vegetable juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 1 -9% vegetable juice",
-            "product_tax_code": "50202304A0003"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural fruit juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 1-9% fruit juice",
-            "product_tax_code": "50202304A0002"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural vegetable juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 10-24% vegetable juice",
-            "product_tax_code": "50202304A0005"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural fruit juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 25-50% fruit juice",
-            "product_tax_code": "50202304A0006"
-        },
-        {
-            "description": "Non-carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 100% natural fruit or vegetable juice.  This does not include flavored water.  This does include sweetened cocktail mixes that can be combined with alcohol.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Non-Carbonated - 100% fruit or vegetable juice",
-            "product_tax_code": "50202304A0000"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and zero natural fruit or vegetable juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - No fruit or vegetable juice",
-            "product_tax_code": "50202306A0000"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural vegetable juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 70-99% vegetable juice",
-            "product_tax_code": "50202306A0010"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 70 - 99% natural fruit juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 70-99% fruit juice",
-            "product_tax_code": "50202306A0009"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 51 - 69% natural fruit juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 51-69% fruit juice",
-            "product_tax_code": "50202306A0007"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural vegetable juice.  This does not flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 25-50% vegetable juice",
-            "product_tax_code": "50202306A0006"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 25 - 50% natural fruit juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 25-50% fruit juice",
-            "product_tax_code": "50202306A0005"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 100% natural fruit or vegetable juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 100% fruit or vegetable juice",
-            "product_tax_code": "50202306A0011"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural vegetable juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 10-24% vegetable juice",
-            "product_tax_code": "50202306A0004"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 10 - 24% natural fruit juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 10-24% fruit juice",
-            "product_tax_code": "50202306A0003"
-        },
-        {
-            "description": "Carbonated nonalcoholic beverages that contain natural or artificial sweeteners, and 1 - 9% natural vegetable juice.  This does not include flavored carbonated water.  This does include beverages marketed as energy drinks that carry a Nutrition Facts label and contain a blend of energy enhancing ingredients.",
-            "name": "Soft Drinks - Carbonated - 1 -9% vegetable juice",
-            "product_tax_code": "50202306A0002"
-        },
-        {
-            "description": "Bottled Water for human consumption, unsweetened, non-carbonated. Does not include distilled water.",
-            "name": "Bottled Water",
-            "product_tax_code": "50202301A0000"
-        },
-        {
-            "description": "Bottled Water for human consumption, containing natural or artificial sweeteners, non-carbonated.",
-            "name": "Bottled Water - Flavored",
-            "product_tax_code": "50202301A0001"
-        },
-        {
-            "description": "Bottled Water for human consumption, unsweetened, carbonated naturally.  Includes carbonated waters containing only natural flavors or essences.",
-            "name": "Bottled Water - Carbonated Naturally",
-            "product_tax_code": "50202301A0003"
-        },
-        {
-            "description": "Bottled Water for human consumption, unsweetened, carbonated artificially during bottling process.  Includes carbonated waters containing only natural flavors or essences.",
-            "name": "Bottled Water - Carbonated Artificially",
-            "product_tax_code": "50202301A0002"
-        },
-        {
-            "description": "Bottled Water for human consumption, containing natural or artificial sweeteners, carbonated.",
-            "name": "Bottled Water - Carbonated - Sweetened",
-            "product_tax_code": "50202301A0004"
-        },
-        {
-            "description": "Clothing - Sequins for use in clothing",
-            "name": "Clothing - Sequins for use in clothing",
-            "product_tax_code": "60123900A0000"
-        },
-        {
-            "description": "Clothing - Synthetic Fur Gloves",
-            "name": "Clothing - Synthetic Fur Gloves",
-            "product_tax_code": "53102503A0002"
-        },
-        {
-            "description": "Clothing - Synthetic Fur Coat or Jacket",
-            "name": "Clothing - Synthetic Fur Coat or Jacket",
-            "product_tax_code": "53101800A0002"
-        },
-        {
-            "description": "Clothing - Fur Hat",
-            "name": "Clothing - Fur Hat",
-            "product_tax_code": "53102504A0001"
-        },
-        {
-            "description": "Clothing - Fur Coat or Jacket",
-            "name": "Clothing - Fur Coat or Jacket",
-            "product_tax_code": "53101800A0001"
-        },
-        {
-            "description": "Cloud-based business process as a service",
-            "name": "Cloud-based business process as a service - Personal Use",
-            "product_tax_code": "81162300A0000"
-        },
-        {
-            "description": "Clothing - Shoulder pads for sports",
-            "name": "Clothing - Shoulder pads for sports",
-            "product_tax_code": "46181506A0002"
-        },
-        {
-            "description": "Mainframe software applications design\r\n",
-            "name": "Mainframe software applications design\r\n",
-            "product_tax_code": "81111501A0000"
-        },
-        {
-            "description": "Clothing - Safety shoes",
-            "name": "Clothing - Safety shoes",
-            "product_tax_code": "46181605A0000"
-        },
-        {
-            "description": "Clothing - Protective hood",
-            "name": "Clothing - Protective hood",
-            "product_tax_code": "46181710A0001"
-        },
-        {
-            "description": "Clothing - Face protection kit",
-            "name": "Clothing - Face protection kit",
-            "product_tax_code": "46181709A0001"
-        },
-        {
-            "description": "Clothing - Protective hair net",
-            "name": "Clothing - Protective hair net",
-            "product_tax_code": "46181708A0001"
-        },
-        {
-            "description": "Clothing - Facial shields parts or accessories",
-            "name": "Clothing - Facial shields parts or accessories",
-            "product_tax_code": "46181707A0001"
-        },
-        {
-            "description": "Clothing - Safety helmets",
-            "name": "Clothing - Safety helmets",
-            "product_tax_code": "46181704A0001"
-        },
-        {
-            "description": "Clothing - Poncho",
-            "name": "Clothing - Poncho",
-            "product_tax_code": "53101806A0000"
-        },
-        {
-            "description": "Clothing - Protective insole",
-            "name": "Clothing - Protective insole",
-            "product_tax_code": "46181609A0000"
-        },
-        {
-            "description": "Clothing - Protective clogs",
-            "name": "Clothing - Protective clogs",
-            "product_tax_code": "46181607A0000"
-        },
-        {
-            "description": "Clothing - Waterproof jacket or raincoat",
-            "name": "Clothing - Waterproof jacket or raincoat",
-            "product_tax_code": "46181543A0000"
-        },
-        {
-            "description": "Systems architecture\r\n",
-            "name": "Systems architecture\r\n",
-            "product_tax_code": "81111705A0000"
-        },
-        {
-            "description": "System installation service\r\n",
-            "name": "System installation service\r\n",
-            "product_tax_code": "81111809A0000"
-        },
-        {
-            "description": "Software maintenance and support - Mandatory maintenance and support charges for custom software including items delivered by load and leave",
-            "name": "Software maintenance and support - Mandatory, custom, load and leave delivery",
-            "product_tax_code": "81112200A2310"
-        },
-        {
-            "description": "Software coding service\r\n",
-            "name": "Software coding service\r\n",
-            "product_tax_code": "81111810A0000"
-        },
-        {
-            "description": "Software - Custom & delivered electronically",
-            "name": "Software - Custom, electronic delivery",
-            "product_tax_code": "43230000A2200"
-        },
-        {
-            "description": "Bathing suits and swim suits",
-            "name": "Clothing - Swimwear",
-            "product_tax_code": "20041"
-        },
-        {
-            "description": "Miscellaneous services which are not subject to a service-specific tax levy. This category will only treat services as taxable if the jurisdiction taxes services generally.",
-            "name": "General Services",
-            "product_tax_code": "19000"
-        },
-        {
-            "description": "Services provided to educate users on the proper use of a product.  Live training in person",
-            "name": "Training Services - Live",
-            "product_tax_code": "19004"
-        },
-        {
-            "description": "Admission charges associated with entry to an event.",
-            "name": "Admission Services",
-            "product_tax_code": "19003"
-        },
-        {
-            "description": "Service of providing usage of a parking space.",
-            "name": "Parking Services",
-            "product_tax_code": "19002"
-        },
-        {
-            "description": "A charge separately stated from any sale of the product itself for the installation of tangible personal property.  This a labor charge, with any non-separately stated property transferred in performing the service considered inconsequential.",
-            "name": "Installation Services",
-            "product_tax_code": "10040"
-        },
-        {
-            "description": "Services rendered for advertising which do not include the exchange of tangible personal property.",
-            "name": "Advertising Services",
-            "product_tax_code": "19001"
-        },
-        {
-            "description": "Digital products transferred electronically, meaning obtained by the purchaser by means other than tangible storage media.",
-            "name": "Digital Goods",
-            "product_tax_code": "31000"
-        },
-        {
-            "description": " All human wearing apparel suitable for general use",
-            "name": "Clothing",
-            "product_tax_code": "20010"
-        },
-        {
-            "description": "An over-the-counter drug is a substance that contains a label identifying it as a drug and including a \"drug facts\" panel or a statement of active ingredients, that can be obtained without a prescription.  A drug can be intended for internal (ingestible, implant, injectable) or external (topical) application to the human body.",
-            "name": "Over-the-Counter Drugs",
-            "product_tax_code": "51010"
-        },
-        {
-            "description": "A substance that can only be obtained via a prescription of a licensed professional.  A drug is a compound, substance, or preparation, and any component thereof, not including food or food ingredients, dietary supplements, or alcoholic beverages, that is: recognized in the official United States pharmacopoeia, official homeopathic pharmacopoeia of the United States, or official national formulary, and supplement to any of them; intended for use in the diagnosis, cure, mitigation, treatment, or prevention of disease; or intended to affect the structure or any function of the body.  A drug can be intended for internal (ingestible, implant, injectable) or external (topical) application to the human body.",
-            "name": "Prescription Drugs",
-            "product_tax_code": "51020"
-        },
-        {
-            "description": "Food for humans consumption, unprepared",
-            "name": "Food & Groceries",
-            "product_tax_code": "40030"
-        },
-        {
-            "description": "Pre-written software, delivered electronically, but access remotely.",
-            "name": "Software as a Service",
-            "product_tax_code": "30070"
-        },
-        {
-            "description": "Periodicals, printed, sold by subscription",
-            "name": "Magazines & Subscriptions",
-            "product_tax_code": "81300"
-        },
-        {
-            "description": "Books, printed",
-            "name": "Books",
-            "product_tax_code": "81100"
-        },
-        {
-            "description": "Periodicals, printed, sold individually",
-            "name": "Magazine",
-            "product_tax_code": "81310"
-        },
-        {
-            "description": "Textbooks, printed",
-            "name": "Textbook",
-            "product_tax_code": "81110"
-        },
-        {
-            "description": "Religious books and manuals, printed",
-            "name": "Religious books",
-            "product_tax_code": "81120"
-        },
-        {
-            "description": "Non-food dietary supplements",
-            "name": "Supplements",
-            "product_tax_code": "40020"
-        },
-        {
-            "description": "Candy",
-            "name": "Candy",
-            "product_tax_code": "40010"
-        },
-        {
-            "description": "Soft drinks. Soda and similar drinks. Does not include water, juice, or milk.",
-            "name": "Soft Drinks",
-            "product_tax_code": "40050"
-        },
-        {
-            "description": "Bottled water for human consumption.",
-            "name": "Bottled Water",
-            "product_tax_code": "40060"
-        },
-        {
-            "description": "Ready to eat foods intended to be consumed on site by humans. Foods not considered to be Food & Grocery (not food for home consumption or food which requires further preparation to consume).",
-            "name": "Prepared Foods",
-            "product_tax_code": "41000"
-        }
-    ]
-}
\ No newline at end of file
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.js b/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.js
deleted file mode 100644
index 2925db8..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.js
+++ /dev/null
@@ -1,37 +0,0 @@
-// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('TaxJar Settings', {
-	is_sandbox: (frm) => {
-		frm.toggle_reqd("api_key", !frm.doc.is_sandbox);
-		frm.toggle_reqd("sandbox_api_key", frm.doc.is_sandbox);
-	},
-
-	on_load: (frm) => {
-		frm.set_query('shipping_account_head', function() {
-			return {
-				filters: {
-					'company': frm.doc.company
-				}
-			};
-		});
-		frm.set_query('tax_account_head', function() {
-			return {
-				filters: {
-					'company': frm.doc.company
-				}
-			};
-		});
-	},
-
-	refresh: (frm) => {
-		frm.add_custom_button(__('Update Nexus List'), function() {
-			frm.call({
-				doc: frm.doc,
-				method: 'update_nexus_list'
-			});
-		});
-	},
-
-
-});
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.json b/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.json
deleted file mode 100644
index 6afd3f7..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.json
+++ /dev/null
@@ -1,139 +0,0 @@
-{
- "actions": [],
- "creation": "2017-06-15 08:21:24.624315",
- "doctype": "DocType",
- "document_type": "Setup",
- "editable_grid": 1,
- "engine": "InnoDB",
- "field_order": [
-  "taxjar_calculate_tax",
-  "is_sandbox",
-  "taxjar_create_transactions",
-  "credentials",
-  "api_key",
-  "cb_keys",
-  "sandbox_api_key",
-  "configuration",
-  "company",
-  "column_break_10",
-  "tax_account_head",
-  "configuration_cb",
-  "shipping_account_head",
-  "section_break_12",
-  "nexus"
- ],
- "fields": [
-  {
-   "fieldname": "credentials",
-   "fieldtype": "Section Break",
-   "label": "Credentials"
-  },
-  {
-   "fieldname": "api_key",
-   "fieldtype": "Password",
-   "in_list_view": 1,
-   "label": "Live API Key",
-   "reqd": 1
-  },
-  {
-   "fieldname": "configuration",
-   "fieldtype": "Section Break",
-   "label": "Configuration"
-  },
-  {
-   "fieldname": "tax_account_head",
-   "fieldtype": "Link",
-   "in_list_view": 1,
-   "label": "Tax Account Head",
-   "options": "Account",
-   "reqd": 1
-  },
-  {
-   "fieldname": "shipping_account_head",
-   "fieldtype": "Link",
-   "in_list_view": 1,
-   "label": "Shipping Account Head",
-   "options": "Account",
-   "reqd": 1
-  },
-  {
-   "default": "0",
-   "depends_on": "taxjar_calculate_tax",
-   "fieldname": "is_sandbox",
-   "fieldtype": "Check",
-   "label": "Sandbox Mode"
-  },
-  {
-   "fieldname": "sandbox_api_key",
-   "fieldtype": "Password",
-   "label": "Sandbox API Key"
-  },
-  {
-   "default": "0",
-   "depends_on": "taxjar_calculate_tax",
-   "fieldname": "taxjar_create_transactions",
-   "fieldtype": "Check",
-   "label": "Create TaxJar Transaction"
-  },
-  {
-   "default": "0",
-   "fieldname": "taxjar_calculate_tax",
-   "fieldtype": "Check",
-   "label": "Enable Tax Calculation"
-  },
-  {
-   "fieldname": "cb_keys",
-   "fieldtype": "Column Break"
-  },
-  {
-   "depends_on": "nexus",
-   "fieldname": "section_break_12",
-   "fieldtype": "Section Break",
-   "label": "Nexus List"
-  },
-  {
-   "fieldname": "nexus",
-   "fieldtype": "Table",
-   "label": "Nexus",
-   "options": "TaxJar Nexus",
-   "read_only": 1
-  },
-  {
-   "fieldname": "configuration_cb",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "company",
-   "fieldtype": "Link",
-   "label": "Company",
-   "options": "Company"
-  },
-  {
-   "fieldname": "column_break_10",
-   "fieldtype": "Column Break"
-  }
- ],
- "issingle": 1,
- "links": [],
- "modified": "2021-11-30 12:17:24.647979",
- "modified_by": "Administrator",
- "module": "ERPNext Integrations",
- "name": "TaxJar Settings",
- "owner": "Administrator",
- "permissions": [
-  {
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "print": 1,
-   "read": 1,
-   "role": "System Manager",
-   "share": 1,
-   "write": 1
-  }
- ],
- "quick_entry": 1,
- "sort_field": "modified",
- "sort_order": "DESC",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.py b/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.py
deleted file mode 100644
index 2148863..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_settings/taxjar_settings.py
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-
-import json
-import os
-
-import frappe
-from frappe.custom.doctype.custom_field.custom_field import create_custom_fields
-from frappe.model.document import Document
-from frappe.permissions import add_permission, update_permission_property
-
-from erpnext.erpnext_integrations.taxjar_integration import get_client
-
-
-class TaxJarSettings(Document):
-	def on_update(self):
-		TAXJAR_CREATE_TRANSACTIONS = self.taxjar_create_transactions
-		TAXJAR_CALCULATE_TAX = self.taxjar_calculate_tax
-		TAXJAR_SANDBOX_MODE = self.is_sandbox
-
-		fields_already_exist = frappe.db.exists(
-			"Custom Field",
-			{"dt": ("in", ["Item", "Sales Invoice Item"]), "fieldname": "product_tax_category"},
-		)
-		fields_hidden = frappe.get_value(
-			"Custom Field", {"dt": ("in", ["Sales Invoice Item"])}, "hidden"
-		)
-
-		if TAXJAR_CREATE_TRANSACTIONS or TAXJAR_CALCULATE_TAX or TAXJAR_SANDBOX_MODE:
-			if not fields_already_exist:
-				add_product_tax_categories()
-				make_custom_fields()
-				add_permissions()
-				frappe.enqueue("erpnext.regional.united_states.setup.add_product_tax_categories", now=False)
-
-			elif fields_already_exist and fields_hidden:
-				toggle_tax_category_fields(hidden="0")
-
-		elif fields_already_exist:
-			toggle_tax_category_fields(hidden="1")
-
-	def validate(self):
-		self.calculate_taxes_validation_for_create_transactions()
-
-	@frappe.whitelist()
-	def update_nexus_list(self):
-		client = get_client()
-		nexus = client.nexus_regions()
-
-		new_nexus_list = [frappe._dict(address) for address in nexus]
-
-		self.set("nexus", [])
-		self.set("nexus", new_nexus_list)
-		self.save()
-
-	def calculate_taxes_validation_for_create_transactions(self):
-		if not self.taxjar_calculate_tax and (self.taxjar_create_transactions or self.is_sandbox):
-			frappe.throw(
-				frappe._(
-					"Before enabling <b>Create Transaction</b> or <b>Sandbox Mode</b>, you need to check the <b>Enable Tax Calculation</b> box"
-				)
-			)
-
-
-def toggle_tax_category_fields(hidden):
-	frappe.set_value(
-		"Custom Field",
-		{"dt": "Sales Invoice Item", "fieldname": "product_tax_category"},
-		"hidden",
-		hidden,
-	)
-	frappe.set_value(
-		"Custom Field", {"dt": "Item", "fieldname": "product_tax_category"}, "hidden", hidden
-	)
-
-
-def add_product_tax_categories():
-	with open(os.path.join(os.path.dirname(__file__), "product_tax_category_data.json"), "r") as f:
-		tax_categories = json.loads(f.read())
-	create_tax_categories(tax_categories["categories"])
-
-
-def create_tax_categories(data):
-	for d in data:
-		if not frappe.db.exists("Product Tax Category", {"product_tax_code": d.get("product_tax_code")}):
-			tax_category = frappe.new_doc("Product Tax Category")
-			tax_category.description = d.get("description")
-			tax_category.product_tax_code = d.get("product_tax_code")
-			tax_category.category_name = d.get("name")
-			tax_category.db_insert()
-
-
-def make_custom_fields(update=True):
-	custom_fields = {
-		"Sales Invoice Item": [
-			dict(
-				fieldname="product_tax_category",
-				fieldtype="Link",
-				insert_after="description",
-				options="Product Tax Category",
-				label="Product Tax Category",
-				fetch_from="item_code.product_tax_category",
-			),
-			dict(
-				fieldname="tax_collectable",
-				fieldtype="Currency",
-				insert_after="net_amount",
-				label="Tax Collectable",
-				read_only=1,
-				options="currency",
-			),
-			dict(
-				fieldname="taxable_amount",
-				fieldtype="Currency",
-				insert_after="tax_collectable",
-				label="Taxable Amount",
-				read_only=1,
-				options="currency",
-			),
-		],
-		"Item": [
-			dict(
-				fieldname="product_tax_category",
-				fieldtype="Link",
-				insert_after="item_group",
-				options="Product Tax Category",
-				label="Product Tax Category",
-			)
-		],
-	}
-	create_custom_fields(custom_fields, update=update)
-
-
-def add_permissions():
-	doctype = "Product Tax Category"
-	for role in (
-		"Accounts Manager",
-		"Accounts User",
-		"System Manager",
-		"Item Manager",
-		"Stock Manager",
-	):
-		add_permission(doctype, role, 0)
-		update_permission_property(doctype, role, 0, "write", 1)
-		update_permission_property(doctype, role, 0, "create", 1)
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_settings/test_taxjar_settings.py b/erpnext/erpnext_integrations/doctype/taxjar_settings/test_taxjar_settings.py
deleted file mode 100644
index d6f8eea..0000000
--- a/erpnext/erpnext_integrations/doctype/taxjar_settings/test_taxjar_settings.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-# import frappe
-import unittest
-
-
-class TestTaxJarSettings(unittest.TestCase):
-	pass
diff --git a/erpnext/erpnext_integrations/taxjar_integration.py b/erpnext/erpnext_integrations/taxjar_integration.py
deleted file mode 100644
index 2d9093b..0000000
--- a/erpnext/erpnext_integrations/taxjar_integration.py
+++ /dev/null
@@ -1,419 +0,0 @@
-import traceback
-
-import frappe
-import taxjar
-from frappe import _
-from frappe.contacts.doctype.address.address import get_company_address
-from frappe.utils import cint, flt
-
-from erpnext import get_default_company, get_region
-
-SUPPORTED_COUNTRY_CODES = [
-	"AT",
-	"AU",
-	"BE",
-	"BG",
-	"CA",
-	"CY",
-	"CZ",
-	"DE",
-	"DK",
-	"EE",
-	"ES",
-	"FI",
-	"FR",
-	"GB",
-	"GR",
-	"HR",
-	"HU",
-	"IE",
-	"IT",
-	"LT",
-	"LU",
-	"LV",
-	"MT",
-	"NL",
-	"PL",
-	"PT",
-	"RO",
-	"SE",
-	"SI",
-	"SK",
-	"US",
-]
-SUPPORTED_STATE_CODES = [
-	"AL",
-	"AK",
-	"AZ",
-	"AR",
-	"CA",
-	"CO",
-	"CT",
-	"DE",
-	"DC",
-	"FL",
-	"GA",
-	"HI",
-	"ID",
-	"IL",
-	"IN",
-	"IA",
-	"KS",
-	"KY",
-	"LA",
-	"ME",
-	"MD",
-	"MA",
-	"MI",
-	"MN",
-	"MS",
-	"MO",
-	"MT",
-	"NE",
-	"NV",
-	"NH",
-	"NJ",
-	"NM",
-	"NY",
-	"NC",
-	"ND",
-	"OH",
-	"OK",
-	"OR",
-	"PA",
-	"RI",
-	"SC",
-	"SD",
-	"TN",
-	"TX",
-	"UT",
-	"VT",
-	"VA",
-	"WA",
-	"WV",
-	"WI",
-	"WY",
-]
-
-
-def get_client():
-	taxjar_settings = frappe.get_single("TaxJar Settings")
-
-	if not taxjar_settings.is_sandbox:
-		api_key = taxjar_settings.api_key and taxjar_settings.get_password("api_key")
-		api_url = taxjar.DEFAULT_API_URL
-	else:
-		api_key = taxjar_settings.sandbox_api_key and taxjar_settings.get_password("sandbox_api_key")
-		api_url = taxjar.SANDBOX_API_URL
-
-	if api_key and api_url:
-		client = taxjar.Client(api_key=api_key, api_url=api_url)
-		client.set_api_config("headers", {"x-api-version": "2022-01-24"})
-		return client
-
-
-def create_transaction(doc, method):
-	TAXJAR_CREATE_TRANSACTIONS = frappe.db.get_single_value(
-		"TaxJar Settings", "taxjar_create_transactions"
-	)
-
-	"""Create an order transaction in TaxJar"""
-
-	if not TAXJAR_CREATE_TRANSACTIONS:
-		return
-
-	client = get_client()
-
-	if not client:
-		return
-
-	TAX_ACCOUNT_HEAD = frappe.db.get_single_value("TaxJar Settings", "tax_account_head")
-	sales_tax = sum([tax.tax_amount for tax in doc.taxes if tax.account_head == TAX_ACCOUNT_HEAD])
-
-	if not sales_tax:
-		return
-
-	tax_dict = get_tax_data(doc)
-
-	if not tax_dict:
-		return
-
-	tax_dict["transaction_id"] = doc.name
-	tax_dict["transaction_date"] = frappe.utils.today()
-	tax_dict["sales_tax"] = sales_tax
-	tax_dict["amount"] = doc.total + tax_dict["shipping"]
-
-	try:
-		if doc.is_return:
-			client.create_refund(tax_dict)
-		else:
-			client.create_order(tax_dict)
-	except taxjar.exceptions.TaxJarResponseError as err:
-		frappe.throw(_(sanitize_error_response(err)))
-	except Exception as ex:
-		print(traceback.format_exc(ex))
-
-
-def delete_transaction(doc, method):
-	"""Delete an existing TaxJar order transaction"""
-	TAXJAR_CREATE_TRANSACTIONS = frappe.db.get_single_value(
-		"TaxJar Settings", "taxjar_create_transactions"
-	)
-
-	if not TAXJAR_CREATE_TRANSACTIONS:
-		return
-
-	client = get_client()
-
-	if not client:
-		return
-
-	client.delete_order(doc.name)
-
-
-def get_tax_data(doc):
-	SHIP_ACCOUNT_HEAD = frappe.db.get_single_value("TaxJar Settings", "shipping_account_head")
-
-	from_address = get_company_address_details(doc)
-	from_shipping_state = from_address.get("state")
-	from_country_code = frappe.db.get_value("Country", from_address.country, "code")
-	from_country_code = from_country_code.upper()
-
-	to_address = get_shipping_address_details(doc)
-	to_shipping_state = to_address.get("state")
-	to_country_code = frappe.db.get_value("Country", to_address.country, "code")
-	to_country_code = to_country_code.upper()
-
-	shipping = sum([tax.tax_amount for tax in doc.taxes if tax.account_head == SHIP_ACCOUNT_HEAD])
-
-	line_items = [get_line_item_dict(item, doc.docstatus) for item in doc.items]
-
-	if from_shipping_state not in SUPPORTED_STATE_CODES:
-		from_shipping_state = get_state_code(from_address, "Company")
-
-	if to_shipping_state not in SUPPORTED_STATE_CODES:
-		to_shipping_state = get_state_code(to_address, "Shipping")
-
-	tax_dict = {
-		"from_country": from_country_code,
-		"from_zip": from_address.pincode,
-		"from_state": from_shipping_state,
-		"from_city": from_address.city,
-		"from_street": from_address.address_line1,
-		"to_country": to_country_code,
-		"to_zip": to_address.pincode,
-		"to_city": to_address.city,
-		"to_street": to_address.address_line1,
-		"to_state": to_shipping_state,
-		"shipping": shipping,
-		"amount": doc.net_total,
-		"plugin": "erpnext",
-		"line_items": line_items,
-	}
-	return tax_dict
-
-
-def get_state_code(address, location):
-	if address is not None:
-		state_code = get_iso_3166_2_state_code(address)
-		if state_code not in SUPPORTED_STATE_CODES:
-			frappe.throw(_("Please enter a valid State in the {0} Address").format(location))
-	else:
-		frappe.throw(_("Please enter a valid State in the {0} Address").format(location))
-
-	return state_code
-
-
-def get_line_item_dict(item, docstatus):
-	tax_dict = dict(
-		id=item.get("idx"),
-		quantity=item.get("qty"),
-		unit_price=item.get("rate"),
-		product_tax_code=item.get("product_tax_category"),
-	)
-
-	if docstatus == 1:
-		tax_dict.update({"sales_tax": item.get("tax_collectable")})
-
-	return tax_dict
-
-
-def set_sales_tax(doc, method):
-	TAX_ACCOUNT_HEAD = frappe.db.get_single_value("TaxJar Settings", "tax_account_head")
-	TAXJAR_CALCULATE_TAX = frappe.db.get_single_value("TaxJar Settings", "taxjar_calculate_tax")
-
-	if not TAXJAR_CALCULATE_TAX:
-		return
-
-	if get_region(doc.company) != "United States":
-		return
-
-	if not doc.items:
-		return
-
-	if check_sales_tax_exemption(doc):
-		return
-
-	tax_dict = get_tax_data(doc)
-
-	if not tax_dict:
-		# Remove existing tax rows if address is changed from a taxable state/country
-		setattr(doc, "taxes", [tax for tax in doc.taxes if tax.account_head != TAX_ACCOUNT_HEAD])
-		return
-
-	# check if delivering within a nexus
-	check_for_nexus(doc, tax_dict)
-
-	tax_data = validate_tax_request(tax_dict)
-	if tax_data is not None:
-		if not tax_data.amount_to_collect:
-			setattr(doc, "taxes", [tax for tax in doc.taxes if tax.account_head != TAX_ACCOUNT_HEAD])
-		elif tax_data.amount_to_collect > 0:
-			# Loop through tax rows for existing Sales Tax entry
-			# If none are found, add a row with the tax amount
-			for tax in doc.taxes:
-				if tax.account_head == TAX_ACCOUNT_HEAD:
-					tax.tax_amount = tax_data.amount_to_collect
-
-					doc.run_method("calculate_taxes_and_totals")
-					break
-			else:
-				doc.append(
-					"taxes",
-					{
-						"charge_type": "Actual",
-						"description": "Sales Tax",
-						"account_head": TAX_ACCOUNT_HEAD,
-						"tax_amount": tax_data.amount_to_collect,
-					},
-				)
-			# Assigning values to tax_collectable and taxable_amount fields in sales item table
-			for item in tax_data.breakdown.line_items:
-				doc.get("items")[cint(item.id) - 1].tax_collectable = item.tax_collectable
-				doc.get("items")[cint(item.id) - 1].taxable_amount = item.taxable_amount
-
-			doc.run_method("calculate_taxes_and_totals")
-
-
-def check_for_nexus(doc, tax_dict):
-	TAX_ACCOUNT_HEAD = frappe.db.get_single_value("TaxJar Settings", "tax_account_head")
-	if not frappe.db.get_value("TaxJar Nexus", {"region_code": tax_dict["to_state"]}):
-		for item in doc.get("items"):
-			item.tax_collectable = flt(0)
-			item.taxable_amount = flt(0)
-
-		for tax in list(doc.taxes):
-			if tax.account_head == TAX_ACCOUNT_HEAD:
-				doc.taxes.remove(tax)
-		return
-
-
-def check_sales_tax_exemption(doc):
-	# if the party is exempt from sales tax, then set all tax account heads to zero
-	TAX_ACCOUNT_HEAD = frappe.db.get_single_value("TaxJar Settings", "tax_account_head")
-
-	sales_tax_exempted = (
-		hasattr(doc, "exempt_from_sales_tax")
-		and doc.exempt_from_sales_tax
-		or frappe.db.has_column("Customer", "exempt_from_sales_tax")
-		and frappe.db.get_value("Customer", doc.customer, "exempt_from_sales_tax")
-	)
-
-	if sales_tax_exempted:
-		for tax in doc.taxes:
-			if tax.account_head == TAX_ACCOUNT_HEAD:
-				tax.tax_amount = 0
-				break
-		doc.run_method("calculate_taxes_and_totals")
-		return True
-	else:
-		return False
-
-
-def validate_tax_request(tax_dict):
-	"""Return the sales tax that should be collected for a given order."""
-
-	client = get_client()
-
-	if not client:
-		return
-
-	try:
-		tax_data = client.tax_for_order(tax_dict)
-	except taxjar.exceptions.TaxJarResponseError as err:
-		frappe.throw(_(sanitize_error_response(err)))
-	else:
-		return tax_data
-
-
-def get_company_address_details(doc):
-	"""Return default company address details"""
-
-	company_address = get_company_address(get_default_company()).company_address
-
-	if not company_address:
-		frappe.throw(_("Please set a default company address"))
-
-	company_address = frappe.get_doc("Address", company_address)
-	return company_address
-
-
-def get_shipping_address_details(doc):
-	"""Return customer shipping address details"""
-
-	if doc.shipping_address_name:
-		shipping_address = frappe.get_doc("Address", doc.shipping_address_name)
-	elif doc.customer_address:
-		shipping_address = frappe.get_doc("Address", doc.customer_address)
-	else:
-		shipping_address = get_company_address_details(doc)
-
-	return shipping_address
-
-
-def get_iso_3166_2_state_code(address):
-	import pycountry
-
-	country_code = frappe.db.get_value("Country", address.get("country"), "code")
-
-	error_message = _(
-		"""{0} is not a valid state! Check for typos or enter the ISO code for your state."""
-	).format(address.get("state"))
-	state = address.get("state").upper().strip()
-
-	# The max length for ISO state codes is 3, excluding the country code
-	if len(state) <= 3:
-		# PyCountry returns state code as {country_code}-{state-code} (e.g. US-FL)
-		address_state = (country_code + "-" + state).upper()
-
-		states = pycountry.subdivisions.get(country_code=country_code.upper())
-		states = [pystate.code for pystate in states]
-
-		if address_state in states:
-			return state
-
-		frappe.throw(_(error_message))
-	else:
-		try:
-			lookup_state = pycountry.subdivisions.lookup(state)
-		except LookupError:
-			frappe.throw(_(error_message))
-		else:
-			return lookup_state.code.split("-")[1]
-
-
-def sanitize_error_response(response):
-	response = response.full_response.get("detail")
-	response = response.replace("_", " ")
-
-	sanitized_responses = {
-		"to zip": "Zipcode",
-		"to city": "City",
-		"to state": "State",
-		"to country": "Country",
-	}
-
-	for k, v in sanitized_responses.items():
-		response = response.replace(k, v)
-
-	return response
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index f9ddb12..92601b3 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -175,6 +175,7 @@
 		},
 	},
 	{"from_route": "/project", "to_route": "Project"},
+	{"from_route": "/tasks", "to_route": "Task"},
 ]
 
 standard_portal_menu_items = [
@@ -312,11 +313,9 @@
 			"erpnext.regional.create_transaction_log",
 			"erpnext.regional.italy.utils.sales_invoice_on_submit",
 			"erpnext.regional.saudi_arabia.utils.create_qr_code",
-			"erpnext.erpnext_integrations.taxjar_integration.create_transaction",
 		],
 		"on_cancel": [
 			"erpnext.regional.italy.utils.sales_invoice_on_cancel",
-			"erpnext.erpnext_integrations.taxjar_integration.delete_transaction",
 			"erpnext.regional.saudi_arabia.utils.delete_qr_code_file",
 		],
 		"on_trash": "erpnext.regional.check_deletion_permission",
@@ -349,9 +348,6 @@
 	"Email Unsubscribe": {
 		"after_insert": "erpnext.crm.doctype.email_campaign.email_campaign.unsubscribe_recipient"
 	},
-	("Quotation", "Sales Order", "Sales Invoice"): {
-		"validate": ["erpnext.erpnext_integrations.taxjar_integration.set_sales_tax"]
-	},
 	"Company": {"on_trash": ["erpnext.regional.saudi_arabia.utils.delete_vat_settings_for_company"]},
 	"Integration Request": {
 		"validate": "erpnext.accounts.doctype.payment_request.payment_request.validate_payment"
diff --git a/erpnext/loan_management/doctype/loan_disbursement/loan_disbursement.py b/erpnext/loan_management/doctype/loan_disbursement/loan_disbursement.py
index b73dee2..51bf327 100644
--- a/erpnext/loan_management/doctype/loan_disbursement/loan_disbursement.py
+++ b/erpnext/loan_management/doctype/loan_disbursement/loan_disbursement.py
@@ -191,7 +191,9 @@
 
 	for security, qty in pledged_securities.items():
 		after_haircut_percentage = 100 - hair_cut_map.get(security)
-		security_value += (loan_security_price_map.get(security) * qty * after_haircut_percentage) / 100
+		security_value += (
+			loan_security_price_map.get(security, 0) * qty * after_haircut_percentage
+		) / 100
 
 	return security_value
 
diff --git a/erpnext/manufacturing/doctype/job_card/job_card.js b/erpnext/manufacturing/doctype/job_card/job_card.js
index b6646b1..619e6bd 100644
--- a/erpnext/manufacturing/doctype/job_card/job_card.js
+++ b/erpnext/manufacturing/doctype/job_card/job_card.js
@@ -33,6 +33,11 @@
 			return;
 		}
 
+		let has_stock_entry = frm.doc.__onload &&
+			frm.doc.__onload.has_stock_entry ? true : false;
+
+		frm.toggle_enable("for_quantity", !has_stock_entry);
+
 		if (!frm.is_new() && has_items && frm.doc.docstatus < 2) {
 			let to_request = frm.doc.for_quantity > frm.doc.transferred_qty;
 			let excess_transfer_allowed = frm.doc.__onload.job_card_excess_transfer;
diff --git a/erpnext/manufacturing/doctype/job_card/job_card.py b/erpnext/manufacturing/doctype/job_card/job_card.py
index 8226475..3133628 100644
--- a/erpnext/manufacturing/doctype/job_card/job_card.py
+++ b/erpnext/manufacturing/doctype/job_card/job_card.py
@@ -57,6 +57,10 @@
 		)
 		self.set_onload("job_card_excess_transfer", excess_transfer)
 		self.set_onload("work_order_closed", self.is_work_order_closed())
+		self.set_onload("has_stock_entry", self.has_stock_entry())
+
+	def has_stock_entry(self):
+		return frappe.db.exists("Stock Entry", {"job_card": self.name, "docstatus": ["!=", 2]})
 
 	def before_validate(self):
 		self.set_wip_warehouse()
diff --git a/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json b/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
index 27d7c41..8c61d54 100644
--- a/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
+++ b/erpnext/manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
@@ -47,7 +47,7 @@
    "fieldtype": "Link",
    "in_list_view": 1,
    "in_standard_filter": 1,
-   "label": "Warehouse",
+   "label": "For Warehouse",
    "options": "Warehouse",
    "reqd": 1
   },
@@ -173,7 +173,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2021-08-23 18:17:58.400462",
+ "modified": "2022-11-26 14:59:25.879631",
  "modified_by": "Administrator",
  "module": "Manufacturing",
  "name": "Material Request Plan Item",
@@ -182,5 +182,6 @@
  "quick_entry": 1,
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/manufacturing/doctype/production_plan/production_plan.js b/erpnext/manufacturing/doctype/production_plan/production_plan.js
index 59ddf1f..62715e6 100644
--- a/erpnext/manufacturing/doctype/production_plan/production_plan.js
+++ b/erpnext/manufacturing/doctype/production_plan/production_plan.js
@@ -3,13 +3,13 @@
 
 frappe.ui.form.on('Production Plan', {
 
-	before_save: function(frm) {
+	before_save(frm) {
 		// preserve temporary names on production plan item to re-link sub-assembly items
 		frm.doc.po_items.forEach(item => {
 			item.temporary_name = item.name;
 		});
 	},
-	setup: function(frm) {
+	setup(frm) {
 		frm.custom_make_buttons = {
 			'Work Order': 'Work Order / Subcontract PO',
 			'Material Request': 'Material Request',
@@ -70,7 +70,7 @@
 		}
 	},
 
-	refresh: function(frm) {
+	refresh(frm) {
 		if (frm.doc.docstatus === 1) {
 			frm.trigger("show_progress");
 
@@ -158,7 +158,7 @@
 		set_field_options("projected_qty_formula", projected_qty_formula);
 	},
 
-	close_open_production_plan: (frm, close=false) => {
+	close_open_production_plan(frm, close=false) {
 		frappe.call({
 			method: "set_status",
 			freeze: true,
@@ -170,7 +170,7 @@
 		});
 	},
 
-	make_work_order: function(frm) {
+	make_work_order(frm) {
 		frappe.call({
 			method: "make_work_order",
 			freeze: true,
@@ -181,7 +181,7 @@
 		});
 	},
 
-	make_material_request: function(frm) {
+	make_material_request(frm) {
 
 		frappe.confirm(__("Do you want to submit the material request"),
 			function() {
@@ -193,7 +193,7 @@
 		);
 	},
 
-	create_material_request: function(frm, submit) {
+	create_material_request(frm, submit) {
 		frm.doc.submit_material_request = submit;
 
 		frappe.call({
@@ -206,7 +206,7 @@
 		});
 	},
 
-	get_sales_orders: function(frm) {
+	get_sales_orders(frm) {
 		frappe.call({
 			method: "get_open_sales_orders",
 			doc: frm.doc,
@@ -216,7 +216,7 @@
 		});
 	},
 
-	get_material_request: function(frm) {
+	get_material_request(frm) {
 		frappe.call({
 			method: "get_pending_material_requests",
 			doc: frm.doc,
@@ -226,7 +226,7 @@
 		});
 	},
 
-	get_items: function (frm) {
+	get_items(frm) {
 		frm.clear_table('prod_plan_references');
 
 		frappe.call({
@@ -238,7 +238,7 @@
 			}
 		});
 	},
-	combine_items: function (frm) {
+	combine_items(frm) {
 		frm.clear_table("prod_plan_references");
 
 		frappe.call({
@@ -254,14 +254,14 @@
 		});
 	},
 
-	combine_sub_items: (frm) => {
+	combine_sub_items(frm) {
 		if (frm.doc.sub_assembly_items.length > 0) {
 			frm.clear_table("sub_assembly_items");
 			frm.trigger("get_sub_assembly_items");
 		}
 	},
 
-	get_sub_assembly_items: function(frm) {
+	get_sub_assembly_items(frm) {
 		frm.dirty();
 
 		frappe.call({
@@ -274,9 +274,25 @@
 		});
 	},
 
-	get_items_for_mr: function(frm) {
+	toggle_for_warehouse(frm) {
+		frm.toggle_reqd("for_warehouse", true);
+	},
+
+	get_items_for_mr(frm) {
 		if (!frm.doc.for_warehouse) {
-			frappe.throw(__("To make material requests, 'Make Material Request for Warehouse' field is mandatory"));
+			frm.trigger("toggle_for_warehouse");
+			frappe.throw(__("Select the Warehouse"));
+		}
+
+		frm.events.get_items_for_material_requests(frm, [{
+			warehouse: frm.doc.for_warehouse
+		}]);
+	},
+
+	transfer_materials(frm) {
+		if (!frm.doc.for_warehouse) {
+			frm.trigger("toggle_for_warehouse");
+			frappe.throw(__("Select the Warehouse"));
 		}
 
 		if (frm.doc.ignore_existing_ordered_qty) {
@@ -287,18 +303,10 @@
 				title: title,
 				fields: [
 					{
-						'label': __('Target Warehouse'),
-						'fieldtype': 'Link',
-						'fieldname': 'target_warehouse',
-						'read_only': true,
-						'default': frm.doc.for_warehouse
-					},
-					{
-						'label': __('Source Warehouses (Optional)'),
+						'label': __('Transfer From Warehouses'),
 						'fieldtype': 'Table MultiSelect',
 						'fieldname': 'warehouses',
 						'options': 'Production Plan Material Request Warehouse',
-						'description': __('If source warehouse selected then system will create the material request with type Material Transfer from Source to Target warehouse. If not selected then will create the material request with type Purchase for the target warehouse.'),
 						get_query: function () {
 							return {
 								filters: {
@@ -307,6 +315,13 @@
 							};
 						},
 					},
+					{
+						'label': __('For Warehouse'),
+						'fieldtype': 'Link',
+						'fieldname': 'target_warehouse',
+						'read_only': true,
+						'default': frm.doc.for_warehouse
+					}
 				]
 			});
 
@@ -320,8 +335,8 @@
 		}
 	},
 
-	get_items_for_material_requests: function(frm, warehouses) {
-		const set_fields = ['actual_qty', 'item_code','item_name', 'description', 'uom', 'from_warehouse',
+	get_items_for_material_requests(frm, warehouses) {
+		let set_fields = ['actual_qty', 'item_code','item_name', 'description', 'uom', 'from_warehouse',
 			'min_order_qty', 'required_bom_qty', 'quantity', 'sales_order', 'warehouse', 'projected_qty', 'ordered_qty',
 			'reserved_qty_for_production', 'material_request_type'];
 
@@ -335,13 +350,13 @@
 			callback: function(r) {
 				if(r.message) {
 					frm.set_value('mr_items', []);
-					$.each(r.message, function(i, d) {
-						var item = frm.add_child('mr_items');
-						for (let key in d) {
-							if (d[key] && in_list(set_fields, key)) {
-								item[key] = d[key];
+					r.message.forEach(row => {
+						let d = frm.add_child('mr_items');
+						set_fields.forEach(field => {
+							if (row[field]) {
+								d[field] = row[field];
 							}
-						}
+						});
 					});
 				}
 				refresh_field('mr_items');
@@ -349,13 +364,7 @@
 		});
 	},
 
-	for_warehouse: function(frm) {
-		if (frm.doc.mr_items && frm.doc.for_warehouse) {
-			frm.trigger("get_items_for_mr");
-		}
-	},
-
-	download_materials_required: function(frm) {
+	download_materials_required(frm) {
 		const fields = [{
 			fieldname: 'warehouses',
 			fieldtype: 'Table MultiSelect',
@@ -381,7 +390,7 @@
 		}, __('Select Warehouses to get Stock for Materials Planning'), __('Get Stock'));
 	},
 
-	show_progress: function(frm) {
+	show_progress(frm) {
 		var bars = [];
 		var message = '';
 		var title = '';
@@ -416,7 +425,7 @@
 });
 
 frappe.ui.form.on("Production Plan Item", {
-	item_code: function(frm, cdt, cdn) {
+	item_code(frm, cdt, cdn) {
 		const row = locals[cdt][cdn];
 		if (row.item_code) {
 			frappe.call({
@@ -435,7 +444,7 @@
 });
 
 frappe.ui.form.on("Material Request Plan Item", {
-	warehouse: function(frm, cdt, cdn) {
+	warehouse(frm, cdt, cdn) {
 		const row = locals[cdt][cdn];
 		if (row.warehouse && row.item_code && frm.doc.company) {
 			frappe.call({
diff --git a/erpnext/manufacturing/doctype/production_plan/production_plan.json b/erpnext/manufacturing/doctype/production_plan/production_plan.json
index 85f9843..2624daa 100644
--- a/erpnext/manufacturing/doctype/production_plan/production_plan.json
+++ b/erpnext/manufacturing/doctype/production_plan/production_plan.json
@@ -38,6 +38,8 @@
   "get_sub_assembly_items",
   "combine_sub_items",
   "sub_assembly_items",
+  "download_materials_request_plan_section_section",
+  "download_materials_required",
   "material_request_planning",
   "include_non_stock_items",
   "include_subcontracted_items",
@@ -45,8 +47,8 @@
   "ignore_existing_ordered_qty",
   "column_break_25",
   "for_warehouse",
-  "download_materials_required",
   "get_items_for_mr",
+  "transfer_materials",
   "section_break_27",
   "mr_items",
   "other_details",
@@ -206,7 +208,7 @@
   {
    "fieldname": "material_request_planning",
    "fieldtype": "Section Break",
-   "label": "Material Requirement Planning"
+   "label": "Material Request Planning"
   },
   {
    "default": "1",
@@ -235,12 +237,12 @@
    "depends_on": "eval:!doc.__islocal",
    "fieldname": "download_materials_required",
    "fieldtype": "Button",
-   "label": "Download Required Materials"
+   "label": "Download Materials Request Plan"
   },
   {
    "fieldname": "get_items_for_mr",
    "fieldtype": "Button",
-   "label": "Get Raw Materials For Production"
+   "label": "Get Raw Materials for Purchase"
   },
   {
    "fieldname": "section_break_27",
@@ -304,7 +306,7 @@
   {
    "fieldname": "for_warehouse",
    "fieldtype": "Link",
-   "label": "Make Material Request for Warehouse",
+   "label": "Raw Materials Warehouse",
    "options": "Warehouse"
   },
   {
@@ -378,13 +380,24 @@
    "fieldname": "combine_sub_items",
    "fieldtype": "Check",
    "label": "Consolidate Sub Assembly Items"
+  },
+  {
+   "fieldname": "transfer_materials",
+   "fieldtype": "Button",
+   "label": "Get Raw Materials for Transfer"
+  },
+  {
+   "collapsible": 1,
+   "fieldname": "download_materials_request_plan_section_section",
+   "fieldtype": "Section Break",
+   "label": "Download Materials Request Plan Section"
   }
  ],
  "icon": "fa fa-calendar",
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-03-25 09:15:25.017664",
+ "modified": "2022-11-26 14:51:08.774372",
  "modified_by": "Administrator",
  "module": "Manufacturing",
  "name": "Production Plan",
diff --git a/erpnext/manufacturing/doctype/production_plan/production_plan.py b/erpnext/manufacturing/doctype/production_plan/production_plan.py
index caff0a3..1eb82a5 100644
--- a/erpnext/manufacturing/doctype/production_plan/production_plan.py
+++ b/erpnext/manufacturing/doctype/production_plan/production_plan.py
@@ -312,6 +312,9 @@
 	def add_items(self, items):
 		refs = {}
 		for data in items:
+			if not data.pending_qty:
+				continue
+
 			item_details = get_item_details(data.item_code)
 			if self.combine_items:
 				if item_details.bom_no in refs:
diff --git a/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json b/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json
index df5862f..0688278 100644
--- a/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json
+++ b/erpnext/manufacturing/doctype/production_plan_item/production_plan_item.json
@@ -83,7 +83,7 @@
    "fieldname": "warehouse",
    "fieldtype": "Link",
    "in_list_view": 1,
-   "label": "For Warehouse",
+   "label": "FG Warehouse",
    "options": "Warehouse"
   },
   {
@@ -216,7 +216,7 @@
  "idx": 1,
  "istable": 1,
  "links": [],
- "modified": "2022-03-24 04:54:09.940224",
+ "modified": "2022-11-25 14:15:40.061514",
  "modified_by": "Administrator",
  "module": "Manufacturing",
  "name": "Production Plan Item",
diff --git a/erpnext/manufacturing/report/job_card_summary/job_card_summary.js b/erpnext/manufacturing/report/job_card_summary/job_card_summary.js
index cb771e4..782ce81 100644
--- a/erpnext/manufacturing/report/job_card_summary/job_card_summary.js
+++ b/erpnext/manufacturing/report/job_card_summary/job_card_summary.js
@@ -54,11 +54,11 @@
 			options: ["", "Open", "Work In Progress", "Completed", "On Hold"]
 		},
 		{
-			label: __("Sales Orders"),
-			fieldname: "sales_order",
+			label: __("Work Orders"),
+			fieldname: "work_order",
 			fieldtype: "MultiSelectList",
 			get_data: function(txt) {
-				return frappe.db.get_link_options('Sales Order', txt);
+				return frappe.db.get_link_options('Work Order', txt);
 			}
 		},
 		{
diff --git a/erpnext/manufacturing/report/job_card_summary/job_card_summary.py b/erpnext/manufacturing/report/job_card_summary/job_card_summary.py
index 63c2d97..8d72ef1 100644
--- a/erpnext/manufacturing/report/job_card_summary/job_card_summary.py
+++ b/erpnext/manufacturing/report/job_card_summary/job_card_summary.py
@@ -36,10 +36,14 @@
 		"total_time_in_mins",
 	]
 
-	for field in ["work_order", "workstation", "operation", "status", "company"]:
+	for field in ["work_order", "production_item"]:
 		if filters.get(field):
 			query_filters[field] = ("in", filters.get(field))
 
+	for field in ["workstation", "operation", "status", "company"]:
+		if filters.get(field):
+			query_filters[field] = filters.get(field)
+
 	data = frappe.get_all("Job Card", fields=fields, filters=query_filters)
 
 	if not data:
diff --git a/erpnext/manufacturing/report/work_order_summary/work_order_summary.py b/erpnext/manufacturing/report/work_order_summary/work_order_summary.py
index 41ffcbb..b69ad07 100644
--- a/erpnext/manufacturing/report/work_order_summary/work_order_summary.py
+++ b/erpnext/manufacturing/report/work_order_summary/work_order_summary.py
@@ -39,10 +39,14 @@
 		"lead_time",
 	]
 
-	for field in ["sales_order", "production_item", "status", "company"]:
+	for field in ["sales_order", "production_item"]:
 		if filters.get(field):
 			query_filters[field] = ("in", filters.get(field))
 
+	for field in ["status", "company"]:
+		if filters.get(field):
+			query_filters[field] = filters.get(field)
+
 	query_filters["planned_start_date"] = (">=", filters.get("from_date"))
 	query_filters["planned_end_date"] = ("<=", filters.get("to_date"))
 
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 2624181..166faf9 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -169,7 +169,6 @@
 execute:frappe.delete_doc_if_exists("DocType", "Bank Reconciliation")
 execute:frappe.reload_doc("regional", "doctype", "e_invoice_settings")
 erpnext.patches.v13_0.loyalty_points_entry_for_pos_invoice #22-07-2020
-erpnext.patches.v12_0.add_taxjar_integration_field
 erpnext.patches.v12_0.fix_percent_complete_for_projects
 erpnext.patches.v13_0.delete_report_requested_items_to_order
 erpnext.patches.v12_0.update_item_tax_template_company
@@ -228,7 +227,6 @@
 erpnext.patches.v13_0.reset_clearance_date_for_intracompany_payment_entries
 execute:frappe.reload_doc("erpnext_integrations", "doctype", "TaxJar Settings")
 execute:frappe.reload_doc("erpnext_integrations", "doctype", "Product Tax Category")
-erpnext.patches.v13_0.custom_fields_for_taxjar_integration          #08-11-2021
 erpnext.patches.v13_0.set_operation_time_based_on_operating_cost
 erpnext.patches.v13_0.create_gst_payment_entry_fields #27-11-2021
 erpnext.patches.v13_0.fix_invoice_statuses
@@ -269,6 +267,7 @@
 erpnext.patches.v13_0.show_hr_payroll_deprecation_warning
 erpnext.patches.v13_0.reset_corrupt_defaults
 erpnext.patches.v13_0.create_accounting_dimensions_for_asset_repair
+erpnext.patches.v15_0.delete_taxjar_doctypes
 
 [post_model_sync]
 execute:frappe.delete_doc_if_exists('Workspace', 'ERPNext Integrations Settings')
@@ -317,4 +316,5 @@
 erpnext.patches.v14_0.migrate_remarks_from_gl_to_payment_ledger
 erpnext.patches.v13_0.update_schedule_type_in_loans
 erpnext.patches.v14_0.create_accounting_dimensions_for_asset_capitalization
-erpnext.patches.v14_0.update_tds_fields
+erpnext.patches.v14_0.update_partial_tds_fields
+erpnext.patches.v14_0.create_incoterms_and_migrate_shipment
diff --git a/erpnext/patches/v12_0/add_taxjar_integration_field.py b/erpnext/patches/v12_0/add_taxjar_integration_field.py
deleted file mode 100644
index 9217384..0000000
--- a/erpnext/patches/v12_0/add_taxjar_integration_field.py
+++ /dev/null
@@ -1,11 +0,0 @@
-import frappe
-
-from erpnext.regional.united_states.setup import make_custom_fields
-
-
-def execute():
-	company = frappe.get_all("Company", filters={"country": "United States"})
-	if not company:
-		return
-
-	make_custom_fields()
diff --git a/erpnext/patches/v13_0/custom_fields_for_taxjar_integration.py b/erpnext/patches/v13_0/custom_fields_for_taxjar_integration.py
deleted file mode 100644
index 5cbd0b5..0000000
--- a/erpnext/patches/v13_0/custom_fields_for_taxjar_integration.py
+++ /dev/null
@@ -1,72 +0,0 @@
-import frappe
-from frappe.custom.doctype.custom_field.custom_field import create_custom_fields
-
-from erpnext.erpnext_integrations.doctype.taxjar_settings.taxjar_settings import add_permissions
-
-
-def execute():
-	company = frappe.get_all("Company", filters={"country": "United States"}, fields=["name"])
-	if not company:
-		return
-
-	TAXJAR_CREATE_TRANSACTIONS = frappe.db.get_single_value(
-		"TaxJar Settings", "taxjar_create_transactions"
-	)
-	TAXJAR_CALCULATE_TAX = frappe.db.get_single_value("TaxJar Settings", "taxjar_calculate_tax")
-	TAXJAR_SANDBOX_MODE = frappe.db.get_single_value("TaxJar Settings", "is_sandbox")
-
-	if not TAXJAR_CREATE_TRANSACTIONS and not TAXJAR_CALCULATE_TAX and not TAXJAR_SANDBOX_MODE:
-		return
-
-	custom_fields = {
-		"Sales Invoice Item": [
-			dict(
-				fieldname="product_tax_category",
-				fieldtype="Link",
-				insert_after="description",
-				options="Product Tax Category",
-				label="Product Tax Category",
-				fetch_from="item_code.product_tax_category",
-			),
-			dict(
-				fieldname="tax_collectable",
-				fieldtype="Currency",
-				insert_after="net_amount",
-				label="Tax Collectable",
-				read_only=1,
-				options="currency",
-			),
-			dict(
-				fieldname="taxable_amount",
-				fieldtype="Currency",
-				insert_after="tax_collectable",
-				label="Taxable Amount",
-				read_only=1,
-				options="currency",
-			),
-		],
-		"Item": [
-			dict(
-				fieldname="product_tax_category",
-				fieldtype="Link",
-				insert_after="item_group",
-				options="Product Tax Category",
-				label="Product Tax Category",
-			)
-		],
-		"TaxJar Settings": [
-			dict(
-				fieldname="company",
-				fieldtype="Link",
-				insert_after="configuration",
-				options="Company",
-				label="Company",
-			)
-		],
-	}
-	create_custom_fields(custom_fields, update=True)
-	add_permissions()
-	frappe.enqueue(
-		"erpnext.erpnext_integrations.doctype.taxjar_settings.taxjar_settings.add_product_tax_categories",
-		now=True,
-	)
diff --git a/erpnext/patches/v14_0/create_incoterms_and_migrate_shipment.py b/erpnext/patches/v14_0/create_incoterms_and_migrate_shipment.py
new file mode 100644
index 0000000..6e1e09a
--- /dev/null
+++ b/erpnext/patches/v14_0/create_incoterms_and_migrate_shipment.py
@@ -0,0 +1,31 @@
+import frappe
+
+from erpnext.setup.doctype.incoterm.incoterm import create_incoterms
+
+
+def execute():
+	create_incoterms()
+	migrate_shipments()
+
+
+def migrate_shipments():
+	if not frappe.db.count("Shipment"):
+		return
+
+	OLD_VALUES = [
+		"EXW (Ex Works)",
+		"FCA (Free Carrier)",
+		"FOB (Free On Board)",
+		"FAS (Free Alongside Ship)",
+		"CPT (Carriage Paid To)",
+		"CIP (Carriage and Insurance Paid to)",
+		"CFR (Cost and Freight)",
+		"DPU (Delivered At Place Unloaded)",
+		"DAP (Delivered At Place)",
+		"DDP (Delivered Duty Paid)",
+	]
+	shipment = frappe.qb.DocType("Shipment")
+	for old_value in OLD_VALUES:
+		frappe.qb.update(shipment).set(shipment.incoterm, old_value[:3]).where(
+			shipment.incoterm == old_value
+		).run()
diff --git a/erpnext/patches/v14_0/update_tds_fields.py b/erpnext/patches/v14_0/update_partial_tds_fields.py
similarity index 64%
rename from erpnext/patches/v14_0/update_tds_fields.py
rename to erpnext/patches/v14_0/update_partial_tds_fields.py
index a333c5d..5ccc2dc 100644
--- a/erpnext/patches/v14_0/update_tds_fields.py
+++ b/erpnext/patches/v14_0/update_partial_tds_fields.py
@@ -25,5 +25,21 @@
 			).where(
 				purchase_invoice.docstatus == 1
 			).run()
+
+			purchase_order = frappe.qb.DocType("Purchase Order")
+
+			frappe.qb.update(purchase_order).set(
+				purchase_order.tax_withholding_net_total, purchase_order.net_total
+			).set(
+				purchase_order.base_tax_withholding_net_total, purchase_order.base_net_total
+			).where(
+				purchase_order.company == company.name
+			).where(
+				purchase_order.apply_tds == 1
+			).where(
+				purchase_order.transaction_date >= fiscal_year_details.year_start_date
+			).where(
+				purchase_order.docstatus == 1
+			).run()
 		except FiscalYearError:
 			pass
diff --git a/erpnext/patches/v15_0/delete_taxjar_doctypes.py b/erpnext/patches/v15_0/delete_taxjar_doctypes.py
new file mode 100644
index 0000000..13adf41
--- /dev/null
+++ b/erpnext/patches/v15_0/delete_taxjar_doctypes.py
@@ -0,0 +1,17 @@
+import click
+import frappe
+
+
+def execute():
+	if "taxjar_integration" in frappe.get_installed_apps():
+		return
+
+	doctypes = ["TaxJar Settings", "TaxJar Nexus", "Product Tax Category"]
+	for doctype in doctypes:
+		frappe.delete_doc("DocType", doctype, ignore_missing=True)
+
+	click.secho(
+		"Taxjar Integration is moved to a separate app"
+		"Please install the app to continue using the module: https://github.com/frappe/taxjar_integration",
+		fg="yellow",
+	)
diff --git a/erpnext/public/js/projects/timer.js b/erpnext/public/js/projects/timer.js
index 0e5c0d3..9dae711 100644
--- a/erpnext/public/js/projects/timer.js
+++ b/erpnext/public/js/projects/timer.js
@@ -48,21 +48,23 @@
 	var $btn_complete = dialog.$wrapper.find(".playpause .btn-complete");
 	var interval = null;
 	var currentIncrement = timestamp;
-	var initialised = row ? true : false;
+	var initialized = row ? true : false;
 	var clicked = false;
 	var flag = true; // Alert only once
 	// If row with not completed status, initialize timer with the time elapsed on click of 'Start Timer'.
 	if (row) {
-		initialised = true;
+		initialized = true;
 		$btn_start.hide();
 		$btn_complete.show();
-		initialiseTimer();
+		initializeTimer();
 	}
-	if (!initialised) {
+
+	if (!initialized) {
 		$btn_complete.hide();
 	}
+
 	$btn_start.click(function(e) {
-		if (!initialised) {
+		if (!initialized) {
 			// New activity if no activities found
 			var args = dialog.get_values();
 			if(!args) return;
@@ -90,11 +92,11 @@
 			return false;
 		}
 
-		if (!initialised) {
-			initialised = true;
+		if (!initialized) {
+			initialized = true;
 			$btn_start.hide();
 			$btn_complete.show();
-			initialiseTimer();
+			initializeTimer();
 		}
 	});
 
@@ -110,11 +112,13 @@
 		grid_row.doc.hours = currentIncrement / 3600;
 		grid_row.doc.to_time = frappe.datetime.now_datetime();
 		grid_row.refresh();
+		frm.dirty();
 		frm.save();
 		reset();
 		dialog.hide();
 	});
-	function initialiseTimer() {
+
+	function initializeTimer() {
 		interval = setInterval(function() {
 			var current = setCurrentIncrement();
 			updateStopwatch(current);
@@ -151,7 +155,7 @@
 
 	function reset() {
 		currentIncrement = 0;
-		initialised = false;
+		initialized = false;
 		clearInterval(interval);
 		$(".hours").text("00");
 		$(".minutes").text("00");
diff --git a/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py b/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py
index 34701c1..c52685e 100644
--- a/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py
+++ b/erpnext/regional/doctype/import_supplier_invoice/import_supplier_invoice.py
@@ -146,7 +146,9 @@
 
 	def publish(self, title, message, count, total):
 		frappe.publish_realtime(
-			"import_invoice_update", {"title": title, "message": message, "count": count, "total": total}
+			"import_invoice_update",
+			{"title": title, "message": message, "count": count, "total": total},
+			user=self.modified_by,
 		)
 
 
diff --git a/erpnext/regional/doctype/product_tax_category/__init__.py b/erpnext/regional/doctype/product_tax_category/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/erpnext/regional/doctype/product_tax_category/__init__.py
+++ /dev/null
diff --git a/erpnext/regional/doctype/product_tax_category/product_tax_category.js b/erpnext/regional/doctype/product_tax_category/product_tax_category.js
deleted file mode 100644
index 9f8e795..0000000
--- a/erpnext/regional/doctype/product_tax_category/product_tax_category.js
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright (c) 2021, Frappe Technologies Pvt. Ltd. and contributors
-// For license information, please see license.txt
-
-frappe.ui.form.on('Product Tax Category', {
-	// refresh: function(frm) {
-
-	// }
-});
diff --git a/erpnext/regional/doctype/product_tax_category/product_tax_category.json b/erpnext/regional/doctype/product_tax_category/product_tax_category.json
deleted file mode 100644
index 147cb34..0000000
--- a/erpnext/regional/doctype/product_tax_category/product_tax_category.json
+++ /dev/null
@@ -1,70 +0,0 @@
-{
- "actions": [],
- "autoname": "field:product_tax_code",
- "creation": "2021-08-23 12:33:37.910225",
- "doctype": "DocType",
- "editable_grid": 1,
- "engine": "InnoDB",
- "field_order": [
-  "product_tax_code",
-  "column_break_2",
-  "category_name",
-  "section_break_4",
-  "description"
- ],
- "fields": [
-  {
-   "fieldname": "product_tax_code",
-   "fieldtype": "Data",
-   "in_list_view": 1,
-   "label": "Product Tax Code",
-   "reqd": 1,
-   "unique": 1
-  },
-  {
-   "fieldname": "description",
-   "fieldtype": "Small Text",
-   "label": "Description"
-  },
-  {
-   "fieldname": "category_name",
-   "fieldtype": "Data",
-   "label": "Category Name",
-   "length": 255
-  },
-  {
-   "fieldname": "column_break_2",
-   "fieldtype": "Column Break"
-  },
-  {
-   "fieldname": "section_break_4",
-   "fieldtype": "Section Break"
-  }
- ],
- "index_web_pages_for_search": 1,
- "links": [],
- "modified": "2021-08-24 09:10:25.313642",
- "modified_by": "Administrator",
- "module": "Regional",
- "name": "Product Tax Category",
- "owner": "Administrator",
- "permissions": [
-  {
-   "create": 1,
-   "delete": 1,
-   "email": 1,
-   "export": 1,
-   "print": 1,
-   "read": 1,
-   "report": 1,
-   "role": "System Manager",
-   "share": 1,
-   "write": 1
-  }
- ],
- "quick_entry": 1,
- "sort_field": "modified",
- "sort_order": "DESC",
- "title_field": "category_name",
- "track_changes": 1
-}
\ No newline at end of file
diff --git a/erpnext/regional/doctype/product_tax_category/product_tax_category.py b/erpnext/regional/doctype/product_tax_category/product_tax_category.py
deleted file mode 100644
index b6be9e0..0000000
--- a/erpnext/regional/doctype/product_tax_category/product_tax_category.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2021, Frappe Technologies Pvt. Ltd. and contributors
-# For license information, please see license.txt
-
-# import frappe
-from frappe.model.document import Document
-
-
-class ProductTaxCategory(Document):
-	pass
diff --git a/erpnext/regional/doctype/product_tax_category/test_product_tax_category.py b/erpnext/regional/doctype/product_tax_category/test_product_tax_category.py
deleted file mode 100644
index 2668f23..0000000
--- a/erpnext/regional/doctype/product_tax_category/test_product_tax_category.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2021, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-# import frappe
-import unittest
-
-
-class TestProductTaxCategory(unittest.TestCase):
-	pass
diff --git a/erpnext/regional/united_states/setup.py b/erpnext/regional/united_states/setup.py
index 47f24ef..808bbb1 100644
--- a/erpnext/regional/united_states/setup.py
+++ b/erpnext/regional/united_states/setup.py
@@ -2,9 +2,6 @@
 # License: GNU General Public License v3. See license.txt
 
 import frappe
-import os
-import json
-from frappe.permissions import add_permission, update_permission_property
 from frappe.custom.doctype.custom_field.custom_field import create_custom_fields
 
 
diff --git a/erpnext/selling/doctype/quotation/quotation.json b/erpnext/selling/doctype/quotation/quotation.json
index fa64b16..08918f4 100644
--- a/erpnext/selling/doctype/quotation/quotation.json
+++ b/erpnext/selling/doctype/quotation/quotation.json
@@ -48,6 +48,7 @@
   "tax_category",
   "column_break_34",
   "shipping_rule",
+  "incoterm",
   "section_break_36",
   "taxes",
   "section_break_39",
@@ -1052,13 +1053,19 @@
   {
    "fieldname": "column_break_108",
    "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-shopping-cart",
  "idx": 82,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-10-11 13:06:33.479650",
+ "modified": "2022-11-17 17:20:54.984348",
  "modified_by": "Administrator",
  "module": "Selling",
  "name": "Quotation",
diff --git a/erpnext/selling/doctype/sales_order/sales_order.json b/erpnext/selling/doctype/sales_order/sales_order.json
index e6ff39d..9ec32cb 100644
--- a/erpnext/selling/doctype/sales_order/sales_order.json
+++ b/erpnext/selling/doctype/sales_order/sales_order.json
@@ -63,6 +63,7 @@
   "tax_category",
   "column_break_49",
   "shipping_rule",
+  "incoterm",
   "section_break_40",
   "taxes",
   "section_break_43",
@@ -1623,13 +1624,19 @@
   {
    "fieldname": "column_break_152",
    "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-file-text",
  "idx": 105,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-10-11 13:06:10.469796",
+ "modified": "2022-11-17 17:22:00.413878",
  "modified_by": "Administrator",
  "module": "Selling",
  "name": "Sales Order",
diff --git a/erpnext/erpnext_integrations/doctype/taxjar_nexus/__init__.py b/erpnext/setup/doctype/incoterm/__init__.py
similarity index 100%
rename from erpnext/erpnext_integrations/doctype/taxjar_nexus/__init__.py
rename to erpnext/setup/doctype/incoterm/__init__.py
diff --git a/erpnext/setup/doctype/incoterm/incoterm.js b/erpnext/setup/doctype/incoterm/incoterm.js
new file mode 100644
index 0000000..bc65123
--- /dev/null
+++ b/erpnext/setup/doctype/incoterm/incoterm.js
@@ -0,0 +1,8 @@
+// Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+
+// frappe.ui.form.on("Incoterm", {
+// 	refresh(frm) {
+
+// 	},
+// });
diff --git a/erpnext/setup/doctype/incoterm/incoterm.json b/erpnext/setup/doctype/incoterm/incoterm.json
new file mode 100644
index 0000000..c547b7c
--- /dev/null
+++ b/erpnext/setup/doctype/incoterm/incoterm.json
@@ -0,0 +1,168 @@
+{
+ "actions": [],
+ "allow_rename": 1,
+ "autoname": "field:code",
+ "creation": "2022-11-17 15:17:34.717467",
+ "default_view": "List",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "code",
+  "title",
+  "description"
+ ],
+ "fields": [
+  {
+   "fieldname": "code",
+   "fieldtype": "Data",
+   "in_list_view": 1,
+   "label": "Code",
+   "length": 3,
+   "reqd": 1,
+   "unique": 1
+  },
+  {
+   "fieldname": "title",
+   "fieldtype": "Data",
+   "in_list_view": 1,
+   "label": "Title",
+   "reqd": 1
+  },
+  {
+   "fieldname": "description",
+   "fieldtype": "Long Text",
+   "label": "Description"
+  }
+ ],
+ "links": [
+  {
+   "group": "Selling",
+   "link_doctype": "Quotation",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Selling",
+   "link_doctype": "Sales Order",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Buying",
+   "link_doctype": "Request for Quotation",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Buying",
+   "link_doctype": "Supplier Quotation",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Buying",
+   "link_doctype": "Purchase Order",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Stock",
+   "link_doctype": "Delivery Note",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Stock",
+   "link_doctype": "Purchase Receipt",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Stock",
+   "link_doctype": "Shipment",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Accounts",
+   "link_doctype": "Sales Invoice",
+   "link_fieldname": "incoterm"
+  },
+  {
+   "group": "Accounts",
+   "link_doctype": "Purchase Invoice",
+   "link_fieldname": "incoterm"
+  }
+ ],
+ "modified": "2022-11-17 22:35:52.084553",
+ "modified_by": "Administrator",
+ "module": "Setup",
+ "name": "Incoterm",
+ "naming_rule": "By fieldname",
+ "owner": "Administrator",
+ "permissions": [
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Accounts Manager",
+   "share": 1,
+   "write": 1
+  },
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Sales Manager",
+   "share": 1,
+   "write": 1
+  },
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Purchase Manager",
+   "share": 1,
+   "write": 1
+  },
+  {
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Stock Manager",
+   "share": 1,
+   "write": 1
+  },
+  {
+   "read": 1,
+   "role": "Purchase User"
+  },
+  {
+   "read": 1,
+   "role": "Sales User"
+  },
+  {
+   "read": 1,
+   "role": "Accounts User"
+  },
+  {
+   "read": 1,
+   "role": "Stock User"
+  }
+ ],
+ "show_title_field_in_link": 1,
+ "sort_field": "name",
+ "sort_order": "ASC",
+ "states": [],
+ "title_field": "title",
+ "translated_doctype": 1
+}
\ No newline at end of file
diff --git a/erpnext/setup/doctype/incoterm/incoterm.py b/erpnext/setup/doctype/incoterm/incoterm.py
new file mode 100644
index 0000000..7e2e622
--- /dev/null
+++ b/erpnext/setup/doctype/incoterm/incoterm.py
@@ -0,0 +1,24 @@
+# Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and contributors
+# For license information, please see license.txt
+
+import frappe
+from frappe.model.document import Document
+
+
+class Incoterm(Document):
+	pass
+
+
+def create_incoterms():
+	"""Create Incoterm records from incoterms.csv."""
+	import os
+	from csv import DictReader
+
+	with open(os.path.join(os.path.dirname(__file__), "incoterms.csv"), "r") as f:
+		for incoterm in DictReader(f):
+			if frappe.db.exists("Incoterm", incoterm["code"]):
+				continue
+
+			doc = frappe.new_doc("Incoterm")
+			doc.update(incoterm)
+			doc.save()
diff --git a/erpnext/setup/doctype/incoterm/incoterms.csv b/erpnext/setup/doctype/incoterm/incoterms.csv
new file mode 100644
index 0000000..af532cf
--- /dev/null
+++ b/erpnext/setup/doctype/incoterm/incoterms.csv
@@ -0,0 +1,12 @@
+code,title
+EXW,Ex Works
+FCA,Free Carrier
+FAS,Free Alongside Ship
+FOB,Free On Board
+CPT,Carriage Paid To
+CIP,Carriage and Insurance Paid to
+CFR,Cost and Freight
+CIF,"Cost, Insurance and Freight"
+DAP,Delivered At Place
+DPU,Delivered At Place Unloaded
+DDP,Delivered Duty Paid
diff --git a/erpnext/setup/doctype/incoterm/test_incoterm.py b/erpnext/setup/doctype/incoterm/test_incoterm.py
new file mode 100644
index 0000000..06b8c3b
--- /dev/null
+++ b/erpnext/setup/doctype/incoterm/test_incoterm.py
@@ -0,0 +1,9 @@
+# Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and Contributors
+# See license.txt
+
+# import frappe
+from frappe.tests.utils import FrappeTestCase
+
+
+class TestIncoterm(FrappeTestCase):
+	pass
diff --git a/erpnext/setup/install.py b/erpnext/setup/install.py
index 2076dde..d3b47f9 100644
--- a/erpnext/setup/install.py
+++ b/erpnext/setup/install.py
@@ -10,6 +10,7 @@
 
 from erpnext.accounts.doctype.cash_flow_mapper.default_cash_flow_mapper import DEFAULT_MAPPERS
 from erpnext.setup.default_energy_point_rules import get_default_energy_point_rules
+from erpnext.setup.doctype.incoterm.incoterm import create_incoterms
 
 from .default_success_action import get_default_success_action
 
@@ -25,6 +26,7 @@
 	create_default_cash_flow_mapper_templates()
 	create_default_success_action()
 	create_default_energy_point_rules()
+	create_incoterms()
 	add_company_to_session_defaults()
 	add_standard_navbar_items()
 	add_app_name()
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.json b/erpnext/stock/doctype/delivery_note/delivery_note.json
index 0ca3e69..80e4bcb 100644
--- a/erpnext/stock/doctype/delivery_note/delivery_note.json
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.json
@@ -62,6 +62,7 @@
   "tax_category",
   "column_break_39",
   "shipping_rule",
+  "incoterm",
   "section_break_41",
   "taxes",
   "section_break_44",
@@ -1381,13 +1382,19 @@
   {
    "fieldname": "column_break_18",
    "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-truck",
  "idx": 146,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-10-11 13:06:58.655635",
+ "modified": "2022-11-17 17:22:42.860790",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Delivery Note",
diff --git a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js
index 79e7895..ba1023a 100644
--- a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js
+++ b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.js
@@ -71,6 +71,8 @@
 					if (r.message && r.message.length) {
 						frm.set_df_property("fetch_from_parent", "options",
 							[""].concat(r.message));
+					} else {
+						frm.set_df_property("fetch_from_parent", "hidden", 1);
 					}
 				}
 			});
diff --git a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json
index 09f4f63..4397e11 100644
--- a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json
+++ b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.json
@@ -11,20 +11,20 @@
   "reference_document",
   "column_break_4",
   "disabled",
-  "section_break_7",
   "field_mapping_section",
   "source_fieldname",
   "column_break_9",
   "target_fieldname",
   "applicable_for_documents_tab",
   "apply_to_all_doctypes",
+  "column_break_13",
   "document_type",
-  "istable",
   "type_of_transaction",
   "fetch_from_parent",
-  "column_break_16",
-  "condition",
+  "istable",
   "applicable_condition_example_section",
+  "condition",
+  "conditional_rule_examples_section",
   "html_19"
  ],
  "fields": [
@@ -52,13 +52,13 @@
   {
    "fieldname": "applicable_for_documents_tab",
    "fieldtype": "Tab Break",
-   "label": "Applicable For Documents"
+   "label": "Applicable For"
   },
   {
    "depends_on": "eval:!doc.apply_to_all_doctypes",
    "fieldname": "document_type",
    "fieldtype": "Link",
-   "label": "Applicable to Document",
+   "label": "Apply to Document",
    "mandatory_depends_on": "eval:!doc.apply_to_all_doctypes",
    "options": "DocType"
   },
@@ -72,6 +72,7 @@
    "fetch_from": "document_type.istable",
    "fieldname": "istable",
    "fieldtype": "Check",
+   "hidden": 1,
    "label": " Is Child Table",
    "read_only": 1
   },
@@ -79,13 +80,13 @@
    "depends_on": "eval:!doc.apply_to_all_doctypes",
    "fieldname": "condition",
    "fieldtype": "Code",
-   "label": "Applicable Condition"
+   "label": "Conditional Rule"
   },
   {
-   "default": "0",
+   "default": "1",
    "fieldname": "apply_to_all_doctypes",
    "fieldtype": "Check",
-   "label": "Apply to All Inventory Document Types"
+   "label": "Apply to All Inventory Documents"
   },
   {
    "default": "0",
@@ -94,10 +95,6 @@
    "label": "Disabled"
   },
   {
-   "fieldname": "section_break_7",
-   "fieldtype": "Section Break"
-  },
-  {
    "fieldname": "target_fieldname",
    "fieldtype": "Data",
    "label": "Target Fieldname (Stock Ledger Entry)",
@@ -115,13 +112,11 @@
    "collapsible": 1,
    "fieldname": "field_mapping_section",
    "fieldtype": "Section Break",
+   "hidden": 1,
    "label": "Field Mapping"
   },
   {
-   "fieldname": "column_break_16",
-   "fieldtype": "Column Break"
-  },
-  {
+   "depends_on": "eval:!doc.apply_to_all_doctypes",
    "fieldname": "type_of_transaction",
    "fieldtype": "Select",
    "label": "Type of Transaction",
@@ -136,23 +131,33 @@
    "collapsible": 1,
    "depends_on": "eval:!doc.apply_to_all_doctypes",
    "fieldname": "applicable_condition_example_section",
-   "fieldtype": "Section Break",
-   "label": "Applicable Condition Examples"
+   "fieldtype": "Column Break"
   },
   {
    "fieldname": "column_break_4",
    "fieldtype": "Column Break"
   },
   {
-   "description": "Set fieldname or DocType name like Supplier, Customer etc.",
+   "depends_on": "eval:!doc.apply_to_all_doctypes",
+   "description": "Set fieldname from which you want to fetch the data from the parent form.",
    "fieldname": "fetch_from_parent",
    "fieldtype": "Select",
-   "label": "Fetch Value From Parent Form"
+   "label": "Fetch Value From"
+  },
+  {
+   "fieldname": "column_break_13",
+   "fieldtype": "Section Break"
+  },
+  {
+   "depends_on": "eval:!doc.apply_to_all_doctypes",
+   "fieldname": "conditional_rule_examples_section",
+   "fieldtype": "Section Break",
+   "label": "Conditional Rule Examples"
   }
  ],
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2022-09-02 13:29:04.098469",
+ "modified": "2022-11-15 15:50:16.767105",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Inventory Dimension",
diff --git a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py
index 7b99b00..009548a 100644
--- a/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py
+++ b/erpnext/stock/doctype/inventory_dimension/inventory_dimension.py
@@ -33,10 +33,22 @@
 		)
 
 	def validate(self):
+		self.validate_reference_document()
+
+	def before_save(self):
 		self.do_not_update_document()
 		self.reset_value()
-		self.validate_reference_document()
 		self.set_source_and_target_fieldname()
+		self.set_type_of_transaction()
+		self.set_fetch_value_from()
+
+	def set_type_of_transaction(self):
+		if self.apply_to_all_doctypes:
+			self.type_of_transaction = "Both"
+
+	def set_fetch_value_from(self):
+		if self.apply_to_all_doctypes:
+			self.fetch_from_parent = self.reference_document
 
 	def do_not_update_document(self):
 		if self.is_new() or not self.has_stock_ledger():
diff --git a/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py b/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py
index 52b3deb..edff3fd 100644
--- a/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py
+++ b/erpnext/stock/doctype/inventory_dimension/test_inventory_dimension.py
@@ -140,14 +140,13 @@
 		self.assertRaises(DoNotChangeError, inv_dim1.save)
 
 	def test_inventory_dimension_for_purchase_receipt_and_delivery_note(self):
-		create_inventory_dimension(
-			reference_document="Rack",
-			type_of_transaction="Both",
-			dimension_name="Rack",
-			apply_to_all_doctypes=1,
-			fetch_from_parent="Rack",
+		inv_dimension = create_inventory_dimension(
+			reference_document="Rack", dimension_name="Rack", apply_to_all_doctypes=1
 		)
 
+		self.assertEqual(inv_dimension.type_of_transaction, "Both")
+		self.assertEqual(inv_dimension.fetch_from_parent, "Rack")
+
 		create_custom_field(
 			"Purchase Receipt", dict(fieldname="rack", label="Rack", fieldtype="Link", options="Rack")
 		)
diff --git a/erpnext/stock/doctype/item_price/item_price.json b/erpnext/stock/doctype/item_price/item_price.json
index 8c6f6d8..f4d9bb0 100644
--- a/erpnext/stock/doctype/item_price/item_price.json
+++ b/erpnext/stock/doctype/item_price/item_price.json
@@ -1,6 +1,7 @@
 {
  "actions": [],
  "allow_import": 1,
+ "autoname": "hash",
  "creation": "2013-05-02 16:29:48",
  "description": "Multiple Item prices.",
  "doctype": "DocType",
@@ -77,9 +78,10 @@
   {
    "fetch_from": "item_code.brand",
    "fieldname": "brand",
-   "fieldtype": "Read Only",
+   "fieldtype": "Link",
    "in_list_view": 1,
    "label": "Brand",
+   "options": "Brand",
    "read_only": 1
   },
   {
@@ -218,11 +220,11 @@
  "idx": 1,
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2022-09-02 16:33:55.612992",
+ "modified": "2022-11-15 08:26:04.041861",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Item Price",
- "name_case": "Title Case",
+ "naming_rule": "Random",
  "owner": "Administrator",
  "permissions": [
   {
diff --git a/erpnext/stock/doctype/material_request/material_request.js b/erpnext/stock/doctype/material_request/material_request.js
index e68b0ab..5f05de6 100644
--- a/erpnext/stock/doctype/material_request/material_request.js
+++ b/erpnext/stock/doctype/material_request/material_request.js
@@ -370,9 +370,6 @@
 		if (flt(d.qty) < flt(d.min_order_qty)) {
 			frappe.msgprint(__("Warning: Material Requested Qty is less than Minimum Order Qty"));
 		}
-
-		const item = locals[doctype][name];
-		frm.events.get_item_data(frm, item, false);
 	},
 
 	from_warehouse: function(frm, doctype, name) {
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json
index 3141212..ab91d7c 100755
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.json
@@ -63,6 +63,7 @@
   "tax_category",
   "column_break_53",
   "shipping_rule",
+  "incoterm",
   "taxes_section",
   "taxes",
   "totals",
@@ -1218,13 +1219,19 @@
   {
    "fieldname": "column_break_104",
    "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "incoterm",
+   "fieldtype": "Link",
+   "label": "Incoterm",
+   "options": "Incoterm"
   }
  ],
  "icon": "fa fa-truck",
  "idx": 261,
  "is_submittable": 1,
  "links": [],
- "modified": "2022-10-11 13:02:31.776256",
+ "modified": "2022-11-17 17:29:30.067536",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Purchase Receipt",
diff --git a/erpnext/stock/doctype/shipment/shipment.json b/erpnext/stock/doctype/shipment/shipment.json
index a33cbc2..53b549d 100644
--- a/erpnext/stock/doctype/shipment/shipment.json
+++ b/erpnext/stock/doctype/shipment/shipment.json
@@ -412,9 +412,9 @@
   },
   {
    "fieldname": "incoterm",
-   "fieldtype": "Select",
+   "fieldtype": "Link",
    "label": "Incoterm",
-   "options": "EXW (Ex Works)\nFCA (Free Carrier)\nCPT (Carriage Paid To)\nCIP (Carriage and Insurance Paid to)\nDPU (Delivered At Place Unloaded)\nDAP (Delivered At Place)\nDDP (Delivered Duty Paid)"
+   "options": "Incoterm"
   },
   {
    "fieldname": "shipment_delivery_note",
@@ -433,10 +433,11 @@
  ],
  "is_submittable": 1,
  "links": [],
- "modified": "2021-04-13 17:14:18.181818",
+ "modified": "2022-11-17 17:23:27.025802",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Shipment",
+ "naming_rule": "Expression (old style)",
  "owner": "Administrator",
  "permissions": [
   {
@@ -470,5 +471,6 @@
  ],
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
-}
+}
\ No newline at end of file
diff --git a/erpnext/stock/report/stock_ledger/stock_ledger.py b/erpnext/stock/report/stock_ledger/stock_ledger.py
index b725d49..8b63c0f 100644
--- a/erpnext/stock/report/stock_ledger/stock_ledger.py
+++ b/erpnext/stock/report/stock_ledger/stock_ledger.py
@@ -58,6 +58,12 @@
 		if sle.serial_no:
 			update_available_serial_nos(available_serial_nos, sle)
 
+		if sle.actual_qty:
+			sle["in_out_rate"] = flt(sle.stock_value_difference / sle.actual_qty, precision)
+
+		elif sle.voucher_type == "Stock Reconciliation":
+			sle["in_out_rate"] = sle.valuation_rate
+
 		data.append(sle)
 
 		if include_uom:
@@ -185,10 +191,18 @@
 				"convertible": "rate",
 			},
 			{
-				"label": _("Valuation Rate"),
+				"label": _("Avg Rate (Balance Stock)"),
 				"fieldname": "valuation_rate",
 				"fieldtype": "Currency",
-				"width": 110,
+				"width": 180,
+				"options": "Company:company:default_currency",
+				"convertible": "rate",
+			},
+			{
+				"label": _("Valuation Rate"),
+				"fieldname": "in_out_rate",
+				"fieldtype": "Currency",
+				"width": 140,
 				"options": "Company:company:default_currency",
 				"convertible": "rate",
 			},
diff --git a/erpnext/templates/includes/projects/project_tasks.html b/erpnext/templates/includes/projects/project_tasks.html
index 2b07a5f..4069d3d 100644
--- a/erpnext/templates/includes/projects/project_tasks.html
+++ b/erpnext/templates/includes/projects/project_tasks.html
@@ -1,5 +1,57 @@
+{% macro task_row(task, indent) %}
+<div class="row mt-5 {% if task.children %} font-weight-bold {% endif %}">
+  <div class="col-sm-4">
+    <a class="nav-link " style="color: inherit; {% if task.parent_task %} margin-left: {{ indent }}px {% endif %}"
+      href="/tasks/{{ task.name | urlencode }}">
+      {% if task.parent_task %}
+        <span class="">
+          <i class="fa fa-level-up fa-rotate-90"></i>
+        </span>
+      {% endif %}
+      {{ task.subject }}</a>
+  </div>
+  <div class="col-sm-2">{{ task.status }}</div>
+  <div class="col-sm-2 small text-muted">
+    {% if task.exp_end_date %}
+      {{ task.exp_end_date }}
+    {% else %}
+      --
+    {% endif %}
+  </div>
+  <div class="col-sm-2">
+    {% if task["_assign"] %}
+      {% set assigned_users = json.loads(task["_assign"])%}
+      {% for user in assigned_users %}
+        {% set user_details = frappe.db.get_value("User", user,
+		["full_name", "user_image"],
+		as_dict = True)%}
+        {% if user_details.user_image %}
+          <span class="avatar avatar-small" style="width:32px; height:32px;" title="{{ user_details.full_name }}">
+            <img src="{{ user_details.user_image }}">
+          </span>
+        {% else %}
+          <span class="avatar avatar-small" style="width:32px; height:32px;" title="{{ user_details.full_name }}">
+            <div class='standard-image' style='background-color: #F5F4F4; color: #000;'>
+              {{ frappe.utils.get_abbr(user_details.full_name) }}
+            </div>
+          </span>
+        {% endif %}
+      {% endfor %}
+    {% endif %}
+  </div>
+  <div class="col-xs-2 text-right small text-muted">
+    {{ frappe.utils.pretty_date(task.modified) }}
+  </div>
+</div>
+{% if task.children %}
+  {% for child in task.children %}
+    {{ task_row(child, indent + 30) }}
+  {% endfor %}
+{% endif %}
+{% endmacro %}
+
 {% for task in doc.tasks %}
   <div class="web-list-item transaction-list-item">
-    {{ task_row(task, 0) }}
+      {{ task_row(task, 0) }}
   </div>
-{% endfor %}
+{% endfor %}
\ No newline at end of file
diff --git a/erpnext/templates/pages/projects.html b/erpnext/templates/pages/projects.html
index 6d366c5..9fe4338 100644
--- a/erpnext/templates/pages/projects.html
+++ b/erpnext/templates/pages/projects.html
@@ -9,7 +9,7 @@
 {% endblock %}
 
 {% block header %}
-  <h1>{{ doc.project_name }}</h1>
+  <h3 class="my-account-header">{{ doc.project_name }}</h3>
 {% endblock %}
 
 {% block style %}
@@ -21,61 +21,62 @@
 {% endblock %}
 
 {% block page_content %}
-
-  {{ progress_bar(doc.percent_complete) }}
-
-  <div class="d-flex mt-5 mb-5 justify-content-between">
-    <h4>Status:</h4>
-    <h4>Progress:
-      <span>{{ doc.percent_complete }}
-        %</span>
-    </h4>
-    <h4>Hours Spent:
-      <span>{{ doc.actual_time }}</span>
-    </h4>
+  <div class="web-list-item transaction-list-item">
+    <div class="row align-items-center">
+      <div class="col-sm-4 "><b>Status: {{ doc.status }}</b></div>
+      <div class="col-sm-4 "><b>Progress: {{ doc.percent_complete }}%</b></div>
+      <div class="col-sm-4 "><b>Hours Spent: {{ doc.actual_time | round }}</b></div>
+    </div>
   </div>
 
   {{ progress_bar(doc.percent_complete) }}
 
-  {% if doc.tasks %}
-    <div class="website-list">
-      <div class="result">
-        <div class="web-list-item transaction-list-item">
-          <div class="row">
-            <h3 class="col-xs-4">Tasks</h3>
-            <h3 class="col-xs-2">Status</h3>
-            <h3 class="col-xs-2">End Date</h3>
-            <h3 class="col-xs-2">Assigned To</h3>
-            <div class="col-xs-2 text-right">
-              <a class="btn btn-secondary btn-light btn-sm" href='/tasks?new=1&project={{ doc.project_name }}'>{{ _("New task") }}</a>
-            </div>
-          </div>
-        </div>
-        {% include "erpnext/templates/includes/projects/project_tasks.html" %}
-      </div>
+  <hr>
+
+  <div class="row align-items-center">
+    <div class="col-sm-6 my-account-header"> <h4>Tasks</h4></div>
+    <div class="col-sm-6 text-right">
+      <a class="btn btn-secondary btn-light btn-sm" href='/tasks/new?project={{ doc.project_name }}'>{{ _("New task") }}</a>
     </div>
+  </div>
+  {% if doc.tasks %}
+  <div class="website-list">
+    <div class="result">
+      <div class="web-list-item transaction-list-item">
+        <div class="row align-items-center">
+          <div class="col-sm-4"><b>Tasks</b></div>
+          <div class="col-sm-2"><b>Status</b></div>
+          <div class="col-sm-2"><b>End Date</b></div>
+          <div class="col-sm-2"><b>Assignment</b></div>
+          <div class="col-sm-2"><b>Modified On</b></div>
+        </div>
+      </div>
+      {% include "erpnext/templates/includes/projects/project_tasks.html" %}
+    </div>
+  </div>
   {% else %}
-    <p class="font-weight-bold">{{ _("No Tasks") }}</p>
+    {{ empty_state('Task')}}
   {% endif %}
 
+  <h4 class="my-account-header">Timesheets</h4>
   {% if doc.timesheets %}
     <div class="website-list">
       <div class="result">
         <div class="web-list-item transaction-list-item">
-          <div class="row">
-            <h3 class="col-xs-2">Timesheets</h3>
-            <h3 class="col-xs-2">Status</h3>
-            <h3 class="col-xs-2">From</h3>
-            <h3 class="col-xs-2">To</h3>
-            <h3 class="col-xs-2">Modified By</h3>
-            <h3 class="col-xs-2 text-right">Modified On</h3>
+          <div class="row align-items-center">
+            <div class="col-xs-2"><b>Timesheet</b></div>
+            <div class="col-xs-2"><b>Status</b></div>
+            <div class="col-xs-2"><b>From</b></div>
+            <div class="col-xs-2"><b>To</b></div>
+            <div class="col-xs-2"><b>Modified By</b></div>
+            <div class="col-xs-2"><b>Modified On</b></div>
           </div>
         </div>
-        {% include "erpnext/templates/includes/projects/project_timesheets.html" %}
+      {% include "erpnext/templates/includes/projects/project_timesheets.html" %}
       </div>
     </div>
   {% else %}
-    <p class="font-weight-bold mt-5">{{ _("No Timesheets") }}</p>
+    {{ empty_state('Timesheet')}}
   {% endif %}
 
   {% if doc.attachments %}
@@ -104,70 +105,37 @@
 </div>
 
 <script>
-  { % include "frappe/public/js/frappe/provide.js" %
-  } { % include "frappe/public/js/frappe/form/formatters.js" %
-  }
-</script>
+  { % include "frappe/public/js/frappe/provide.js" % }
+  { % include "frappe/public/js/frappe/form/formatters.js" % }
+ </script>
 
 {% endblock %}
 
 {% macro progress_bar(percent_complete) %}
 {% if percent_complete %}
-  <div class="progress progress-hg" style="height: 5px;">
-    <div class="progress-bar progress-bar-{{ 'warning' if percent_complete|round < 100 else 'success' }} active" role="progressbar" aria-valuenow="{{ percent_complete|round|int }}" aria-valuemin="0" aria-valuemax="100" style="width:{{ percent_complete|round|int }}%;"></div>
+  <span class="small py-2">Project Progress:</span>
+  <div class="progress progress-hg" style="height: 15px;">
+    <div
+      class="progress-bar progress-bar-{{ 'warning' if percent_complete|round < 100 else 'success' }} active"\
+      role="progressbar" aria-valuenow="{{ percent_complete|round|int }}" aria-valuemin="0"\
+      aria-valuemax="100" style="width:{{ percent_complete|round|int }}%;">
+    </div>
   </div>
-{% else %}
-  <hr>
 {% endif %}
 {% endmacro %}
 
-{% macro task_row(task, indent) %}
-<div class="row mt-5 {% if task.children %} font-weight-bold {% endif %}">
-  <div class="col-xs-4">
-    <a class="nav-link " style="color: inherit; {% if task.parent_task %} margin-left: {{ indent }}px {% endif %}" href="/tasks?name={{ task.name | urlencode }}">
-      {% if task.parent_task %}
-        <span class="">
-          <i class="fa fa-level-up fa-rotate-90"></i>
-        </span>
-      {% endif %}
-      {{ task.subject }}</a>
+
+{% macro empty_state(section_name) %}
+<div class="frappe-list align-items-center">
+  <div class=" text-muted flex justify-center align-center" style="">
+    <div class=" text-muted flex text-center">
+      <div class="msg-box no-border">
+        <div>
+          <img src="/assets/frappe/images/ui-states/list-empty-state.svg" alt="Generic Empty State" class="null-state">
+        </div>
+        <p>You haven't created a {{ section_name }} yet</p>
+      </div>
+    </div>
   </div>
-  <div class="col-xs-2">{{ task.status }}</div>
-  <div class="col-xs-2">
-    {% if task.exp_end_date %}
-      {{ task.exp_end_date }}
-    {% else %}
-      --
-    {% endif %}
   </div>
-  <div class="col-xs-2">
-    {% if task["_assign"] %}
-      {% set assigned_users = json.loads(task["_assign"])%}
-      {% for user in assigned_users %}
-        {% set user_details = frappe.db.get_value("User", user,
-		["full_name", "user_image"],
-		as_dict = True)%}
-        {% if user_details.user_image %}
-          <span class="avatar avatar-small" style="width:32px; height:32px;" title="{{ user_details.full_name }}">
-            <img src="{{ user_details.user_image }}">
-          </span>
-        {% else %}
-          <span class="avatar avatar-small" style="width:32px; height:32px;" title="{{ user_details.full_name }}">
-            <div class='standard-image' style='background-color: #F5F4F4; color: #000;'>
-              {{ frappe.utils.get_abbr(user_details.full_name) }}
-            </div>
-          </span>
-        {% endif %}
-      {% endfor %}
-    {% endif %}
-  </div>
-  <div class="col-xs-2 text-right">
-    {{ frappe.utils.pretty_date(task.modified) }}
-  </div>
-</div>
-{% if task.children %}
-  {% for child in task.children %}
-    {{ task_row(child, indent + 30) }}
-  {% endfor %}
-{% endif %}
-{% endmacro %}
+{% endmacro %}
\ No newline at end of file
diff --git a/erpnext/translations/de.csv b/erpnext/translations/de.csv
index 0caea25..0fdd3c9 100644
--- a/erpnext/translations/de.csv
+++ b/erpnext/translations/de.csv
@@ -9903,3 +9903,14 @@
 Total Liability,Verbindlichkeiten,
 Total Equity,Eigenkapital,
 Warehouse wise Stock Value,Warenwert nach Lager,
+Ex Works,Ab Werk,
+Free Carrier,Frei Frachtführer,
+Free Alongside Ship,Frei Längsseite Schiff,
+Free on Board,Frei an Bord,
+Carriage Paid To,Frachtfrei,
+Carriage and Insurance Paid to,Frachtfrei versichert,
+Cost and Freight,Kosten und Fracht,
+"Cost, Insurance and Freight","Kosten, Versicherung und Fracht",
+Delivered at Place,Geliefert benannter Ort,
+Delivered at Place Unloaded,Geliefert benannter Ort entladen,
+Delivered Duty Paid,Geliefert verzollt,
diff --git a/pyproject.toml b/pyproject.toml
index c61f1a5..1b342a5 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -18,7 +18,6 @@
     "googlemaps",
     "plaid-python~=7.2.1",
     "python-youtube~=0.8.0",
-    "taxjar~=1.9.2",
     "tweepy~=3.10.0",
 
     # Not used directly - required by PyQRCode for PNG generation
