diff --git a/Sources/ElixxirDAppsSDK/E2E.swift b/Sources/ElixxirDAppsSDK/E2E.swift
index 864ac0979791ab39b195627c35d4719a4f542230..6b83d5684cac203c7fe8029d9cba50e5558f926e 100644
--- a/Sources/ElixxirDAppsSDK/E2E.swift
+++ b/Sources/ElixxirDAppsSDK/E2E.swift
@@ -18,6 +18,7 @@ public struct E2E {
   public var callAllReceivedRequests: E2ECallAllReceivedRequests
   public var getReceivedRequest: E2EGetReceivedRequest
   public var deleteRequest: E2EDeleteRequest
+  public var verifyOwnership: E2EVerifyOwnership
   public var send: E2ESend
 
   // TODO:
@@ -43,6 +44,7 @@ extension E2E {
       callAllReceivedRequests: .live(bindingsE2E),
       getReceivedRequest: .live(bindingsE2E),
       deleteRequest: .live(bindingsE2E),
+      verifyOwnership: .live(bindingsE2E),
       send: .live(bindingsE2E)
     )
   }
@@ -67,6 +69,7 @@ extension E2E {
     callAllReceivedRequests: .unimplemented,
     getReceivedRequest: .unimplemented,
     deleteRequest: .unimplemented,
+    verifyOwnership: .unimplemented,
     send: .unimplemented
   )
 }
diff --git a/Sources/ElixxirDAppsSDK/E2EVerifyOwnership.swift b/Sources/ElixxirDAppsSDK/E2EVerifyOwnership.swift
new file mode 100644
index 0000000000000000000000000000000000000000..e6011bcab9cba7cd0f19b048af4f4f6d0ca7629e
--- /dev/null
+++ b/Sources/ElixxirDAppsSDK/E2EVerifyOwnership.swift
@@ -0,0 +1,35 @@
+import Bindings
+import XCTestDynamicOverlay
+
+public struct E2EVerifyOwnership {
+  public var run: (Data, Data, Int) throws -> Bool
+
+  public func callAsFunction(
+    receivedContact: Data,
+    verifiedContact: Data,
+    e2eId: Int
+  ) throws -> Bool {
+    try run(receivedContact, verifiedContact, e2eId)
+  }
+}
+
+extension E2EVerifyOwnership {
+  public static func live(_ bindingsE2E: BindingsE2e) -> E2EVerifyOwnership {
+    E2EVerifyOwnership { receivedContact, verifiedContact, e2eId in
+      var result: ObjCBool = false
+      try bindingsE2E.verifyOwnership(
+        receivedContact,
+        verifiedContact: verifiedContact,
+        e2eId: e2eId,
+        ret0_: &result
+      )
+      return result.boolValue
+    }
+  }
+}
+
+extension E2EVerifyOwnership {
+  public static let unimplemented = E2EVerifyOwnership(
+    run: XCTUnimplemented("\(Self.self)")
+  )
+}