diff --git a/javascript/src/iframe/viamapi-iframe.js b/javascript/src/iframe/viamapi-iframe.js
index e0bad330ad21eca36fad875c931f0cee3cc79935..4cf84a9efc8e154f4af1b295b12399e2562acb62 100644
--- a/javascript/src/iframe/viamapi-iframe.js
+++ b/javascript/src/iframe/viamapi-iframe.js
@@ -1718,9 +1718,9 @@ const connection = Penpal.connectToParent({
       });
     },
     login(loginIdentity, mode, code, actionID) {
-      return new Penpal.Promise(result => {
+      return new Penpal.Promise(setIdentityResult => {
         if (window.loadedIdentities[loginIdentity.authentication.publicKey] === null) {
-          result({"data" : "",
+          setIdentityResult({"data" : "",
             "code" : "400",
             "status" : "Identity not loaded"
           })
@@ -1742,10 +1742,12 @@ const connection = Penpal.connectToParent({
                 delete executeResult.data["Uuid"];
                 delete executeResult.data["Session"];
                 getProfileData(loginIdentity).then(executeResult1 => {
-                  result(executeResult);
+                  setIdentityInLocalStorage(loginIdentity).then(() => {
+                    setIdentityResult(executeResult);
+                  });
                 });
               } else {
-                result(executeResult);
+                setIdentityResult(executeResult);
               }
 
               break;
@@ -1758,10 +1760,10 @@ const connection = Penpal.connectToParent({
                 delete executeResult.data["Uuid"];
                 delete executeResult.data["Session"];
                 getProfileData(loginIdentity).then(executeResult1 => {
-                  result(executeResult);
+                  setIdentityResult(executeResult);
                 });
               } else {
-                result(executeResult);
+                setIdentityResult(executeResult);
               }
 
               break;
@@ -1776,17 +1778,17 @@ const connection = Penpal.connectToParent({
                 QRCode.toDataURL(actionID + "," + QrCode, function (err, url) {
                   executeResult.data["image"] = url;
                   //console.log(executeResult)
-                  result(executeResult);
+                  setIdentityResult(executeResult);
                 })
               } else {
                 //console.log(executeResult)
-                result(executeResult);
+                setIdentityResult(executeResult);
               }
               break;
             }
 
             default : {
-              result(executeResult);
+              setIdentityResult(executeResult);
               break;
             }
           }
@@ -1906,12 +1908,7 @@ const connection = Penpal.connectToParent({
         viamApi.setIdentity(restoreAccessIdentity.authentication.publicKey);
 
         executeRestfulFunction("public", viamApi, viamApi.identityRestoreAccess, identificator).then(executeResult => {
-          if (executeResult.code === "200") {
-            setIdentityInLocalStorage(restoreAccessIdentity);
-            result(executeResult);
-          } else {
             result(executeResult);
-          }
         });
       });
     },