diff --git a/Sources/ElixxirDAppsSDK/Functors/Login.swift b/Sources/ElixxirDAppsSDK/Functors/Login.swift
index ec82489280e8c5e03c36533a368e2a5920705368..9ca617a6dd9fadbc523e33842d26d997c55666b1 100644
--- a/Sources/ElixxirDAppsSDK/Functors/Login.swift
+++ b/Sources/ElixxirDAppsSDK/Functors/Login.swift
@@ -2,13 +2,13 @@ import Bindings
 import XCTestDynamicOverlay
 
 public struct Login {
-  public var run: (Bool, Int, AuthCallbacks?, Data, Data) throws -> E2E
+  public var run: (Bool, Int, AuthCallbacks?, ReceptionIdentity, Data) throws -> E2E
 
   public func callAsFunction(
     ephemeral: Bool,
     cmixId: Int,
     authCallbacks: AuthCallbacks? = nil,
-    identity: Data,
+    identity: ReceptionIdentity,
     e2eParamsJSON: Data
   ) throws -> E2E {
     try run(ephemeral, cmixId, authCallbacks, identity, e2eParamsJSON)
@@ -23,7 +23,7 @@ extension Login {
       bindingsE2E = BindingsLogin(
         cmixId,
         authCallbacks?.makeBindingsAuthCallbacks(),
-        identity,
+        try identity.encode(),
         e2eParamsJSON,
         &error
       )
@@ -31,7 +31,7 @@ extension Login {
       bindingsE2E = BindingsLoginEphemeral(
         cmixId,
         authCallbacks?.makeBindingsAuthCallbacks(),
-        identity,
+        try identity.encode(),
         e2eParamsJSON,
         &error
       )