diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c
index d7cffc5f4fa2dbab786969305842985e1f22066e..f931a9d74ac4bb925fc6230ab6c4c49f496fd759 100644
--- a/channels/chan_misdn.c
+++ b/channels/chan_misdn.c
@@ -10088,8 +10088,8 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
 					ast_log(LOG_WARNING,
 						"Extension '%s@%s' can never match. Jumping to 'i' extension. port:%d\n",
 						bc->dialed.number, ch->context, bc->port);
+					pbx_builtin_setvar_helper(ch->ast, "INVALID_EXTEN", bc->dad);
 					ast_channel_exten_set(ch->ast, "i");
-
 					ch->state = MISDN_DIALING;
 					start_pbx(ch, bc, ch->ast);
 					break;
@@ -10346,6 +10346,7 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
 				ast_log(LOG_WARNING,
 					"Extension '%s@%s' can never match. Jumping to 'i' extension. port:%d\n",
 					bc->dialed.number, ch->context, bc->port);
+				pbx_builtin_setvar_helper(ch->ast, "INVALID_EXTEN", bc->dad);
 				ast_channel_exten_set(ch->ast, "i");
 				misdn_lib_send_event(bc, EVENT_SETUP_ACKNOWLEDGE);
 				ch->state = MISDN_DIALING;