diff --git a/src/main/java/de/ozgcloud/operator/keycloak/client/KeycloakClientService.java b/src/main/java/de/ozgcloud/operator/keycloak/client/KeycloakClientService.java
index 50eba9211bacd3a0fd87e0529147f14e3c611403..6cf43aa46500d1b908a5b427fd89339f2cacee94 100644
--- a/src/main/java/de/ozgcloud/operator/keycloak/client/KeycloakClientService.java
+++ b/src/main/java/de/ozgcloud/operator/keycloak/client/KeycloakClientService.java
@@ -54,6 +54,7 @@ class KeycloakClientService {
 
 	void updateClient(ClientRepresentation existingClient, OzgKeycloakClientSpec spec, String realm) {
 		var clientRepresentation = mapper.update(existingClient, spec);
+		setProtocolMapper(clientRepresentation);
 		remoteService.updateClient(clientRepresentation, realm);
 
 		addOrUpdateClientRoles(spec, realm, existingClient.getId());
diff --git a/src/test/java/de/ozgcloud/operator/keycloak/client/ClientRepresentationTestFactory.java b/src/test/java/de/ozgcloud/operator/keycloak/client/ClientRepresentationTestFactory.java
index c81842fe0a9d05720ae122da0c26d96a6e8084e1..d4ac4ad4154401e3d17874c6f0e285a58f1d8dbc 100644
--- a/src/test/java/de/ozgcloud/operator/keycloak/client/ClientRepresentationTestFactory.java
+++ b/src/test/java/de/ozgcloud/operator/keycloak/client/ClientRepresentationTestFactory.java
@@ -27,7 +27,12 @@ import org.keycloak.representations.idm.ClientRepresentation;
 
 public class ClientRepresentationTestFactory {
 
+	public static final String ID = "42";
+
 	public static ClientRepresentation create() {
-		return new ClientRepresentation();
+		var clientRepresentation = new ClientRepresentation();
+		clientRepresentation.setId(ID);
+
+		return clientRepresentation;
 	}
 }
diff --git a/src/test/java/de/ozgcloud/operator/keycloak/client/KeycloakClientServiceTest.java b/src/test/java/de/ozgcloud/operator/keycloak/client/KeycloakClientServiceTest.java
index 33c455f991e9b7ec5b382c61c85fd7806689b6d3..bdbacdeae89ee5305f6db60cc909d37cc1afec0f 100644
--- a/src/test/java/de/ozgcloud/operator/keycloak/client/KeycloakClientServiceTest.java
+++ b/src/test/java/de/ozgcloud/operator/keycloak/client/KeycloakClientServiceTest.java
@@ -68,18 +68,18 @@ class KeycloakClientServiceTest {
 		@Test
 		void shouldCallCreateClientMethod() {
 			var clientSpec = OzgKeycloakClientSpecTestFactory.create();
-			doNothing().when(service).createClient(eq(clientSpec), eq(TEST_NAMESPACE));
+			doNothing().when(service).createClient(clientSpec, TEST_NAMESPACE);
 
 			service.createOrUpdateClient(clientSpec, TEST_NAMESPACE);
 
-			verify(service).createClient(eq(clientSpec), eq(TEST_NAMESPACE));
+			verify(service).createClient(clientSpec, TEST_NAMESPACE);
 		}
 
 		@Test
 		void shouldCallUpdateClientMethod() {
 			var clientSpec = OzgKeycloakClientSpecTestFactory.create();
 			var clientRepresentation = ClientRepresentationTestFactory.create();
-			doNothing().when(service).updateClient(eq(clientRepresentation), eq(clientSpec), eq(TEST_NAMESPACE));
+			doNothing().when(service).updateClient(clientRepresentation, clientSpec, TEST_NAMESPACE);
 			when(keycloakGenericRemoteService.getByClientId(OzgKeycloakClientSpecTestFactory.CLIENT_ID, TEST_NAMESPACE))
 					.thenReturn(Optional.of(clientRepresentation));
 
@@ -228,23 +228,28 @@ class KeycloakClientServiceTest {
 		}
 	}
 
+	@DisplayName("Update client")
 	@Nested
 	class TestUpdateClient {
 
-		@Test
-		void shouldUpdateClientIfExists() {
-			var clientRepresentation = ClientRepresentationTestFactory.create();
+		private final ClientRepresentation clientRepresentation = ClientRepresentationTestFactory.create();
+		private final OzgKeycloakClientSpec client = OzgKeycloakClientSpecTestFactory.create();
+
+		@BeforeEach
+		void init() {
+			doNothing().when(service).setProtocolMapper(any());
 			when(mapper.update(any(), any())).thenReturn(clientRepresentation);
+		}
 
-			service.updateClient(clientRepresentation, OzgKeycloakClientSpecTestFactory.create(), TEST_NAMESPACE);
+		@Test
+		void shouldUpdateClientIfExists() {
+			service.updateClient(clientRepresentation, client, TEST_NAMESPACE);
 
 			verify(remoteService).updateClient(clientRepresentation, TEST_NAMESPACE);
 		}
 
 		@Test
 		void shouldCallMapper() {
-			var client = OzgKeycloakClientSpecTestFactory.create();
-			var clientRepresentation = ClientRepresentationTestFactory.create();
 
 			service.updateClient(clientRepresentation, client, TEST_NAMESPACE);
 
@@ -253,13 +258,16 @@ class KeycloakClientServiceTest {
 
 		@Test
 		void shouldCallAddOrUpdateClientRoles() {
-			var client = OzgKeycloakClientSpecTestFactory.create();
-			var clientRepresentation = mock(ClientRepresentation.class);
-			when(clientRepresentation.getId()).thenReturn(REAL_CLIENT_ID);
+			service.updateClient(clientRepresentation, client, TEST_NAMESPACE);
+
+			verify(service).addOrUpdateClientRoles(client, TEST_NAMESPACE, ClientRepresentationTestFactory.ID);
+		}
 
+		@Test
+		void shouldSetProtocolMapper() {
 			service.updateClient(clientRepresentation, client, TEST_NAMESPACE);
 
-			verify(service).addOrUpdateClientRoles(client, TEST_NAMESPACE, REAL_CLIENT_ID);
+			verify(service).setProtocolMapper(clientRepresentation);
 		}
 	}