diff --git a/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c b/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c
index 4a9e406b4c41922e9d1a63f50d984f404b3b111b..cea6929cff70977e5f56930fab2a19e47cc4b14e 100644
--- a/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c
+++ b/modules/channel/chain-net-srv/dap_stream_ch_chain_net_srv.c
@@ -665,10 +665,14 @@ static bool s_grace_period_finish(dap_chain_net_srv_grace_usage_t *a_grace_item)
     HASH_DEL(l_srv->grace_hash_tab, a_grace_item);
     pthread_mutex_unlock(&l_srv->grace_mutex);
 
-    s_service_substate_pay_service(a_grace_item->grace->usage);
+    if (!dap_ledger_tx_find_by_hash(a_grace_item->grace->usage->net->pub.ledger, &a_grace_item->grace->usage->tx_cond_hash)){
+        a_grace_item->grace->usage->last_err_code = DAP_STREAM_CH_CHAIN_NET_SRV_PKT_TYPE_RESPONSE_ERROR_CODE_TX_COND_NOT_FOUND;
+        s_service_substate_go_to_error(a_grace_item->grace->usage);
+    } else 
+        s_service_substate_pay_service(a_grace_item->grace->usage);
+
     DAP_DEL_Z(a_grace_item->grace);
     DAP_DEL_Z(a_grace_item);
-    
     return false;
 }