diff --git a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapper.java b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapper.java
index 40b324dbdd4cdb25229e037a426cb8f19dd9fd07..8db87c762e8ec704b791b8744f3182f2fcd63a8e 100644
--- a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapper.java
+++ b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapper.java
@@ -43,5 +43,6 @@ public interface FormCycleFormDataMapper {
 	@Mapping(target = "zustaendigeStelle.organisationseinheitenId", source = "header.organisationsEinheitId")
 	@Mapping(target = "header.formEngineName", constant = "FormCycle")
 	@Mapping(target = "header.createdAt", source = "header.receivedAt")
+	@Mapping(target = "header.requestId", source = "header.requestId", defaultExpression = "java(java.util.UUID.randomUUID().toString())")
 	FormData toFormData(FormCycleFormData fcFormData);
 }
diff --git a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java
index 06206c9f99a6bc1d9442c5452979f90090faa60a..4e6fbc510208c4bc5154d7b6e98327c938cc2af4 100644
--- a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java
+++ b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java
@@ -81,11 +81,11 @@ class FormDataController {
 
 		semantikAdapter.processFormData(mappedFormData);
 
-		return FormCycleConfirmationResponse.newBuilder().setVorgangNummer(mappedFormData.getHeader().getRequestId()).build();
+		return FormCycleConfirmationResponse.newBuilder().setVorgangNummer(mappedFormData.getHeader().getVorgangNummer()).build();
 	}
 
 	private FormData addVorgangNummer(FormData mappedFormData) {
-		var formDataHeader = mappedFormData.getHeader().toBuilder().requestId(vorgangNummerSupplier.get()).build();
+		var formDataHeader = mappedFormData.getHeader().toBuilder().vorgangNummer(vorgangNummerSupplier.get()).build();
 		return mappedFormData.toBuilder().header(formDataHeader).build();
 	}
 
diff --git a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapperTest.java b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapperTest.java
index e12156bc8c9ca0f7194f5f8134bc070669d73e04..feb214cccd2dca6533c39109f6f85619be567304 100644
--- a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapperTest.java
+++ b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormDataMapperTest.java
@@ -31,6 +31,7 @@ import org.mapstruct.factory.Mappers;
 import org.mockito.InjectMocks;
 import org.mockito.Spy;
 
+import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory;
 import de.ozgcloud.vorgang.common.grpc.GrpcFormDataMapper;
 
 class FormCycleFormDataMapperTest {
@@ -46,9 +47,12 @@ class FormCycleFormDataMapperTest {
 
 		@Test
 		void shouldMapHeader() {
+			var expectedFormHeader = FormHeaderTestFactory.create();
+
 			var mapped = mapper.toFormData(FormCycleFormDataTestFactory.create());
 
-			assertThat(mapped.getHeader()).isNotNull();
+			assertThat(mapped.getHeader()).usingRecursiveComparison()
+					.ignoringFields("vorgangNummer", "sender", "formEngineName", "serviceKonto").isEqualTo(expectedFormHeader);
 		}
 
 		@Test
diff --git a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormHeaderTestFactory.java b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormHeaderTestFactory.java
index 04a0737a8b81102864d16dfca6c6ee1e7910d9ca..3065efa67f043925acf7204557ede13253660b10 100644
--- a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormHeaderTestFactory.java
+++ b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormCycleFormHeaderTestFactory.java
@@ -23,12 +23,12 @@
  */
 package de.ozgcloud.eingang.formcycle;
 
+import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory;
 import de.ozgcloud.eingang.formcycle.FormCycleFormHeader.Builder;
 
 public class FormCycleFormHeaderTestFactory {
 
-	static final String RECEIVED_AT = "2022-12-24T18:00:00Z";
-	static final String FORM_NAME = "test form 1";
+	static final String RECEIVED_AT = FormHeaderTestFactory.CREATED_AT_STR;
 	static final String ORGANISATIONSEINHEIT_ID = "9030229";
 
 	static FormCycleFormHeader create() {
@@ -37,8 +37,10 @@ public class FormCycleFormHeaderTestFactory {
 
 	static Builder createBuilder() {
 		return FormCycleFormHeader.newBuilder()
-				.setFormName(FORM_NAME)
+				.setRequestId(FormHeaderTestFactory.REQUEST_ID)
+				.setFormName(FormHeaderTestFactory.FORM_NAME)
 				.setReceivedAt(RECEIVED_AT)
+				.setFormId(FormHeaderTestFactory.FORM_ID)
 				.setOrganisationsEinheitId(ORGANISATIONSEINHEIT_ID);
 	}
 }
diff --git a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java
index 25a588403ce89dc7c6bfa1cd89a5972f0ef2a458..06704947aea190ae8c3ee084a492c3b6d808e479 100644
--- a/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java
+++ b/formcycle-adapter/formcycle-adapter-impl/src/test/java/de/ozgcloud/eingang/formcycle/FormDataControllerTest.java
@@ -51,6 +51,7 @@ import org.springframework.test.web.servlet.setup.MockMvcBuilders;
 import de.ozgcloud.eingang.common.formdata.FormData;
 import de.ozgcloud.eingang.common.formdata.FormDataTestFactory;
 import de.ozgcloud.eingang.common.formdata.FormHeader;
+import de.ozgcloud.eingang.common.formdata.FormHeaderTestFactory;
 import de.ozgcloud.eingang.common.formdata.IncomingFileGroupTestFactory;
 import de.ozgcloud.eingang.common.formdata.IncomingFileTestFactory;
 import de.ozgcloud.eingang.common.formdata.ServiceKonto.PostfachAddress;
@@ -87,8 +88,6 @@ class FormDataControllerTest {
 	@Nested
 	class ReceiveFormData {
 
-		static final String VORGANG_NUMMER = "VorgangNummer";
-
 		private FormData mappedFormData = FormDataTestFactory.create();
 
 		@Captor
@@ -98,7 +97,7 @@ class FormDataControllerTest {
 		void init() {
 			when(htmlCleaner.clean(any())).thenReturn(mappedFormData);
 			when(mapper.toFormData(any())).thenReturn(mappedFormData);
-			when(vorgangNummerSupplier.get()).thenReturn(VORGANG_NUMMER);
+			when(vorgangNummerSupplier.get()).thenReturn(FormHeaderTestFactory.VORGANG_NUMMER);
 		}
 
 		@Test
@@ -120,7 +119,7 @@ class FormDataControllerTest {
 			var confirmation = FormCycleConfirmationResponse.parseFrom(
 					doPostRequest().andReturn().getResponse().getContentAsByteArray());
 
-			assertThat(confirmation.getVorgangNummer()).isEqualTo(VORGANG_NUMMER);
+			assertThat(confirmation.getVorgangNummer()).isEqualTo(FormHeaderTestFactory.VORGANG_NUMMER);
 		}
 
 		@Test
@@ -128,7 +127,7 @@ class FormDataControllerTest {
 			doPostRequest();
 
 			verify(semantikAdapter).processFormData(formDataCaptor.capture());
-			assertThat(formDataCaptor.getValue().getHeader().getRequestId()).isEqualTo(VORGANG_NUMMER);
+			assertThat(formDataCaptor.getValue().getHeader().getRequestId()).isEqualTo(FormHeaderTestFactory.REQUEST_ID);
 		}
 
 		@Test
@@ -151,7 +150,7 @@ class FormDataControllerTest {
 
 			verify(semantikAdapter).processFormData(formDataCaptor.capture());
 			assertThat(formDataCaptor.getValue()).usingRecursiveComparison()
-					.ignoringFields("representations", "attachments", "numberOfAttachments", "header.requestId")
+					.ignoringFields("representations", "attachments", "numberOfAttachments")
 					.isEqualTo(mappedFormData);
 		}
 
diff --git a/formcycle-adapter/formcycle-adapter-interface/src/main/protobuf/form-data.model.proto b/formcycle-adapter/formcycle-adapter-interface/src/main/protobuf/form-data.model.proto
index ccac014c15c44f208360b6c4dc8c0d23d4e77504..28ff49ebad2b3dba76a536a6df872d2f43ed210e 100644
--- a/formcycle-adapter/formcycle-adapter-interface/src/main/protobuf/form-data.model.proto
+++ b/formcycle-adapter/formcycle-adapter-interface/src/main/protobuf/form-data.model.proto
@@ -47,6 +47,8 @@ message FormCycleFormHeader {
 	string receivedAt = 1;
 	string formName = 2;
 	string organisationsEinheitId = 3;
+	string formId = 4;
+	string requestId = 5;
 }
 
 message FormCycleServiceKonto {