diff --git a/api-lib-core/pom.xml b/api-lib-core/pom.xml
index a79c74543cd58de4e9639bcbbfa6d38df6f0bd5f..d523d8d0a7e311906df2ba25f6e06e1549bd04d6 100644
--- a/api-lib-core/pom.xml
+++ b/api-lib-core/pom.xml
@@ -17,9 +17,6 @@
 		<maven-surefire-plugin.version>3.2.2</maven-surefire-plugin.version>
 		<maven-failsafe-plugin.version>3.2.2</maven-failsafe-plugin.version>
 		<jacoco.plugin.version>0.8.11</jacoco.plugin.version>
-		
-		<!-- required to use SNAPSHOT to break cyclic dependency -->
-		<vorgang-manager.version>2.0.0-SNAPSHOT</vorgang-manager.version>
 	</properties>
 
 	<dependencies>
@@ -44,6 +41,12 @@
 			<artifactId>vorgang-manager-utils</artifactId>
 			<version>${vorgang-manager.version}</version>
 		</dependency>
+		
+		<dependency>
+			<groupId>de.ozgcloud.user</groupId>
+			<artifactId>user-manager-interface</artifactId>
+			<version>${user-manager.version}</version>
+		</dependency>
 
 		<!--spring -->
 		<dependency>
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/user/GrpcOzgCloudUserProfileService.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/GrpcOzgCloudUserProfileService.java
new file mode 100644
index 0000000000000000000000000000000000000000..549ac07ae4036d7d167667417bac5c757b9dfeca
--- /dev/null
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/GrpcOzgCloudUserProfileService.java
@@ -0,0 +1,26 @@
+package de.ozgcloud.apilib.user;
+
+import de.ozgcloud.user.grpc.userprofile.UserProfileServiceGrpc.UserProfileServiceBlockingStub;
+import de.ozgcloud.user.userprofile.GrpcGetUserProfileRequest;
+import lombok.RequiredArgsConstructor;
+
+@RequiredArgsConstructor
+public class GrpcOzgCloudUserProfileService implements OzgCloudUserProfileService {
+
+	private final UserProfileServiceBlockingStub serviceStub;
+
+	private final UserProfileMapper mapper;
+
+	@Override
+	public OzgCloudUserProfile getById(OzgCloudUserId userId) {
+		var grpcUserProfileResponse = serviceStub.getById(buildGetUserRequest(userId));
+
+		return mapper.mapFromGrpc(grpcUserProfileResponse.getUserProfile());
+	}
+
+	private GrpcGetUserProfileRequest buildGetUserRequest(OzgCloudUserId id) {
+		return GrpcGetUserProfileRequest.newBuilder()
+				.setUserId(id.toString())
+				.build();
+	}
+}
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/user/OzgCloudUserProfile.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/OzgCloudUserProfile.java
new file mode 100644
index 0000000000000000000000000000000000000000..f8c9089fde456c73c19c0b0f6b87162ce80e297f
--- /dev/null
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/OzgCloudUserProfile.java
@@ -0,0 +1,15 @@
+package de.ozgcloud.apilib.user;
+
+import lombok.Builder;
+import lombok.Getter;
+
+@Builder
+@Getter
+public class OzgCloudUserProfile {
+
+	private OzgCloudUserId id;
+
+	private String firstName;
+	private String lastName;
+	private String email;
+}
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/user/OzgCloudUserProfileService.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/OzgCloudUserProfileService.java
new file mode 100644
index 0000000000000000000000000000000000000000..a769f63f92287d035ca4284c2630b893d15a303a
--- /dev/null
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/OzgCloudUserProfileService.java
@@ -0,0 +1,6 @@
+package de.ozgcloud.apilib.user;
+
+public interface OzgCloudUserProfileService {
+
+	public OzgCloudUserProfile getById(OzgCloudUserId userId);
+}
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/user/UserProfileMapper.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/UserProfileMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..5ae1f4e46c9e1ad8fb934145fddcf7d2e8da48d0
--- /dev/null
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/user/UserProfileMapper.java
@@ -0,0 +1,16 @@
+package de.ozgcloud.apilib.user;
+
+import org.mapstruct.Mapper;
+
+import de.ozgcloud.user.userprofile.GrpcUserProfile;
+import lombok.NonNull;
+
+@Mapper
+public interface UserProfileMapper {
+
+	OzgCloudUserProfile mapFromGrpc(GrpcUserProfile userProfile);
+
+	default OzgCloudUserId toOzgCloudUserId(@NonNull String id) {
+		return OzgCloudUserId.from(id);
+	}
+}
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcGetUserProfileResponseTestFactory.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcGetUserProfileResponseTestFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..3c9ec6e55032f8e87978b7b2d9842a6679a3ddbc
--- /dev/null
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcGetUserProfileResponseTestFactory.java
@@ -0,0 +1,15 @@
+package de.ozgcloud.apilib.user;
+
+import de.ozgcloud.user.userprofile.GrpcGetUserProfileResponse;
+
+public class GrpcGetUserProfileResponseTestFactory {
+
+	public static GrpcGetUserProfileResponse create() {
+		return createBuilder().build();
+	}
+
+	public static GrpcGetUserProfileResponse.Builder createBuilder() {
+		return GrpcGetUserProfileResponse.newBuilder()
+				.setUserProfile(GrpcUserProfileTestFactory.create());
+	}
+}
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcOzgCloudUserProfileServiceTest.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcOzgCloudUserProfileServiceTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..0e15fa0a4a24ff42c46cd344c1bf22abcc8bb0ca
--- /dev/null
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcOzgCloudUserProfileServiceTest.java
@@ -0,0 +1,64 @@
+package de.ozgcloud.apilib.user;
+
+import static org.assertj.core.api.Assertions.*;
+import static org.mockito.ArgumentMatchers.*;
+import static org.mockito.Mockito.*;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Nested;
+import org.junit.jupiter.api.Test;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Captor;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+
+import de.ozgcloud.user.grpc.userprofile.UserProfileServiceGrpc.UserProfileServiceBlockingStub;
+import de.ozgcloud.user.userprofile.GrpcGetUserProfileRequest;
+
+class GrpcOzgCloudUserProfileServiceTest {
+
+	@InjectMocks
+	private GrpcOzgCloudUserProfileService service;
+
+	@Mock
+	private UserProfileServiceBlockingStub userProfileServiceStub;
+	@Mock
+	private UserProfileMapper mapper;
+
+	@Nested
+	class TestGetById {
+		@Captor
+		private ArgumentCaptor<GrpcGetUserProfileRequest> requestCaptor;
+
+		private OzgCloudUserProfile mappedUserProfile = OzgCloudUserProfileTestFactory.create();
+
+		@BeforeEach
+		void init() {
+			when(userProfileServiceStub.getById(any())).thenReturn(GrpcGetUserProfileResponseTestFactory.create());
+			when(mapper.mapFromGrpc(any())).thenReturn(mappedUserProfile);
+		}
+
+		@Test
+		void shouldCallStub() {
+			service.getById(OzgCloudUserProfileTestFactory.ID);
+
+			verify(userProfileServiceStub).getById(requestCaptor.capture());
+			assertThat(requestCaptor.getValue().getUserId()).isEqualTo(OzgCloudUserProfileTestFactory.ID.toString());
+		}
+
+		@Test
+		void shouldCallMapper() {
+			service.getById(OzgCloudUserProfileTestFactory.ID);
+
+			verify(mapper).mapFromGrpc(any());
+		}
+
+		@Test
+		void shouldReturnResult() {
+			var result = service.getById(OzgCloudUserProfileTestFactory.ID);
+
+			assertThat(result).isSameAs(mappedUserProfile);
+		}
+	}
+
+}
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcUserProfileTestFactory.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcUserProfileTestFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..b34ec0e294629ded591ac1174a8e8e5406b177c2
--- /dev/null
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/GrpcUserProfileTestFactory.java
@@ -0,0 +1,20 @@
+package de.ozgcloud.apilib.user;
+
+import static de.ozgcloud.apilib.user.OzgCloudUserProfileTestFactory.*;
+
+import de.ozgcloud.user.userprofile.GrpcUserProfile;
+
+public class GrpcUserProfileTestFactory {
+
+	public static GrpcUserProfile create() {
+		return createBuilder().build();
+	}
+
+	public static GrpcUserProfile.Builder createBuilder() {
+		return GrpcUserProfile.newBuilder()
+				.setId(ID.toString())
+				.setFirstName(FIRST_NAME)
+				.setLastName(LAST_NAME);
+
+	}
+}
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/user/OzgCloudUserProfileTestFactory.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/OzgCloudUserProfileTestFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..ecd77ac0bc38e3dc061e0120473bd19cc385d933
--- /dev/null
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/user/OzgCloudUserProfileTestFactory.java
@@ -0,0 +1,23 @@
+package de.ozgcloud.apilib.user;
+
+import java.util.UUID;
+
+public class OzgCloudUserProfileTestFactory {
+
+	public static final OzgCloudUserId ID = OzgCloudUserId.from(UUID.randomUUID().toString());
+	public static final String FIRST_NAME = "Theo";
+	public static final String LAST_NAME = "Test";
+	public static final String EMAIL = "theo@local";
+
+	public static OzgCloudUserProfile create() {
+		return createBuilder().build();
+	}
+
+	public static OzgCloudUserProfile.OzgCloudUserProfileBuilder createBuilder() {
+		return OzgCloudUserProfile.builder()
+				.id(ID)
+				.firstName(FIRST_NAME)
+				.lastName(LAST_NAME)
+				.email(EMAIL);
+	}
+}
diff --git a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java
index dc3249e1b318acab3ce68e41529dc6f76d0f2f1a..9fe9f412f897380df3fd6265fdf5b2d4356450a2 100644
--- a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java
+++ b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java
@@ -24,12 +24,16 @@ import de.ozgcloud.apilib.common.command.grpc.CommandMapper;
 import de.ozgcloud.apilib.common.command.grpc.GrpcOzgCloudCommandService;
 import de.ozgcloud.apilib.file.dummy.DummyOzgCloudFileService;
 import de.ozgcloud.apilib.file.grpc.GrpcOzgCloudFileService;
+import de.ozgcloud.apilib.user.GrpcOzgCloudUserProfileService;
+import de.ozgcloud.apilib.user.OzgCloudUserProfileService;
+import de.ozgcloud.apilib.user.UserProfileMapper;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangIdMapper;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangService;
 import de.ozgcloud.apilib.vorgang.dummy.DummyVorgangService;
 import de.ozgcloud.apilib.vorgang.grpc.GrpcOzgCloudVorgangService;
 import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangMapper;
 import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangStubMapper;
+import de.ozgcloud.user.grpc.userprofile.UserProfileServiceGrpc.UserProfileServiceBlockingStub;
 import de.ozgcloud.vorgang.grpc.command.CommandServiceGrpc.CommandServiceBlockingStub;
 import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub;
 import net.devh.boot.grpc.client.autoconfigure.GrpcClientAutoConfiguration;
@@ -75,7 +79,7 @@ public class OzgCloudClientAutoConfiguration {
 
 	@Bean
 	@ConditionalOnProperty("ozgcloud.command-manager.address")
-	GrpcChannelConfigurator commandProperties() {
+	GrpcChannelConfigurator commandConfigurator() {
 		return GrpcChannelConfigurator.builder()
 				.clientName(CLIENT_NAME_COMMAND_MANAGER)
 				.address(commandManagerProperties.getAddress())
@@ -83,7 +87,7 @@ public class OzgCloudClientAutoConfiguration {
 				.build();
 	}
 
-	GrpcChannelConfigurator userManagerProperties() {
+	GrpcChannelConfigurator userManagerConfigurator() {
 		return GrpcChannelConfigurator.builder()
 				.clientName(CLIENT_NAME_USER_MANAGER)
 				.address(userManagerProperties.getAddress())
@@ -99,6 +103,14 @@ public class OzgCloudClientAutoConfiguration {
 		return properties;
 	}
 
+	private void addUserManager(Map<String, GrpcChannelProperties> clientMap) {
+		var channelProps = new GrpcChannelProperties();
+		channelProps.setAddress(userManagerProperties.getAddress());
+		channelProps.setNegotiationType(userManagerProperties.getNegotiationType());
+
+		clientMap.put(CLIENT_NAME_USER_MANAGER, channelProps);
+	}
+
 	private void addVorgangManager(Map<String, GrpcChannelProperties> clientMap) {
 		var channelProps = new GrpcChannelProperties();
 		channelProps.setAddress(vorgangManagerProperties.getAddress());
diff --git a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java.orig b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java.orig
new file mode 100644
index 0000000000000000000000000000000000000000..bc32aebc6b75775439ce62f78c146efe5a364877
--- /dev/null
+++ b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudClientAutoConfiguration.java.orig
@@ -0,0 +1,201 @@
+package de.ozgcloud.client.autoconfigure;
+
+import java.util.Collection;
+import java.util.Map;
+
+import org.mapstruct.factory.Mappers;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.autoconfigure.AutoConfiguration;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Import;
+
+import de.ozgcloud.apilib.alfa.AlfaService;
+import de.ozgcloud.apilib.alfa.CommandAlfaService;
+import de.ozgcloud.apilib.alfa.dummy.DummyAlfaService;
+import de.ozgcloud.apilib.common.callcontext.DefaultOzgCloudCallContextProvider;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextAttachingInterceptor;
+import de.ozgcloud.apilib.common.callcontext.OzgCloudCallContextProvider;
+import de.ozgcloud.apilib.common.command.OzgCloudCommandService;
+import de.ozgcloud.apilib.common.command.grpc.CommandMapper;
+import de.ozgcloud.apilib.common.command.grpc.GrpcOzgCloudCommandService;
+import de.ozgcloud.apilib.file.dummy.DummyOzgCloudFileService;
+import de.ozgcloud.apilib.file.grpc.GrpcOzgCloudFileService;
+import de.ozgcloud.apilib.vorgang.OzgCloudVorgangIdMapper;
+import de.ozgcloud.apilib.vorgang.OzgCloudVorgangService;
+import de.ozgcloud.apilib.vorgang.dummy.DummyVorgangService;
+import de.ozgcloud.apilib.vorgang.grpc.GrpcOzgCloudVorgangService;
+import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangMapper;
+import de.ozgcloud.apilib.vorgang.grpc.OzgCloudVorgangStubMapper;
+import de.ozgcloud.vorgang.grpc.command.CommandServiceGrpc.CommandServiceBlockingStub;
+import de.ozgcloud.vorgang.vorgang.VorgangServiceGrpc.VorgangServiceBlockingStub;
+import net.devh.boot.grpc.client.autoconfigure.GrpcClientAutoConfiguration;
+import net.devh.boot.grpc.client.config.GrpcChannelProperties;
+import net.devh.boot.grpc.client.config.GrpcChannelsProperties;
+import net.devh.boot.grpc.client.inject.GrpcClient;
+
+@AutoConfiguration(before = GrpcClientAutoConfiguration.class)
+@ComponentScan("de.ozgcloud.client.autoconfigure")
+@Import({
+		GrpcOzgCloudFileService.class, DummyOzgCloudFileService.class,
+		OzgCloudCallContextAttachingInterceptor.class
+})
+
+public class OzgCloudClientAutoConfiguration {
+
+	private static final String CLIENT_NAME_VORGANG_MANAGER = "vorgang-manager";
+	private static final String CLIENT_NAME_FILE_MANAGER = "file-manager";
+	private static final String CLIENT_NAME_COMMAND_MANAGER = "command-manager";
+
+	@Autowired
+	private OzgCloudVorgangManagerProperties vorgangManagerProperties;
+	@Autowired
+	private OzgCloudFileManagerProperties fileManagerProperties;
+	@Autowired
+	private OzgCloudCommandManagerProperties commandManagerProperties;
+
+	// @Bean
+	// @ConditionalOnProperty("ozgcloud.vorgang-manager.address")
+	GrpcChannelsProperties channelProperties(GrpcChannelsProperties properties) {
+		// var properties = new GrpcChannelsProperties();
+		var clientMap = properties.getClient();
+
+		addVorgangManager(clientMap);
+		addFileManager(clientMap);
+		addCommandManager(clientMap);
+
+		return properties;
+	}
+
+	@Bean
+	@ConditionalOnProperty("ozgcloud.command-manager.address")
+	GrpcChannelConfigurator commandProperties() {
+		return GrpcChannelConfigurator.builder()
+				.clientName(CLIENT_NAME_COMMAND_MANAGER)
+				.address(commandManagerProperties.getAddress())
+				.negotiationType(commandManagerProperties.getNegotiationType())
+				.build();
+	}
+
+<<<<<<< Updated upstream
+=======
+	@Bean
+	@ConditionalOnProperty("ozgcloud.user-manager.address")
+	GrpcChannelConfigurator userManagerProperties() {
+		return GrpcChannelConfigurator.builder()
+				.clientName(CLIENT_NAME_USER_MANAGER)
+				.address(userManagerProperties.getAddress())
+				.negotiationType(userManagerProperties.getNegotiationType())
+				.build();
+//		var properties = new GrpcChannelsProperties();
+//		var clientMap = properties.getClient();
+//		addUserManager(clientMap);
+//		return properties;
+	}
+
+	@Bean
+	GrpcChannelsProperties clientProperties(Collection<GrpcChannelConfigurator> configurators) {
+		var properties = new GrpcChannelsProperties();
+		configurators.stream().forEach(configurator -> configurator.addToProperties(properties));
+
+		return properties;
+	}
+
+	private void addUserManager(Map<String, GrpcChannelProperties> clientMap) {
+		var channelProps = new GrpcChannelProperties();
+		channelProps.setAddress(userManagerProperties.getAddress());
+		channelProps.setNegotiationType(userManagerProperties.getNegotiationType());
+
+		clientMap.put(CLIENT_NAME_USER_MANAGER, channelProps);
+	}
+
+>>>>>>> Stashed changes
+	private void addVorgangManager(Map<String, GrpcChannelProperties> clientMap) {
+		var channelProps = new GrpcChannelProperties();
+		channelProps.setAddress(vorgangManagerProperties.getAddress());
+		channelProps.setNegotiationType(vorgangManagerProperties.getNegotiationType());
+
+		clientMap.put(CLIENT_NAME_VORGANG_MANAGER, channelProps);
+	}
+
+	private void addFileManager(Map<String, GrpcChannelProperties> clientMap) {
+		var channelProps = new GrpcChannelProperties();
+		channelProps.setAddress(fileManagerProperties.getAddress());
+		channelProps.setNegotiationType(fileManagerProperties.getNegotiationType());
+
+		clientMap.put(CLIENT_NAME_FILE_MANAGER, channelProps);
+	}
+
+	private void addCommandManager(Map<String, GrpcChannelProperties> clientMap) {
+		var channelProps = new GrpcChannelProperties();
+		channelProps.setAddress(commandManagerProperties.getAddress());
+		channelProps.setNegotiationType(commandManagerProperties.getNegotiationType());
+
+		clientMap.put(CLIENT_NAME_COMMAND_MANAGER, channelProps);
+	}
+
+	@Bean
+	@ConditionalOnMissingBean
+	OzgCloudCallContextProvider callContextProvider(ApplicationContext ctxt) {
+		return new DefaultOzgCloudCallContextProvider(ctxt);
+	}
+
+	@Bean("ozgCloudVorgangService")
+	@ConditionalOnProperty("ozgcloud.vorgang-manager.address")
+	OzgCloudVorgangService grpcOzgCloudVorgangService(VorgangServiceBlockingStub vorgangServiceStub,
+			OzgCloudVorgangMapper mapper,
+			OzgCloudVorgangStubMapper stubMapper, OzgCloudCallContextProvider contextProvider) {
+
+		return new GrpcOzgCloudVorgangService(vorgangServiceStub, mapper, stubMapper, contextProvider);
+	}
+
+	@Bean
+	OzgCloudVorgangMapper ozgCloudVorgangMapper() {
+		return Mappers.getMapper(OzgCloudVorgangMapper.class);
+	}
+
+	@Bean
+	OzgCloudVorgangStubMapper ozgCloudVorgangStubMapper() {
+		return Mappers.getMapper(OzgCloudVorgangStubMapper.class);
+	}
+
+	@Bean("ozgCloudVorgangService")
+	@ConditionalOnMissingBean(OzgCloudVorgangService.class)
+	OzgCloudVorgangService dummyOzgCloudVorgangService() {
+		return new DummyVorgangService();
+	}
+
+	@Bean
+	OzgCloudVorgangIdMapper ozgCloudVorgangIdMapper() {
+		return Mappers.getMapper(OzgCloudVorgangIdMapper.class);
+	}
+
+	@Bean
+	@ConditionalOnProperty("ozgcloud.command-manager.address")
+	OzgCloudCommandService grpcOzgCloudCommandService(@GrpcClient("command-manager") CommandServiceBlockingStub commandServiceStub,
+			CommandMapper commandMapper, OzgCloudCallContextProvider contextProvider) {
+		return new GrpcOzgCloudCommandService(commandServiceStub, commandMapper, contextProvider,
+				GrpcOzgCloudCommandService.DEFAULT_COMMAND_REQUEST_THRESHOLD_MILLIS);
+	}
+
+	@Bean
+	@ConditionalOnProperty("ozgcloud.command-manager.address")
+	CommandMapper commandMapper() {
+		return Mappers.getMapper(CommandMapper.class);
+	}
+
+	@Bean
+	@ConditionalOnProperty("ozgcloud.command-manager.address")
+	AlfaService commandAlfaService(OzgCloudCommandService commandService) {
+		return new CommandAlfaService(commandService);
+	}
+
+	@Bean
+	@ConditionalOnMissingBean
+	AlfaService alfaService() {
+		return new DummyAlfaService();
+	}
+}
diff --git a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java
index 4fec478ca3b5cca9d9f9c2caab02fffe88ecaf53..0686b0204efccec1aa962a6593c86688320e3876 100644
--- a/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java
+++ b/ozg-cloud-spring-boot-starter/src/main/java/de/ozgcloud/client/autoconfigure/OzgCloudUserManagerProperties.java
@@ -10,7 +10,7 @@ import net.devh.boot.grpc.client.config.NegotiationType;
 @Getter
 @Setter
 @Configuration
-@ConfigurationProperties("ozgcloud.user-manager")
+@ConfigurationProperties("ozgcloud.vorgang-manager")
 public class OzgCloudUserManagerProperties {
 	/**
 	 * Network-Address of the User-Manager instance, starting with resolving
diff --git a/pom.xml b/pom.xml
index 6f7294c0a175feb437f2ef989c4ed1a4fa3a9a77..f62ede3f52c7b2c9409032835ce732028188c6a5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,8 +25,11 @@
 
 	<properties>
 		<source-plugin.version>3.3.0</source-plugin.version>
-		<failsafe-plugin.version>3.1.2</failsafe-plugin.version>
+		<failsafe-plugin.version>3.2.2</failsafe-plugin.version>
 		<maven-jar-plugin.version>3.3.0</maven-jar-plugin.version>
+		
+		<vorgang-manager.version>2.0.0-SNAPSHOT</vorgang-manager.version>
+		<user-manager.version>2.0.0-SNAPSHOT</user-manager.version>
 	</properties>
 
 	<build>
@@ -44,6 +47,7 @@
 					</execution>
 				</executions>
 			</plugin>
+			
 		</plugins>
 	</build>