diff --git a/.idea/misc.xml b/.idea/misc.xml
index 5c9f89fee71360989ca8a39d7324e4a12762142d..54d5acd7d7803e035156e6a92b2eac33785c8994 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="ExternalStorageConfigurationManager" enabled="true" />
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="11" project-jdk-type="JavaSDK">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/build/classes" />
   </component>
   <component name="ProjectType">
diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/login/LoginWizard.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/login/LoginWizard.kt
index 07d748b90919680319133b0d261e92801409b766..b8851f0aaef5911aa595ca5754cdde499c80dc22 100644
--- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/login/LoginWizard.kt
+++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/login/LoginWizard.kt
@@ -88,5 +88,5 @@ interface LoginWizard {
      * Current login "session" param will be included into authParams by default.
      * The authParams should contain at least one entry "type" with a String value.
      */
-    suspend fun loginStageCustom(authParams: JsonDict): RegistrationResult
+    suspend fun loginStageCustom(authParams: JsonDict, identifierParams: JsonDict? = null): RegistrationResult
 }
diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/DefaultLoginWizard.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/DefaultLoginWizard.kt
index e1b212f207d04e5cf4a28f8f4ba88193656cbe43..a1282f9eb867ea5f470ac7fe416f34330023342c 100644
--- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/DefaultLoginWizard.kt
+++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/DefaultLoginWizard.kt
@@ -17,7 +17,6 @@
 package org.matrix.android.sdk.internal.auth.login
 
 import android.util.Patterns
-import kotlinx.coroutines.delay
 import org.matrix.android.sdk.api.auth.LoginType
 import org.matrix.android.sdk.api.auth.data.Credentials
 import org.matrix.android.sdk.api.auth.login.LoginProfileInfo
@@ -38,11 +37,7 @@ import org.matrix.android.sdk.internal.auth.data.TokenLoginParams
 import org.matrix.android.sdk.internal.auth.db.PendingSessionData
 import org.matrix.android.sdk.internal.auth.findStageForType
 import org.matrix.android.sdk.internal.auth.registration.AddThreePidRegistrationParams
-import org.matrix.android.sdk.internal.auth.registration.DefaultRegisterTask
 import org.matrix.android.sdk.internal.auth.registration.RegisterAddThreePidTask
-import org.matrix.android.sdk.internal.auth.registration.RegisterTask
-import org.matrix.android.sdk.internal.auth.registration.RegistrationCustomParams
-import org.matrix.android.sdk.internal.auth.registration.RegistrationParams
 import org.matrix.android.sdk.internal.network.executeRequest
 import org.matrix.android.sdk.internal.session.content.DefaultContentUrlResolver
 import org.matrix.android.sdk.internal.session.contentscanner.DisabledContentScannerService
@@ -178,7 +173,8 @@ internal class DefaultLoginWizard(
 
     //Added to support few login flows
     override suspend fun loginStageCustom(
-            authParams: JsonDict
+            authParams: JsonDict,
+            identifierParams: JsonDict?
     ): RegistrationResult {
         val safeSession = pendingSessionData.currentSession
                 ?: throw IllegalStateException("developer error, call createAccount() method first")
@@ -186,7 +182,7 @@ internal class DefaultLoginWizard(
         val mutableParams = authParams.toMutableMap()
         mutableParams["session"] = safeSession
 
-        val params = LoginFlowParams(auth = mutableParams)
+        val params = LoginFlowParams(auth = mutableParams, identifier = identifierParams)
         return performRegistrationRequest(LoginType.CUSTOM, params)
     }
 
diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/LoginFlowParams.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/LoginFlowParams.kt
index 3515b56eeae6ee366042e3566772b6df2ffde63c..9d0136ba13aca003be0869c99c177ef6254b45f3 100644
--- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/LoginFlowParams.kt
+++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/login/LoginFlowParams.kt
@@ -27,5 +27,8 @@ import org.matrix.android.sdk.api.util.JsonDict
 internal data class LoginFlowParams(
         // authentication parameters
         @Json(name = "auth")
-        val auth: JsonDict? = null
+        val auth: JsonDict? = null,
+
+        @Json(name = "identifier")
+        val identifier: JsonDict? = null
 )