diff --git a/erpnext/accounts/party.py b/erpnext/accounts/party.py
index 0df9dcb0683..38c69ca7eb9 100644
--- a/erpnext/accounts/party.py
+++ b/erpnext/accounts/party.py
@@ -765,7 +765,11 @@ def validate_account_party_type(self):
if self.party_type and self.party:
account_type = frappe.get_cached_value("Account", self.account, "account_type")
- if account_type and (account_type not in ["Receivable", "Payable"]):
+ if (
+ account_type
+ and (account_type not in ["Receivable", "Payable", "Equity"])
+ and self.party_type != "Shareholder"
+ ):
frappe.throw(
_(
"Party Type and Party can only be set for Receivable / Payable account
" "{0}"