diff --git a/modules/mempool/dap_chain_mempool.c b/modules/mempool/dap_chain_mempool.c
index be05de54de7711e1c61ffed55571418f4b137330..8cc95901e3a4456077b414d07b55a9c3b76f3ccf 100644
--- a/modules/mempool/dap_chain_mempool.c
+++ b/modules/mempool/dap_chain_mempool.c
@@ -657,7 +657,12 @@ dap_chain_hash_fast_t* dap_chain_proc_tx_create_cond(dap_chain_net_t * a_net,
         dap_chain_net_srv_uid_t a_srv_uid, uint64_t a_value_fee, const void *a_cond, size_t a_cond_size)
 {
 
-    dap_chain_t *l_chain = dap_chain_net_get_chain_by_chain_type(a_net, CHAIN_TYPE_TX);
+    dap_chain_t *l_chain = NULL;
+    if(a_net->pub.default_tx_chain)
+        l_chain = a_net->pub.default_tx_chain;
+    else
+        dap_chain_net_get_chain_by_chain_type(a_net, CHAIN_TYPE_TX);
+
     if(!l_chain)
             return NULL;
     // Make transfer transaction
diff --git a/modules/net/dap_chain_net.c b/modules/net/dap_chain_net.c
index 2ccacb4614cf84997de23c7443371090955ae018..c5c52f1baa51871e1659259449139d1de02a6cc2 100644
--- a/modules/net/dap_chain_net.c
+++ b/modules/net/dap_chain_net.c
@@ -1661,6 +1661,12 @@ int s_net_load(const char * a_net_name)
             }
             dap_list_free(l_prior_list);
 
+            const char* l_default_tx_chain_name = dap_config_get_item_str(l_cfg , "general" , "default_tx_chain");
+            if(l_default_tx_chain_name)
+                l_net->pub.default_tx_chain = dap_chain_net_get_chain_by_name(l_net, l_default_tx_chain_name);
+            else
+                l_net->pub.default_tx_chain = NULL;
+
         } else {
             log_it(L_ERROR,"Can't any chains for network %s",l_net->pub.name);
             PVT(l_net)->load_mode = false;
diff --git a/modules/net/include/dap_chain_net.h b/modules/net/include/dap_chain_net.h
index b11b20a1503bbf9b54bb33aba8b997295786aafd..d174d83a27838f8ee9602718fd0add2f48b571aa 100644
--- a/modules/net/include/dap_chain_net.h
+++ b/modules/net/include/dap_chain_net.h
@@ -75,6 +75,7 @@ typedef struct dap_chain_net{
         char * gdb_nodes;
 
         dap_chain_t * chains; // double-linked list of chains
+        dap_chain_t * default_tx_chain;
         dap_ledger_t  *ledger;
     } pub;
     uint8_t pvt[];