diff --git a/pluto-command/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java b/pluto-command/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java
index 08c9594a95b697ba14027c5e9c7e45722a9b0a77..77fe730af206a04100340094e9f735f1c5db2876 100644
--- a/pluto-command/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java
+++ b/pluto-command/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java
@@ -6,6 +6,7 @@ import java.util.UUID;
 public class CommandTestFactory {
 
 	public static final String ID = UUID.randomUUID().toString();
+	public static final String VORGANG_ID = UUID.randomUUID().toString();
 	public static final String ORDER = "DO_TEST";
 
 	public static final String CREATED_BY = UUID.randomUUID().toString();
@@ -17,6 +18,7 @@ public class CommandTestFactory {
 	public static TestCommand.TestCommandBuilder createBuilder() {
 		return TestCommand.builder()
 				.id(ID)
+				.vorgangId(VORGANG_ID)
 				.body(Map.of())
 				.bodyObject(Map.of())
 				.createdBy(CREATED_BY);
diff --git a/pluto-common/pom.xml b/pluto-common/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e9ce3bfdbf8442546015ab6d29f796dd382affc8
--- /dev/null
+++ b/pluto-common/pom.xml
@@ -0,0 +1,61 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>de.itvsh.kop.common</groupId>
+		<artifactId>kop-common-parent</artifactId>
+		<version>1.8.0-SNAPSHOT</version>
+		<relativePath />
+	</parent>
+
+	<groupId>de.itvsh.ozg.pluto</groupId>
+	<artifactId>pluto-common</artifactId>
+	<version>1.12.0-SNAPSHOT</version>
+
+	<name>OZG-Cloud Vorgang Manager Common</name>
+
+	<dependencies>
+		<dependency>
+			<groupId>org.springframework.boot</groupId>
+			<artifactId>spring-boot-starter-web</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.security</groupId>
+			<artifactId>spring-security-core</artifactId>
+		</dependency>
+		
+		<dependency>
+			<groupId>net.devh</groupId>
+			<artifactId>grpc-server-spring-boot-starter</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.boot</groupId>
+			<artifactId>spring-boot-starter-validation</artifactId>
+		</dependency>
+		
+		<!-- TEST -->
+		<dependency>
+			<groupId>org.springframework.security</groupId>
+			<artifactId>spring-security-test</artifactId>
+			<scope>test</scope>
+		</dependency>
+	</dependencies>
+	
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-jar-plugin</artifactId>
+				<executions>
+					<execution>
+						<goals>
+							<goal>test-jar</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+</project>
\ No newline at end of file
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java
similarity index 80%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java
index cfd467fea5943fc6bc0d09d0b824b89c94879d09..4036e250666ccbeddb5af67cfe7e873f68da09e0 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java
+++ b/pluto-common/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java
@@ -32,24 +32,18 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.EnableAspectJAutoProxy;
 import org.springframework.context.annotation.Primary;
 import org.springframework.core.task.AsyncTaskExecutor;
-import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories;
-import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;
 import org.springframework.scheduling.annotation.EnableAsync;
 import org.springframework.scheduling.annotation.EnableScheduling;
 import org.springframework.security.authentication.AuthenticationTrustResolver;
 import org.springframework.security.authentication.AuthenticationTrustResolverImpl;
 import org.springframework.security.task.DelegatingSecurityContextAsyncTaskExecutor;
 
-import io.mongock.runner.springboot.EnableMongock;
-
 @SpringBootApplication(scanBasePackages = { "de.itvsh.*", "de.ozgcloud" })
 @EnableAsync
 @EnableScheduling
 @EnableAspectJAutoProxy(proxyTargetClass = true)
-@EnableMongock
+
 @ConfigurationPropertiesScan("de.itvsh.ozg.pluto.common.*")
-@EnableMongoRepositories(basePackages = { "de.itvsh.ozg.pluto.vorgang", "de.itvsh.ozg.pluto.attached_item", "de.itvsh.ozg.pluto.command" })
-@EnableElasticsearchRepositories(basePackages = "de.itvsh.ozg.pluto.common.search")
 public class PlutoServerApplication {
 
 	public static void main(String[] args) {
@@ -64,7 +58,7 @@ public class PlutoServerApplication {
 
 	@Primary
 	@Bean
-	public DelegatingSecurityContextAsyncTaskExecutor delegatingTaskExecutor(AsyncTaskExecutor applicationTaskExecutor) {
+	DelegatingSecurityContextAsyncTaskExecutor delegatingTaskExecutor(AsyncTaskExecutor applicationTaskExecutor) {
 		return new DelegatingSecurityContextAsyncTaskExecutor(applicationTaskExecutor);
 	}
 }
\ No newline at end of file
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CallContext.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContext.java
similarity index 96%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CallContext.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContext.java
index 629dc7b5290a5fee224855ea80866a0bc4d334ad..b210b49a4a327a526efb7be1773ea5d690b7855f 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CallContext.java
+++ b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContext.java
@@ -21,7 +21,7 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-package de.itvsh.ozg.pluto.command;
+package de.itvsh.ozg.pluto.common.callcontext;
 
 import javax.validation.Valid;
 import javax.validation.constraints.NotNull;
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextAuthenticationToken.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextAuthenticationToken.java
similarity index 100%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextAuthenticationToken.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextAuthenticationToken.java
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptor.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptor.java
similarity index 100%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptor.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptor.java
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUser.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUser.java
similarity index 100%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUser.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUser.java
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserService.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserService.java
similarity index 100%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserService.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserService.java
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/User.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/User.java
similarity index 93%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/command/User.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/User.java
index 6806e0ecec55a974b2bb918680e56c3481245edc..f8e17c72b4c30212a9791c248a7bf1f1815930ca 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/User.java
+++ b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/User.java
@@ -21,11 +21,10 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-package de.itvsh.ozg.pluto.command;
+package de.itvsh.ozg.pluto.common.callcontext;
 
 import javax.validation.constraints.NotNull;
 
-import de.itvsh.ozg.pluto.common.callcontext.CallContextUser;
 import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Getter;
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptor.java b/pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptor.java
similarity index 100%
rename from pluto-server/src/main/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptor.java
rename to pluto-common/src/main/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptor.java
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptorTest.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptorTest.java
similarity index 99%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptorTest.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptorTest.java
index ed65754c53745fdb6e5f05a994586227732ed5ab..18afc477244ba53f14caa93bbcfd7ab950db6392 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptorTest.java
+++ b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextHandleInterceptorTest.java
@@ -37,7 +37,6 @@ import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.springframework.security.core.context.SecurityContextHolder;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextHandleInterceptor.LogContextSettingListener;
 import io.grpc.Metadata;
 import io.grpc.ServerCall;
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextTestFactory.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextTestFactory.java
similarity index 90%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextTestFactory.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextTestFactory.java
index 0f8deb0a3cbced56069fef302cd44776e6dde9ba..091c6db542c1dba00ec1cdce42372c4bb6f10649 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextTestFactory.java
+++ b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextTestFactory.java
@@ -23,17 +23,14 @@
  */
 package de.itvsh.ozg.pluto.common.callcontext;
 
-import static de.itvsh.ozg.pluto.command.UserTestFactory.*;
 import static de.itvsh.ozg.pluto.common.callcontext.CallContextHandleInterceptor.*;
+import static de.itvsh.ozg.pluto.common.callcontext.UserTestFactory.*;
 
 import java.util.Map;
 import java.util.Set;
 import java.util.UUID;
 
 import de.itvsh.kop.common.grpc.GrpcUtil;
-import de.itvsh.ozg.pluto.command.CallContext;
-import de.itvsh.ozg.pluto.command.User;
-import de.itvsh.ozg.pluto.command.UserTestFactory;
 import io.grpc.Metadata;
 
 public class CallContextTestFactory {
@@ -66,7 +63,7 @@ public class CallContextTestFactory {
 
 	public static Metadata createMetadata() {
 		var result = new Metadata();
-		result.put(GrpcUtil.createKeyOf(KEY_USER_ID), ID.getBytes());
+		result.put(GrpcUtil.HEADER_KEY_USER_ID, ID.getBytes());
 		result.put(GrpcUtil.createKeyOf(KEY_USER_NAME), NAME.getBytes());
 		result.put(GrpcUtil.createKeyOf(KEY_CLIENT_NAME), CLIENT.getBytes());
 		result.put(GrpcUtil.createKeyOf(KEY_ACCESS_LIMITED_ORGAID), ORGANISATORISCHE_EINHEITEN_ID.getBytes());
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUserTestFactory.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUserTestFactory.java
similarity index 96%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUserTestFactory.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUserTestFactory.java
index 7ddefbed7d3c65f655b046f8a87cb3d95994b1a7..0d8c361ce37d2e20341052ed4cbbfc117d2a1c73 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUserTestFactory.java
+++ b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CallContextUserTestFactory.java
@@ -25,8 +25,6 @@ package de.itvsh.ozg.pluto.common.callcontext;
 
 import java.util.Optional;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
-
 public class CallContextUserTestFactory {
 
 	public static CallContextUser create() {
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceITCase.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceITCase.java
similarity index 100%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceITCase.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceITCase.java
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceTest.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceTest.java
similarity index 100%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceTest.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/CurrentUserServiceTest.java
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/TestCallContextAttachingInterceptor.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/TestCallContextAttachingInterceptor.java
similarity index 94%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/TestCallContextAttachingInterceptor.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/TestCallContextAttachingInterceptor.java
index 38d6482fb67ea4e5cb16667fa0da4fb4c1a8bbd5..1659041744eb1ac3c309172e5d1c32b1646b9d78 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/TestCallContextAttachingInterceptor.java
+++ b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/TestCallContextAttachingInterceptor.java
@@ -24,7 +24,6 @@
 package de.itvsh.ozg.pluto.common.callcontext;
 
 import de.itvsh.kop.common.grpc.GrpcUtil;
-import de.itvsh.ozg.pluto.vorgang.ZustaendigeStelleTestFactory;
 import io.grpc.CallOptions;
 import io.grpc.Channel;
 import io.grpc.ClientCall;
@@ -38,7 +37,7 @@ import lombok.Setter;
 public class TestCallContextAttachingInterceptor implements ClientInterceptor {
 
 	private final String clientName = CallContextTestFactory.CLIENT;
-	private final String organisationEinheitId = ZustaendigeStelleTestFactory.ORGANISATIONSEINHEIT_ID;
+	private final String organisationEinheitId = "abc123";
 	private final Boolean organisationEinheitIdCheckNecessary = Boolean.TRUE;
 
 	@Override
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/UserTestFactory.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/UserTestFactory.java
similarity index 93%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/command/UserTestFactory.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/UserTestFactory.java
index 2862afe1b0771bcc94e37b66da08bf698d8beee1..914f78a0107b9379ec70e60dadc7373c0c9a94ab 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/UserTestFactory.java
+++ b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/UserTestFactory.java
@@ -21,10 +21,12 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-package de.itvsh.ozg.pluto.command;
+package de.itvsh.ozg.pluto.common.callcontext;
 
 import java.util.UUID;
 
+import de.itvsh.ozg.pluto.common.callcontext.User;
+
 public class UserTestFactory {
 
 	public static final String ID = UUID.randomUUID().toString();
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java b/pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java
similarity index 100%
rename from pluto-server/src/test/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java
rename to pluto-common/src/test/java/de/itvsh/ozg/pluto/common/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java
diff --git a/pluto-common/src/test/resources/META-INF/services/org.junit.jupiter.api.extension.Extension b/pluto-common/src/test/resources/META-INF/services/org.junit.jupiter.api.extension.Extension
new file mode 100644
index 0000000000000000000000000000000000000000..79b126e6cdb86bec1f4f08c205de8961bde1934a
--- /dev/null
+++ b/pluto-common/src/test/resources/META-INF/services/org.junit.jupiter.api.extension.Extension
@@ -0,0 +1 @@
+org.mockito.junit.jupiter.MockitoExtension
\ No newline at end of file
diff --git a/pluto-common/src/test/resources/junit-platform.properties b/pluto-common/src/test/resources/junit-platform.properties
new file mode 100644
index 0000000000000000000000000000000000000000..1cebb76d5a58ac034b2627d12411d82d1e85821e
--- /dev/null
+++ b/pluto-common/src/test/resources/junit-platform.properties
@@ -0,0 +1 @@
+junit.jupiter.extensions.autodetection.enabled = true
\ No newline at end of file
diff --git a/pluto-common/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/pluto-common/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
new file mode 100644
index 0000000000000000000000000000000000000000..ca6ee9cea8ec189a088d50559325d4e84ff8ad09
--- /dev/null
+++ b/pluto-common/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
@@ -0,0 +1 @@
+mock-maker-inline
\ No newline at end of file
diff --git a/pluto-server/pom.xml b/pluto-server/pom.xml
index ac765c8457ea9758cd8a288d348ac079a38f89f9..3cb6ce1dba716c4b0b55b984e2dc0c8e562e8304 100644
--- a/pluto-server/pom.xml
+++ b/pluto-server/pom.xml
@@ -64,11 +64,18 @@
 
 	<dependencies>
 		<!-- own Project -->
+		<dependency>
+			<groupId>de.itvsh.ozg.pluto</groupId>
+			<artifactId>pluto-common</artifactId>
+			<version>${project.version}</version>
+		</dependency>
+		
 		<dependency>
 			<groupId>de.itvsh.ozg.mail</groupId>
 			<artifactId>mail-service</artifactId>
 			<version>${project.version}</version>
 		</dependency>
+		
 		<dependency>
 			<groupId>de.itvsh.ozg.pluto</groupId>
 			<artifactId>pluto-interface</artifactId>
@@ -122,10 +129,7 @@
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter-data-mongodb</artifactId>
 		</dependency>
-		<dependency>
-			<groupId>net.devh</groupId>
-			<artifactId>grpc-server-spring-boot-starter</artifactId>
-		</dependency>
+		
 
 		<!--only required for NachrichtenManager -->
 		<dependency>
@@ -142,24 +146,15 @@
 			<artifactId>spring-webmvc</artifactId>
 		</dependency>
 
-		<dependency>
-			<groupId>org.springframework.boot</groupId>
-			<artifactId>spring-boot-starter-web</artifactId>
-		</dependency>
+		
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter-actuator</artifactId>
 		</dependency>
 
-		<dependency>
-			<groupId>org.springframework.boot</groupId>
-			<artifactId>spring-boot-starter-validation</artifactId>
-		</dependency>
+		
 
-		<dependency>
-			<groupId>org.springframework.security</groupId>
-			<artifactId>spring-security-core</artifactId>
-		</dependency>
+		
 
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
@@ -243,6 +238,13 @@
 			<type>test-jar</type>
 			<scope>test</scope>
 		</dependency>
+		<dependency>
+			<groupId>de.itvsh.ozg.pluto</groupId>
+			<artifactId>pluto-common</artifactId>
+			<version>${project.version}</version>
+			<type>test-jar</type>
+			<scope>test</scope>
+		</dependency>
 		<dependency>
 			<groupId>de.itvsh.ozg.pluto</groupId>
 			<artifactId>pluto-utils</artifactId>
@@ -262,10 +264,13 @@
 				</exclusion>
 			</exclusions>
 		</dependency>
+		
 		<dependency>
 			<groupId>org.springframework.security</groupId>
 			<artifactId>spring-security-test</artifactId>
+			<scope>test</scope>
 		</dependency>
+		
 		<dependency>
 			<groupId>org.springframework.ws</groupId>
 			<artifactId>spring-ws-test</artifactId>
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerConfiguration.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerConfiguration.java
new file mode 100644
index 0000000000000000000000000000000000000000..8cdd25b05b1460815a150f29eadf3dcb68e9368b
--- /dev/null
+++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerConfiguration.java
@@ -0,0 +1,15 @@
+package de.itvsh.ozg.pluto;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories;
+import org.springframework.data.mongodb.repository.config.EnableMongoRepositories;
+
+import io.mongock.runner.springboot.EnableMongock;
+
+@Configuration
+@EnableMongock
+@EnableMongoRepositories(basePackages = { "de.itvsh.ozg.pluto.vorgang", "de.itvsh.ozg.pluto.attached_item", "de.itvsh.ozg.pluto.command" })
+@EnableElasticsearchRepositories(basePackages = "de.itvsh.ozg.pluto.common.search")
+public class PlutoServerConfiguration {
+
+}
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CommandService.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CommandService.java
index 7fd65a282305a9f6cab73ae432e65e85b9b791e8..036aeef80cff4b41b58e71af591b29b141fec594 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CommandService.java
+++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CommandService.java
@@ -38,8 +38,10 @@ import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import de.itvsh.kop.common.errorhandling.TechnicalException;
+import de.itvsh.ozg.pluto.common.callcontext.CallContext;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextUser;
 import de.itvsh.ozg.pluto.common.callcontext.CurrentUserService;
+import de.itvsh.ozg.pluto.common.callcontext.User;
 import lombok.extern.log4j.Log4j2;
 
 @Service
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CreateCommandRequest.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CreateCommandRequest.java
index 33f69869621327b9c26a3c20a9214147a73665e9..dc9303e189a10fe0f881a72facc37fbd39cf927e 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CreateCommandRequest.java
+++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/CreateCommandRequest.java
@@ -28,6 +28,7 @@ import java.util.Map;
 import javax.validation.Valid;
 import javax.validation.constraints.NotNull;
 
+import de.itvsh.ozg.pluto.common.callcontext.CallContext;
 import de.itvsh.ozg.pluto.vorgang.redirect.RedirectRequest;
 import lombok.Builder;
 import lombok.Getter;
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapper.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapper.java
index 223984220cf6ca65eb0cf04f1ce86d640c575269..eeadb56fb649d630417531aa3ac17402e85ff24d 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapper.java
+++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapper.java
@@ -36,7 +36,9 @@ import org.mapstruct.ValueMapping;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import de.itvsh.kop.pluto.common.grpc.GrpcObjectMapper;
+import de.itvsh.ozg.pluto.common.callcontext.CallContext;
 import de.itvsh.ozg.pluto.common.callcontext.CurrentUserService;
+import de.itvsh.ozg.pluto.common.callcontext.User;
 import de.itvsh.ozg.pluto.files.FileIdMapper;
 import de.itvsh.ozg.pluto.grpc.command.GrpcCallContext;
 import de.itvsh.ozg.pluto.grpc.command.GrpcCreateCommandRequest;
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/PersistPostfachNachrichtByCommandService.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/PersistPostfachNachrichtByCommandService.java
index a8b13be6bdfdc6f31af52effdd0f92baa6201fcd..ea4f3fcaeb93e4c2257dbc5ca2177db0926048d1 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/PersistPostfachNachrichtByCommandService.java
+++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/command/PersistPostfachNachrichtByCommandService.java
@@ -54,6 +54,8 @@ import de.itvsh.ozg.mail.postfach.StringBasedIdentifier;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItem;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemMapper;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemService;
+import de.itvsh.ozg.pluto.common.callcontext.CallContext;
+import de.itvsh.ozg.pluto.common.callcontext.User;
 import de.itvsh.ozg.pluto.files.FileService;
 import de.itvsh.ozg.pluto.files.OzgFile;
 import de.itvsh.ozg.pluto.files.UploadedFilesReference;
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/converter/CustomConverters.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/converter/CustomConverters.java
index 32935637c19c20482d07b97c7759bcfd0956c89c..08bf05f33967e022e32f2945e423669af42e368e 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/converter/CustomConverters.java
+++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/converter/CustomConverters.java
@@ -33,7 +33,7 @@ import org.springframework.data.mongodb.core.convert.MongoCustomConversions;
 public class CustomConverters {
 
 	@Bean
-	public MongoCustomConversions mongoCustomConversions() {
+	MongoCustomConversions mongoCustomConversions() {
 
 		return new MongoCustomConversions(
 				Arrays.asList(
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandServiceTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandServiceTest.java
index a4b1a702240676102f2eb79912f1474eb403c211..fbe6e94b28dd2ed4ac859ae81507d45d85341882 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandServiceTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandServiceTest.java
@@ -46,6 +46,7 @@ import de.itvsh.kop.common.errorhandling.TechnicalException;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextTestFactory;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextUserTestFactory;
 import de.itvsh.ozg.pluto.common.callcontext.CurrentUserService;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 
 class CommandServiceTest {
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java
index 134bb0c6a531292338879295b84fbf0d1df90c79..dd98d1a26209deabf98d9b9fd98760021d368d65 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CommandTestFactory.java
@@ -28,6 +28,7 @@ import java.util.Map;
 import java.util.UUID;
 
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 
 public class CommandTestFactory {
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CreateCommandRequestTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CreateCommandRequestTestFactory.java
index ef097e9cf9395b423593eacbc36cd710bbad589d..6ccc87452c27f74b3e4b102bc71b1b3d46f6eaa0 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CreateCommandRequestTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/CreateCommandRequestTestFactory.java
@@ -23,6 +23,7 @@
  */
 package de.itvsh.ozg.pluto.command;
 
+import de.itvsh.ozg.pluto.common.callcontext.CallContext;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextTestFactory;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapperTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapperTest.java
index d6ab033eb1fa3ac484b3d992685203136ff24205..1dc2be34bc419a5a3588237e919941c9e0b9e60d 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapperTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcCreateCommandRequestMapperTest.java
@@ -32,7 +32,9 @@ import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Spy;
 
+import de.itvsh.ozg.pluto.common.callcontext.CallContext;
 import de.itvsh.ozg.pluto.common.callcontext.CurrentUserService;
+import de.itvsh.ozg.pluto.common.callcontext.User;
 import de.itvsh.ozg.pluto.files.FileIdMapper;
 import de.itvsh.ozg.pluto.grpc.command.GrpcCreateCommandRequest;
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcUserTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcUserTestFactory.java
index 3aec033e05bc378e2321e1b51b601b27be58bbf9..25ddffb0b3e5a7e742c5635321f92e5a0cd5d389 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcUserTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/GrpcUserTestFactory.java
@@ -25,6 +25,7 @@ package de.itvsh.ozg.pluto.command;
 
 import java.util.List;
 
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.grpc.command.GrpcUser;
 
 public class GrpcUserTestFactory {
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceITCase.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceITCase.java
index b70be8c74acd684aff5ef29fb08d285c2173ab58..8326c5b81b879f10c652e3a84f17af6924099b5a 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceITCase.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceITCase.java
@@ -37,6 +37,7 @@ import de.itvsh.kop.common.test.DataITCase;
 import de.itvsh.ozg.mail.postfach.PostfachNachrichtTestFactory;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItem;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.Vorgang;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceTest.java
index 73452780d665ad2d3fea910b978abf8f56c7729f..24226e21e5f29f2580d4fdb2f3085b7d033caf25 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/command/PersistPostfachMailByCommandServiceTest.java
@@ -50,6 +50,7 @@ import de.itvsh.ozg.mail.postfach.osi.MessageTestFactory;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemMapper;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemService;
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.files.FileId;
 import de.itvsh.ozg.pluto.files.FileService;
 import de.itvsh.ozg.pluto.files.OzgFile;
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangMapperTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangMapperTest.java
index 6d97a823c1f103d82921ac7f51b2bbff5388a8ae..ead3f0cd5cc3045434d07ffef04902d0d9c7225f 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangMapperTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangMapperTest.java
@@ -29,7 +29,7 @@ import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
 import org.mapstruct.factory.Mappers;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.AntragstellerTestFactory;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 import de.itvsh.ozg.pluto.vorgang.ZustaendigeStelleTestFactory;
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangTestFactory.java
index 2655fa8ca1a2378eafaff79a7f48c680316c386d..936f98a66d8663f4bf2b70990139cca07d6c0b06 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/IndexedVorgangTestFactory.java
@@ -25,7 +25,7 @@ package de.itvsh.ozg.pluto.common.search;
 
 import java.time.ZonedDateTime;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.AntragstellerTestFactory;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 import de.itvsh.ozg.pluto.vorgang.ZustaendigeStelleTestFactory;
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java
index 8a560c2f5e46b272242d9b4288c5f990665a9bdc..6896c805331c47ad7efbac522d6b0da606055bc6 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java
@@ -39,7 +39,7 @@ import org.springframework.data.elasticsearch.core.SearchHit;
 import org.springframework.data.elasticsearch.core.SearchHits;
 import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.FilterCriteriaTestFactory;
 import de.itvsh.ozg.pluto.vorgang.FindVorgangRequestTestFactory;
 import de.itvsh.ozg.pluto.vorgang.Vorgang.Status;
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/security/PolicyServiceTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/security/PolicyServiceTest.java
index 487aa2992e92138d2c34d993ce2ee66f182646ca..32fd829a3bd1d903ad7ec0417e95d8ebebc507f3 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/security/PolicyServiceTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/security/PolicyServiceTest.java
@@ -46,10 +46,10 @@ import org.springframework.security.access.AccessDeniedException;
 
 import de.itvsh.ozg.pluto.attached_item.VorgangAttachedItemTestFactory;
 import de.itvsh.ozg.pluto.command.CommandTestFactory;
-import de.itvsh.ozg.pluto.command.UserTestFactory;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextUser;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextUserTestFactory;
 import de.itvsh.ozg.pluto.common.callcontext.CurrentUserService;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.files.GridFsTestFactory;
 import de.itvsh.ozg.pluto.files.OzgFileTestFactory;
 import de.itvsh.ozg.pluto.vorgang.Vorgang;
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryITCase.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryITCase.java
index b81dd7d70ec31308c444b91e8dc71986a346b5ac..94b70170c7632e706a8c379f48e4e761dbb3d4e8 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryITCase.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryITCase.java
@@ -41,7 +41,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.mongodb.core.MongoTemplate;
 
 import de.itvsh.kop.common.test.DataITCase;
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.IncomingFileTestFactory;
 
 @DataITCase
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryTest.java
index a6f90ddacdd603ef90aa23b47f479e463bb8a229..c4c2df7e48807d2075726d86505a10328a57cf14 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/BinaryFileRepositoryTest.java
@@ -41,8 +41,8 @@ import org.springframework.data.mongodb.gridfs.GridFsTemplate;
 
 import static org.assertj.core.api.Assertions.*;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.IncomingFileTestFactory;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/GridFsTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/GridFsTestFactory.java
index 813880b01e7be182a5c17d5ca68686276dcbaa85..4640b3a04d4f9b8c3484dd2487de5389215b0b27 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/GridFsTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/files/GridFsTestFactory.java
@@ -33,8 +33,8 @@ import org.springframework.data.mongodb.util.BsonUtils;
 
 import com.mongodb.client.gridfs.model.GridFSFile;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
 import de.itvsh.ozg.pluto.common.callcontext.CallContextTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.VorgangTestFactory;
 
 public class GridFsTestFactory {
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/FilterCriteriaTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/FilterCriteriaTestFactory.java
index 1d4babb7ee92b63b154e22a38c86f3e8fab5e9a3..a1f52ec82dc857f03f8bb11b9da5a6faccf2afa2 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/FilterCriteriaTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/FilterCriteriaTestFactory.java
@@ -23,7 +23,7 @@
  */
 package de.itvsh.ozg.pluto.vorgang;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.Vorgang.Status;
 
 public class FilterCriteriaTestFactory {
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/GrpcFilterByTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/GrpcFilterByTestFactory.java
index 015277b768b204d28a0d99263611734e2f632796..3b597282c4d31448d7f590867b809237c4efa8b2 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/GrpcFilterByTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/GrpcFilterByTestFactory.java
@@ -25,7 +25,7 @@ package de.itvsh.ozg.pluto.vorgang;
 
 import static de.itvsh.ozg.pluto.vorgang.FilterCriteriaTestFactory.*;
 
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 
 public class GrpcFilterByTestFactory {
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangHeaderRepositoryITCase.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangHeaderRepositoryITCase.java
index 9a1b8b91a62471da55e62ab005487b1a99310ddc..ae133a109cce91c0e4255189d4b4c68484f2cad1 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangHeaderRepositoryITCase.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangHeaderRepositoryITCase.java
@@ -53,7 +53,7 @@ import de.itvsh.ozg.pluto.clientattribute.ClientAttributeMap;
 import de.itvsh.ozg.pluto.clientattribute.ClientAttributeTestFactory;
 import de.itvsh.ozg.pluto.clientattribute.ClientAttributesMap;
 import de.itvsh.ozg.pluto.clientattribute.ClientAttributesMapTestFactory;
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.FindVorgangRequest.OrderCriteria;
 import de.itvsh.ozg.pluto.vorgang.Vorgang.Status;
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangTestFactory.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangTestFactory.java
index 5cfb09ebe195c96f4ef4eed635b4400f37a28e9e..d8b8293f77570aabc3ae65eb2d8cfbd86c1d7904 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangTestFactory.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/vorgang/VorgangTestFactory.java
@@ -31,7 +31,7 @@ import com.thedeanda.lorem.LoremIpsum;
 
 import de.itvsh.ozg.pluto.clientattribute.ClientAttributesMap;
 import de.itvsh.ozg.pluto.clientattribute.ClientAttributesMapTestFactory;
-import de.itvsh.ozg.pluto.command.UserTestFactory;
+import de.itvsh.ozg.pluto.common.callcontext.UserTestFactory;
 import de.itvsh.ozg.pluto.vorgang.Vorgang.Status;
 
 public class VorgangTestFactory {
diff --git a/pom.xml b/pom.xml
index e529cbcac1dc607547cc8a67c71a66a8f4a7fecb..d8c02e531b14c3ba33766ea7828f5474a7e5b25f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,6 +46,7 @@
 		<module>notification-manager</module>
 		<module>pluto-command</module>
 		<module>bescheid-manager</module>
+		<module>pluto-common</module>
 	</modules>
 
 	<build>