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 dc98db1..91db378 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
@@ -175,4 +175,22 @@
 			tree[child.account_name]["root_type"] = child.root_type
 			
 		# call recursively to build a subtree for current account
-		build_account_tree(tree[child.account_name], child, all_accounts)
\ No newline at end of file
+		build_account_tree(tree[child.account_name], child, all_accounts)
+
+@frappe.whitelist()
+def validate_bank_account(coa, bank_account):
+	accounts = []
+	chart = get_chart(coa)
+	
+	if chart:
+		def _get_account_names(account_master):
+			for account_name, child in account_master.items():
+				if account_name not in ["account_number", "account_type",
+					"root_type", "is_group", "tax_rate"]:
+					accounts.append(account_name)
+
+					_get_account_names(child)
+
+		_get_account_names(chart)
+
+	return (bank_account in accounts)
\ No newline at end of file
diff --git a/erpnext/public/js/setup_wizard.js b/erpnext/public/js/setup_wizard.js
index 2652f95..2e44857 100644
--- a/erpnext/public/js/setup_wizard.js
+++ b/erpnext/public/js/setup_wizard.js
@@ -137,11 +137,35 @@
 		},
 
 		validate: function () {
+			let me = this;
+			let exist;
+
 			// validate fiscal year start and end dates
 			if (this.values.fy_start_date == 'Invalid date' || this.values.fy_end_date == 'Invalid date') {
 				frappe.msgprint(__("Please enter valid Financial Year Start and End Dates"));
 				return false;
 			}
+
+			// Validate bank name
+			if(me.values.bank_account){
+				frappe.call({
+					async: false,
+					method: "erpnext.accounts.doctype.account.chart_of_accounts.chart_of_accounts.validate_bank_account",
+					args: {
+						"coa": me.values.chart_of_accounts,
+						"bank_account": me.values.bank_account
+					},
+					callback: function (r) {
+						if(r.message){
+							exist = r.message;
+							me.get_field("bank_account").set_value("");
+							frappe.msgprint(__(`Account ${me.values.bank_account} already exists, enter a different name for your bank account`));
+						}
+					}
+				});
+				return !exist; // Return False if exist = true
+			}
+
 			return true;
 		},
 
