diff --git a/src/main/java/de/ozgcloud/processor/result/AktennotizFactory.java b/src/main/java/de/ozgcloud/processor/result/AktennotizFactory.java
index 6db10a803f40301eb344db18da27fa3ab0f35c92..ab21c063e9669b00f07e5af63e0c3552e097b229 100644
--- a/src/main/java/de/ozgcloud/processor/result/AktennotizFactory.java
+++ b/src/main/java/de/ozgcloud/processor/result/AktennotizFactory.java
@@ -23,6 +23,7 @@
  */
 package de.ozgcloud.processor.result;
 
+import org.apache.commons.lang3.exception.ExceptionUtils;
 import org.springframework.stereotype.Component;
 
 import de.ozgcloud.processor.ProcessorManagerConfiguration;
@@ -34,7 +35,8 @@ public class AktennotizFactory {
 
 	static final String AKTENNOTIZ_ERROR_TEXT = """
 			Bei der Verarbeitung im Processor '%s' ist ein Fehler aufgetreten.
-			ExceptionId: %s
+			ExceptionId: %s.
+			Meldung: %s.
 			""";
 
 	public Aktennotiz createFrom(ProcessorResult processorResult) {
@@ -47,9 +49,9 @@ public class AktennotizFactory {
 				.build();
 	}
 
-	public Aktennotiz createErrorAktennotiz(VorgangId vorgangId, String processorName, String exceptionId) {
-		return createErrorAktennotizBuilder(vorgangId)
-				.text(buildErrorText(processorName, exceptionId))
+	public Aktennotiz createErrorAktennotiz(ProcessorTechnicalException e) {
+		return createErrorAktennotizBuilder(VorgangId.from(e.getVorgangId()))
+				.text(buildErrorText(e.getProcessorName(), e.getExceptionId(), ExceptionUtils.getRootCauseMessage(e)))
 				.build();
 	}
 
@@ -60,8 +62,8 @@ public class AktennotizFactory {
 				.headline("Fehler");
 	}
 
-	String buildErrorText(String processorName, String exceptionId) {
-		return AKTENNOTIZ_ERROR_TEXT.formatted(processorName, exceptionId);
+	String buildErrorText(String processorName, String exceptionId, String causeMessage) {
+		return AKTENNOTIZ_ERROR_TEXT.formatted(processorName, exceptionId, causeMessage);
 	}
 
 }
diff --git a/src/main/java/de/ozgcloud/processor/result/ResultService.java b/src/main/java/de/ozgcloud/processor/result/ResultService.java
index 3e041010602c5e74f09832185000a515a4f53a97..c809ca953875736cfff7b226571fa4fdd7066554 100644
--- a/src/main/java/de/ozgcloud/processor/result/ResultService.java
+++ b/src/main/java/de/ozgcloud/processor/result/ResultService.java
@@ -54,12 +54,10 @@ public class ResultService {
 
 	public void processError(Throwable cause, VorgangId vorgangId) {
 		if (cause instanceof ProcessorTechnicalException exception) {
-			addAktenNotiz(
-					aktennotizFactory.createErrorAktennotiz(VorgangId.from(exception.getVorgangId()), exception.getProcessorName(),
-							exception.getExceptionId()));
+			addAktenNotiz(aktennotizFactory.createErrorAktennotiz(exception));
 		} else {
 			addAktenNotiz(aktennotizFactory.createErrorAktennotizBuilder(vorgangId)
-					.text("Es ist eine Fehler bei der Verarbeitung des Vorganges aufgetreten").build());
+					.text("Es ist eine Fehler bei der Verarbeitung des Vorganges aufgetreten.").build());
 		}
 	}
 
diff --git a/src/test/java/de/ozgcloud/processor/result/AktennotizFactoryTest.java b/src/test/java/de/ozgcloud/processor/result/AktennotizFactoryTest.java
index 561ffe55d404bb22dc65c9a1e4ab7c7406d409ef..18d5938f2ae4886445ce5502b5159ca02e61fcb8 100644
--- a/src/test/java/de/ozgcloud/processor/result/AktennotizFactoryTest.java
+++ b/src/test/java/de/ozgcloud/processor/result/AktennotizFactoryTest.java
@@ -108,7 +108,7 @@ class AktennotizFactoryTest {
 		@Test
 		void shouldSetText() {
 			var errorText = "errorText";
-			doReturn(errorText).when(factory).buildErrorText(anyString(), anyString());
+			doReturn(errorText).when(factory).buildErrorText(anyString(), anyString(), anyString());
 
 			var aktennotiz = createErrorAktennotiz();
 
@@ -116,7 +116,7 @@ class AktennotizFactoryTest {
 		}
 
 		private Aktennotiz createErrorAktennotiz() {
-			return factory.createErrorAktennotiz(VORGANG_ID, PROCESSOR_NAME, EXCEPTION_ID);
+			return factory.createErrorAktennotiz(new ProcessorTechnicalException(VORGANG_ID.toString(), PROCESSOR_NAME, EXCEPTION_ID));
 		}
 	}
 
@@ -127,7 +127,7 @@ class AktennotizFactoryTest {
 		void shouldAddProcessorName() {
 			var processorName = "processorName";
 
-			var errorText = factory.buildErrorText(processorName, "");
+			var errorText = factory.buildErrorText(processorName, "", "");
 
 			assertThat(errorText).contains(processorName);
 		}
@@ -136,9 +136,18 @@ class AktennotizFactoryTest {
 		void shouldAddExceptionId() {
 			var exceptionId = "exceptionId";
 
-			var errorText = factory.buildErrorText("", exceptionId);
+			var errorText = factory.buildErrorText("", exceptionId, "");
 
 			assertThat(errorText).contains(exceptionId);
 		}
+
+		@Test
+		void shouldAddRootCause() {
+			var rootCause = "cause";
+
+			var errorText = factory.buildErrorText("", "", rootCause);
+
+			assertThat(errorText).contains(rootCause);
+		}
 	}
 }
\ No newline at end of file
diff --git a/src/test/java/de/ozgcloud/processor/result/ResultServiceTest.java b/src/test/java/de/ozgcloud/processor/result/ResultServiceTest.java
index 1de5efb5f9e81a6b3a98fa4ec51816f29c739fe2..4287d42c2396c4cc97760183aa2a6c2d89907be9 100644
--- a/src/test/java/de/ozgcloud/processor/result/ResultServiceTest.java
+++ b/src/test/java/de/ozgcloud/processor/result/ResultServiceTest.java
@@ -38,7 +38,6 @@ import de.ozgcloud.apilib.vorgang.OzgCloudVorgangId;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangIdMapper;
 import de.ozgcloud.processor.processor.ProcessorResult;
 import de.ozgcloud.processor.processor.ProcessorResultTestFactory;
-import de.ozgcloud.processor.processor.ProcessorTestFactory;
 import de.ozgcloud.processor.vorgang.VorgangTestFactory;
 
 class ResultServiceTest {
@@ -83,26 +82,19 @@ class ResultServiceTest {
 	@Nested
 	class TestProcessError {
 
-		private static final String EXCEPTION_ID = "exceptionId";
-
 		@Mock
 		private ProcessorTechnicalException exception;
 
 		@BeforeEach
 		void setup() {
-			when(exception.getVorgangId()).thenReturn(VorgangTestFactory.ID.toString());
-			when(exception.getExceptionId()).thenReturn(EXCEPTION_ID);
-			when(aktennotizFactory.createErrorAktennotiz(any(), any(), any())).thenReturn(aktennotiz);
+			when(aktennotizFactory.createErrorAktennotiz(any())).thenReturn(aktennotiz);
 		}
 
 		@Test
 		void shouldCallCreateErrorAktennotiz() {
-			when(exception.getProcessorName()).thenReturn(ProcessorTestFactory.PROCESSOR_NAME);
-			when(exception.getExceptionId()).thenReturn(EXCEPTION_ID);
-
 			resultService.processError(exception, VorgangTestFactory.ID);
 
-			verify(aktennotizFactory).createErrorAktennotiz(VorgangTestFactory.ID, ProcessorTestFactory.PROCESSOR_NAME, EXCEPTION_ID);
+			verify(aktennotizFactory).createErrorAktennotiz(exception);
 		}
 
 		@Test