diff --git a/Sources/XXMessengerClient/Messenger/Functions/MessengerDestroy.swift b/Sources/XXMessengerClient/Messenger/Functions/MessengerDestroy.swift
index c7ee476c543c7096c7bcf8dca8716c607775faff..b2b18a4dd28110e05e9490b3e1e8556fbf5e6b7d 100644
--- a/Sources/XXMessengerClient/Messenger/Functions/MessengerDestroy.swift
+++ b/Sources/XXMessengerClient/Messenger/Functions/MessengerDestroy.swift
@@ -25,6 +25,7 @@ extension MessengerDestroy {
       env.e2e.set(nil)
       env.cMix.set(nil)
       env.isListeningForMessages.set(false)
+      env.serviceList.set(nil)
       try env.fileManager.removeItem(env.storageDir)
       try env.passwordStorage.remove()
     }
diff --git a/Tests/XXMessengerClientTests/Messenger/Functions/MessengerDestroyTests.swift b/Tests/XXMessengerClientTests/Messenger/Functions/MessengerDestroyTests.swift
index 927bc9e3c247814be28172cb97407d4b7f843ad7..3f87cacb3204fd02488a76dfe2b07f219dba8095 100644
--- a/Tests/XXMessengerClientTests/Messenger/Functions/MessengerDestroyTests.swift
+++ b/Tests/XXMessengerClientTests/Messenger/Functions/MessengerDestroyTests.swift
@@ -17,6 +17,7 @@ final class MessengerDestroyTests: XCTestCase {
     var didSetCMix: [CMix?] = []
     var didRemovePassword = 0
     var didSetIsListeningForMessages: [Bool] = []
+    var didSetServiceList: [MessageServiceList?] = []
 
     var env: MessengerEnvironment = .unimplemented
     env.cMix.get = {
@@ -34,6 +35,7 @@ final class MessengerDestroyTests: XCTestCase {
     env.e2e.set = { didSetE2E.append($0) }
     env.cMix.set = { didSetCMix.append($0) }
     env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) }
+    env.serviceList.set = { didSetServiceList.append($0) }
     env.fileManager.removeItem = { didRemoveItem.append($0) }
     env.passwordStorage.remove = { didRemovePassword += 1 }
     let destroy: MessengerDestroy = .live(env)
@@ -48,6 +50,7 @@ final class MessengerDestroyTests: XCTestCase {
     XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
     XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
     XCTAssertNoDifference(didSetIsListeningForMessages, [false])
+    XCTAssertNoDifference(didSetServiceList.map { $0 == nil }, [true])
     XCTAssertNoDifference(didRemoveItem, [storageDir])
     XCTAssertNoDifference(didRemovePassword, 1)
   }
@@ -79,6 +82,7 @@ final class MessengerDestroyTests: XCTestCase {
     var didSetE2E: [E2E?] = []
     var didSetCMix: [CMix?] = []
     var didSetIsListeningForMessages: [Bool] = []
+    var didSetServiceList: [MessageServiceList?] = []
 
     var env: MessengerEnvironment = .unimplemented
     env.cMix.get = { nil }
@@ -88,6 +92,7 @@ final class MessengerDestroyTests: XCTestCase {
     env.e2e.set = { didSetE2E.append($0) }
     env.cMix.set = { didSetCMix.append($0) }
     env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) }
+    env.serviceList.set = { didSetServiceList.append($0) }
     env.fileManager.removeItem = { _ in throw error }
     let destroy: MessengerDestroy = .live(env)
 
@@ -100,6 +105,7 @@ final class MessengerDestroyTests: XCTestCase {
     XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
     XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
     XCTAssertNoDifference(didSetIsListeningForMessages, [false])
+    XCTAssertNoDifference(didSetServiceList.map { $0 == nil }, [true])
   }
 
   func testRemovePasswordFailure() {
@@ -113,6 +119,7 @@ final class MessengerDestroyTests: XCTestCase {
     var didSetE2E: [E2E?] = []
     var didSetCMix: [CMix?] = []
     var didSetIsListeningForMessages: [Bool] = []
+    var didSetServiceList: [MessageServiceList?] = []
 
     var env: MessengerEnvironment = .unimplemented
     env.cMix.get = { nil }
@@ -122,6 +129,7 @@ final class MessengerDestroyTests: XCTestCase {
     env.e2e.set = { didSetE2E.append($0) }
     env.cMix.set = { didSetCMix.append($0) }
     env.isListeningForMessages.set = { didSetIsListeningForMessages.append($0) }
+    env.serviceList.set = { didSetServiceList.append($0) }
     env.storageDir = storageDir
     env.fileManager.removeItem = { didRemoveItem.append($0) }
     env.passwordStorage.remove = { throw error }
@@ -136,6 +144,7 @@ final class MessengerDestroyTests: XCTestCase {
     XCTAssertNoDifference(didSetE2E.map { $0 == nil }, [true])
     XCTAssertNoDifference(didSetCMix.map { $0 == nil }, [true])
     XCTAssertNoDifference(didSetIsListeningForMessages, [false])
+    XCTAssertNoDifference(didSetServiceList.map { $0 == nil }, [true])
     XCTAssertNoDifference(didRemoveItem, [storageDir])
   }
 }