diff --git a/modules/consensus/esbocs/dap_chain_cs_esbocs.c b/modules/consensus/esbocs/dap_chain_cs_esbocs.c
index 3ba6115c5f17c2b144681adbaa6a3025105bf5de..9be30e274b34018b2c7e7c3388d63baf5894c903 100644
--- a/modules/consensus/esbocs/dap_chain_cs_esbocs.c
+++ b/modules/consensus/esbocs/dap_chain_cs_esbocs.c
@@ -348,7 +348,7 @@ static dap_list_t *s_get_validators_list(dap_chain_esbocs_session_t *a_session,
     dap_list_t *l_ret = NULL;
 
     if (!l_esbocs_pvt->poa_mode) {
-        dap_list_t *l_validators = dap_chain_net_srv_stake_get_validators();
+        dap_list_t *l_validators = dap_chain_net_srv_stake_get_validators(a_session->chain->net_id);
         size_t l_validators_count = dap_list_length(l_validators);
         if (l_validators_count < l_esbocs_pvt->min_validators_count) {
             dap_list_free_full(l_validators, NULL);
diff --git a/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c b/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c
index 1f07e6d62802ac2e46db7ee42761c95acce806a5..e744a8f50d86382b9c9b73fd0c9d41fafd30dfc4 100644
--- a/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c
+++ b/modules/service/stake_pos_delegate/dap_chain_net_srv_stake_pos_delegate.c
@@ -208,14 +208,15 @@ bool dap_chain_net_srv_stake_key_delegated(dap_chain_addr_t *a_signing_addr)
     return false;
 }
 
-dap_list_t *dap_chain_net_srv_stake_get_validators()
+dap_list_t *dap_chain_net_srv_stake_get_validators(dap_chain_net_id_t a_net_id)
 {
     dap_list_t *l_ret = NULL;
     if (!s_srv_stake || !s_srv_stake->itemlist)
         return l_ret;
     dap_chain_net_srv_stake_item_t *l_stake, *l_tmp;
     HASH_ITER(hh, s_srv_stake->itemlist, l_stake, l_tmp)
-        l_ret = dap_list_append(l_ret, DAP_DUP(l_stake));
+        if (a_net_id.uint64 == l_stake->signing_addr.net_id.uint64)
+            l_ret = dap_list_append(l_ret, DAP_DUP(l_stake));
     return l_ret;
 }
 
diff --git a/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h b/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h
index 913d91fe7fb6e3000e7d75fc372bb1a306ce8631..9750aa74f01100e11b1ca6a21d2402671f70c72d 100644
--- a/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h
+++ b/modules/service/stake_pos_delegate/include/dap_chain_net_srv_stake_pos_delegate.h
@@ -70,7 +70,7 @@ uint256_t dap_chain_net_srv_stake_get_allowed_min_value();
 
 bool dap_chain_net_srv_stake_key_delegated(dap_chain_addr_t *a_addr);
 int dap_chain_net_srv_stake_verify_key_and_node(dap_chain_addr_t* a_signing_addr, dap_chain_node_addr_t* a_node_addr);
-dap_list_t *dap_chain_net_srv_stake_get_validators();
+dap_list_t *dap_chain_net_srv_stake_get_validators(dap_chain_net_id_t a_net_id);
 
 void dap_chain_net_srv_stake_get_fee_validators(dap_chain_net_t *a_net, dap_string_t *a_string);