diff --git a/src/wizardviewstepmodel.cpp b/src/wizardviewstepmodel.cpp
index 7efe12e59c297cb3fd30d1267305cb36f98238a6..90117605aefe9b49b23e6757a8948b9c2df184eb 100644
--- a/src/wizardviewstepmodel.cpp
+++ b/src/wizardviewstepmodel.cpp
@@ -36,10 +36,13 @@ WizardViewStepModel::WizardViewStepModel(LRCInstance* lrcInstance,
         accountAdapter_->changeAccount(index);
 
         auto accountCreationOption = get_accountCreationOption();
-        if (accountCreationOption == AccountCreationOption::ConnectToAccountManager
-            || accountCreationOption == AccountCreationOption::ImportFromBackup
-            || accountCreationOption == AccountCreationOption::ImportFromDevice)
+        if (accountCreationOption == AccountCreationOption::ConnectToAccountManager)
             set_mainStep(MainSteps::Profile);
+        else if (accountCreationOption == AccountCreationOption::ImportFromBackup
+                 || accountCreationOption == AccountCreationOption::ImportFromDevice) {
+            Q_EMIT closeWizardView();
+            reset();
+        }
 
         Q_EMIT accountIsReady(accountId);
     });
diff --git a/tests/qml/src/tst_WizardView.qml b/tests/qml/src/tst_WizardView.qml
index 0f7d8314ef40668662cfcf9c4cb34f070c061952..75d2e5fe7fdf33d17111e05b287227ec37c12875 100644
--- a/tests/qml/src/tst_WizardView.qml
+++ b/tests/qml/src/tst_WizardView.qml
@@ -29,6 +29,14 @@ import "qrc:/src/wizardview"
 WizardView {
     id: uut
 
+    function clearSignalSpy() {
+        spyAccountIsReady.clear()
+        spyAccountIsRemoved.clear()
+        spyAccountConfigFinalized.clear()
+        spyReportFailure.clear()
+        spyCloseWizardView.clear()
+    }
+
     SignalSpy {
         id: spyAccountIsReady
 
@@ -64,6 +72,13 @@ WizardView {
         signalName: "reportFailure"
     }
 
+    SignalSpy {
+        id: spyCloseWizardView
+
+        target: WizardViewStepModel
+        signalName: "closeWizardView"
+    }
+
     TestCase {
         name: "WelcomePage to different account creation page and return back"
         when: windowShown
@@ -195,10 +210,7 @@ WizardView {
         when: windowShown
 
         function test_createJamiAccountUiFlow() {
-            spyAccountIsReady.clear()
-            spyAccountIsRemoved.clear()
-            spyAccountStatusChanged.clear()
-            spyAccountConfigFinalized.clear()
+            uut.clearSignalSpy()
 
             var controlPanelStackView = findChild(uut, "controlPanelStackView")
 
@@ -265,6 +277,9 @@ WizardView {
                 WizardViewStepModel.nextStep()
             }
 
+            spyCloseWizardView.wait()
+            compare(spyCloseWizardView.count, 1)
+
             // Check alias text
             compare(SettingsAdapter.getCurrentAccount_Profile_Info_Alias(), aliasText)
 
@@ -286,10 +301,7 @@ WizardView {
         }
 
         function test_createRendezVousAccountUiFlow() {
-            spyAccountIsReady.clear()
-            spyAccountIsRemoved.clear()
-            spyAccountStatusChanged.clear()
-            spyAccountConfigFinalized.clear()
+            uut.clearSignalSpy()
 
             var controlPanelStackView = findChild(uut, "controlPanelStackView")
 
@@ -359,6 +371,9 @@ WizardView {
                 WizardViewStepModel.nextStep()
             }
 
+            spyCloseWizardView.wait()
+            compare(spyCloseWizardView.count, 1)
+
             // Check alias text
             compare(SettingsAdapter.getCurrentAccount_Profile_Info_Alias(), aliasText)
 
@@ -385,10 +400,7 @@ WizardView {
         when: windowShown
 
         function test_createSipAccountUiFlow() {
-            spyAccountIsReady.clear()
-            spyAccountIsRemoved.clear()
-            spyAccountStatusChanged.clear()
-            spyAccountConfigFinalized.clear()
+            uut.clearSignalSpy()
 
             var controlPanelStackView = findChild(uut, "controlPanelStackView")
 
@@ -445,6 +457,9 @@ WizardView {
 
             WizardViewStepModel.nextStep()
 
+            spyCloseWizardView.wait()
+            compare(spyCloseWizardView.count, 1)
+
             AccountAdapter.deleteCurrentAccount()
 
             // Wait until the account removal is finished
@@ -458,10 +473,7 @@ WizardView {
         when: windowShown
 
         function test_createJamiAccountFromBackupUiFlow() {
-            spyAccountIsReady.clear()
-            spyAccountIsRemoved.clear()
-            spyAccountConfigFinalized.clear()
-            spyReportFailure.clear()
+            uut.clearSignalSpy()
 
             var controlPanelStackView = findChild(uut, "controlPanelStackView")
 
@@ -506,8 +518,8 @@ WizardView {
             compare(spyAccountIsReady.count, 1)
             spyAccountConfigFinalized.wait()
             compare(spyAccountConfigFinalized.count, 1)
-
-            WizardViewStepModel.nextStep()
+            spyCloseWizardView.wait()
+            compare(spyCloseWizardView.count, 1)
 
             AccountAdapter.deleteCurrentAccount()