diff --git a/lib/partner.js b/lib/partner.js
index f56ad9e..1a5fec2 100644
--- a/lib/partner.js
+++ b/lib/partner.js
@@ -189,24 +189,31 @@ function report(data) {
     matrix.last_report_to_core = data;
     pull.report(data);
 
-    if (!data.misc && !data.misc.task) {
+    if (!resendDelay.isEnabled()) {
+        //logger.verbose('Skipping resend delay because resend delay has not configured yet', {trx_id: task.trx_id, destination: task.destination, product: task.product});
         return;
     }
 
-    const task = data.misc.task;
+    if (data.rc !== '68') {
+        logger.verbose('Canceling resend delay', {trx_id: data.trx_id})
+        resendDelay.cancel(data.trx_id);
+        return;
+    }
 
-    if (!resendDelay.isEnabled()) {
-        //logger.verbose('Skipping resend delay because resend delay has not configured yet', {trx_id: task.trx_id, destination: task.destination, product: task.product});
+
+    if (!data.misc || !data.misc.task || typeof data.misc.task !== 'object') {
         return;
     }
 
+    const task = data.misc.task;
+
+
     if (data.rc && data.rc === '68') {
         logger.verbose('Registering resend delay', {trx_id: task.trx_id, destination: task.destination, product: task.product})
         resendDelay.register(task, advice);
     }
     else {
-        logger.verbose('Canceling resend delay', {trx_id: task.trx_id, destination: task.destination, product: task.product})
-        resendDelay.cancel(task.trx_id);
+
     }
 }