diff --git a/src/main/java/de/ozgcloud/admin/AdministrationRepositoryRestConfigurer.java b/src/main/java/de/ozgcloud/admin/AdministrationRepositoryRestConfigurer.java
index 31bcf3b864fd772838ebe1ef3555084c984af6b6..413e34e2660a44eebad1fbfd3301e7b470fea264 100644
--- a/src/main/java/de/ozgcloud/admin/AdministrationRepositoryRestConfigurer.java
+++ b/src/main/java/de/ozgcloud/admin/AdministrationRepositoryRestConfigurer.java
@@ -34,9 +34,12 @@ import de.ozgcloud.admin.common.DelegatingValidatorAdapter;
 @Configuration
 public class AdministrationRepositoryRestConfigurer implements RepositoryRestConfigurer {
 
+	private static final DelegatingValidatorAdapter DELEGATING_VALIDATOR_ADAPTER = new DelegatingValidatorAdapter(
+			Validation.buildDefaultValidatorFactory().getValidator());
+
 	@Override
 	public void configureValidatingRepositoryEventListener(ValidatingRepositoryEventListener listener) {
-		var validator = Validation.buildDefaultValidatorFactory().getValidator();
-		listener.addValidator("beforeCreate", new DelegatingValidatorAdapter(validator));
+		listener.addValidator("beforeCreate", DELEGATING_VALIDATOR_ADAPTER);
+		listener.addValidator("beforeSave", DELEGATING_VALIDATOR_ADAPTER);
 	}
 }
diff --git a/src/main/java/de/ozgcloud/admin/reporting/AggregationMapping.java b/src/main/java/de/ozgcloud/admin/reporting/AggregationMapping.java
index 532c3ad607f2f5627bc25ffeb75e7bae09127eed..888b17da08a84f217a5794788582c916f146252b 100644
--- a/src/main/java/de/ozgcloud/admin/reporting/AggregationMapping.java
+++ b/src/main/java/de/ozgcloud/admin/reporting/AggregationMapping.java
@@ -23,6 +23,8 @@
  */
 package de.ozgcloud.admin.reporting;
 
+import static de.ozgcloud.admin.common.errorhandling.ValidationMessageCodes.*;
+
 import java.util.List;
 
 import jakarta.validation.Valid;
@@ -41,26 +43,28 @@ import lombok.Singular;
 import lombok.ToString;
 import lombok.extern.jackson.Jacksonized;
 
-@Document("settings")
+@Document(AggregationMapping.COLLECTION_NAME)
 @TypeAlias(AggregationMapping.TYPE_ALIAS)
 @Jacksonized
 @Builder
 @Getter
 @ToString
 public class AggregationMapping {
+	static final String COLLECTION_NAME = "aggregationMapping";
 
 	public static final String TYPE_ALIAS = "AggregationMapping";
 
 	@Id
 	@JsonIgnore
 	private String id;
-	@Builder.Default
-	private String name = "aggregationMapping";
+
+	@NotEmpty(message = FIELD_IS_EMPTY)
+	private String name;
 
 	@Valid
 	private FormIdentifier formIdentifier;
 
-	@NotEmpty
+	@NotEmpty(message = FIELD_IS_EMPTY)
 	@Singular
 	@Valid
 	private List<FieldMapping> mappings;
@@ -69,9 +73,9 @@ public class AggregationMapping {
 	@Getter
 	@ToString
 	static class FieldMapping {
-		@NotBlank
+		@NotBlank(message = FIELD_IS_EMPTY)
 		private String sourcePath;
-//		@NotBlank //TODO reactivate in OZG-7668
+		@NotBlank(message = FIELD_IS_EMPTY)
 		private String targetPath;
 	}
 
@@ -79,9 +83,9 @@ public class AggregationMapping {
 	@Getter
 	@ToString
 	static class FormIdentifier {
-		@NotBlank
+		@NotBlank(message = FIELD_IS_EMPTY)
 		private String formEngineName;
-		@NotBlank
+		@NotBlank(message = FIELD_IS_EMPTY)
 		private String formId;
 	}
 }
diff --git a/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingMapper.java b/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingMapper.java
index 81a25c3042c172767fa810162764de2d72b9b3d9..90409fd551d3006d2e935e89630033391b6c22a9 100644
--- a/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingMapper.java
+++ b/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingMapper.java
@@ -34,5 +34,5 @@ public interface AggregationMappingMapper {
 
 	@Mapping(target = "fieldMapping", ignore = true)
 	@Mapping(target = "fieldMappings", source = "mappings")
-	AggregationMappingDto toMapping(AggregationMapping setting);
+	AggregationMappingDto toMapping(AggregationMapping aggregationMapping);
 }
diff --git a/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java b/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java
index 0e0ad48f395146377f054202154acad18819ccae..afaaaed64b05413fff0613a1c63a6cd83be5e2e0 100644
--- a/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java
+++ b/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java
@@ -23,12 +23,11 @@
  */
 package de.ozgcloud.admin.reporting;
 
-import java.util.stream.Stream;
+import java.util.List;
 
 import de.ozgcloud.admin.common.DtoService;
 import de.ozgcloud.admin.common.SettingDtoService;
 import de.ozgcloud.admin.setting.SettingConstants;
-import de.ozgcloud.admin.setting.SettingRepository;
 import lombok.RequiredArgsConstructor;
 
 @RequiredArgsConstructor
@@ -37,16 +36,16 @@ class ReportingAggregationManagerSettingDtoService implements SettingDtoService
 
 	private final AggregationMappingMapper mapper;
 
-	private final SettingRepository repository;
+	private final AggregationMappingRepository repository;
 
 	@Override
 	public ReportingAggregationManagerSettingDto getDataTransferObject() {
-		return mapToDto(repository.findByType("AggregationMapping", AggregationMapping.class));
+		return mapToDto(repository.findAll());
 	}
 
-	ReportingAggregationManagerSettingDto mapToDto(Stream<AggregationMapping> settings) {
+	ReportingAggregationManagerSettingDto mapToDto(List<AggregationMapping> aggregationMappings) {
 		return ReportingAggregationManagerSettingDto.builder()
-				.aggregationMappings(settings.map(mapper::toMapping).toList())
+				.aggregationMappings(aggregationMappings.stream().map(mapper::toMapping).toList())
 				.build();
 	}
 
diff --git a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java
index 0457a9e38745efb52c02b6c24edd9a5169cd6073..6425ab46f63a9444d8a18261d29c32b5155bd10d 100644
--- a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java
+++ b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java
@@ -98,7 +98,7 @@ public class AggregationMappingEnvironmentSettingITCase {
 							.targetPath(YamlTestFactory.TARGET_PATH_2_2).build())
 					.build();
 
-			mongoOperations.dropCollection("settings");
+			mongoOperations.dropCollection(AggregationMapping.COLLECTION_NAME);
 			mongoOperations.save(aggregationMapping1);
 			mongoOperations.save(aggregationMapping2);
 		}
diff --git a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java
index a92bcc6b3e210f27a066f54f3dc28db551f45086..8012939ce12cd2313b32e28bc7a116f6d267ebe5 100644
--- a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java
+++ b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java
@@ -47,7 +47,7 @@ class AggregationMappingRepositoryITCase {
 
 	@BeforeEach
 	void dropCollection() {
-		operations.dropCollection("settings");
+		operations.dropCollection(AggregationMapping.COLLECTION_NAME);
 	}
 
 	@Test
diff --git a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingTestFactory.java b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingTestFactory.java
index 5d41bec21628058b6a5f84ef2858746b1b348d26..e005eda541b797c10d47f8c6f161b92d80bb2e26 100644
--- a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingTestFactory.java
+++ b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingTestFactory.java
@@ -31,6 +31,7 @@ import de.ozgcloud.admin.reporting.AggregationMapping.FormIdentifier;
 public class AggregationMappingTestFactory {
 
 	public static final String ID = UUID.randomUUID().toString();
+	public static final String NAME = "Test Auswertung";
 	public static final String FORM_ENGINE_NAME = "A12";
 	public static final String FORM_ID = "42";
 
@@ -44,6 +45,7 @@ public class AggregationMappingTestFactory {
 	public static AggregationMapping.AggregationMappingBuilder createBuilder() {
 		return AggregationMapping.builder()
 				.id(UUID.randomUUID().toString())
+				.name(NAME)
 				.formIdentifier(FormIdentifier.builder()
 						.formEngineName(FORM_ENGINE_NAME)
 						.formId(FORM_ID)
diff --git a/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java b/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java
index 38b5d5e310295cecf06d3fd9d4ff723f14c00d54..412869536adf67ea9f470d6840d2c1d0a1ff1630 100644
--- a/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java
+++ b/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java
@@ -27,7 +27,7 @@ import static org.assertj.core.api.Assertions.*;
 import static org.mockito.ArgumentMatchers.*;
 import static org.mockito.Mockito.*;
 
-import java.util.stream.Stream;
+import java.util.List;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Nested;
@@ -38,8 +38,6 @@ import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Spy;
 
-import de.ozgcloud.admin.setting.SettingRepository;
-
 class ReportingAggregationManagerSettingDtoServiceTest {
 
 	@Spy
@@ -49,7 +47,7 @@ class ReportingAggregationManagerSettingDtoServiceTest {
 	@Mock
 	private AggregationMappingMapper mapper;
 	@Mock
-	private SettingRepository repository;
+	private AggregationMappingRepository repository;
 
 	@Nested
 	class TestMapToDto {
@@ -62,14 +60,14 @@ class ReportingAggregationManagerSettingDtoServiceTest {
 		@Test
 		void shouldCallMapper() {
 			var mapping = AggregationMappingTestFactory.create();
-			service.mapToDto(Stream.of(mapping));
+			service.mapToDto(List.of(mapping));
 
 			verify(mapper).toMapping(mapping);
 		}
 
 		@Test
 		void shouldBuildDto() {
-			var dto = service.mapToDto(Stream.of(AggregationMappingTestFactory.create()));
+			var dto = service.mapToDto(List.of(AggregationMappingTestFactory.create()));
 
 			assertThat(dto).usingRecursiveComparison().isEqualTo(ReportingAggregationMAnagerSettingDtoTestFactory.create());
 		}
@@ -79,7 +77,7 @@ class ReportingAggregationManagerSettingDtoServiceTest {
 	class TestGetDataTransferObject {
 
 		@Captor
-		private ArgumentCaptor<Stream<AggregationMapping>> streamCaptor;
+		private ArgumentCaptor<List<AggregationMapping>> listCaptor;
 
 		@BeforeEach
 		void disableMapToDtoFunction() {
@@ -90,18 +88,18 @@ class ReportingAggregationManagerSettingDtoServiceTest {
 		void shouldCallRepository() {
 			service.getDataTransferObject();
 
-			verify(repository).findByType(AggregationMapping.TYPE_ALIAS, AggregationMapping.class);
+			verify(repository).findAll();
 		}
 
 		@Test
 		void shouldCallMapToDto() {
 			AggregationMapping mapping = AggregationMappingTestFactory.create();
-			when(repository.findByType(any(), any())).thenReturn(Stream.of(mapping));
+			when(repository.findAll()).thenReturn(List.of(mapping));
 
 			service.getDataTransferObject();
 
-			verify(service).mapToDto(streamCaptor.capture());
-			assertThat(streamCaptor.getValue()).contains(mapping);
+			verify(service).mapToDto(listCaptor.capture());
+			assertThat(listCaptor.getValue()).contains(mapping);
 		}
 	}
 
diff --git a/src/test/java/de/ozgcloud/admin/reporting/ReportingSettingITCase.java b/src/test/java/de/ozgcloud/admin/reporting/ReportingSettingITCase.java
index 45942aee4876e9513dbc9f98a935be6b4054bbc5..1df9ae404b79593bb578f2a9e7dcef5b6bcd8ee7 100644
--- a/src/test/java/de/ozgcloud/admin/reporting/ReportingSettingITCase.java
+++ b/src/test/java/de/ozgcloud/admin/reporting/ReportingSettingITCase.java
@@ -56,7 +56,7 @@ class ReportingSettingITCase {
 
 	@BeforeEach
 	void clearDatabase() {
-		mongoOperations.dropCollection("settings");
+		mongoOperations.dropCollection(AggregationMapping.COLLECTION_NAME);
 	}
 
 	@Test
@@ -110,7 +110,7 @@ class ReportingSettingITCase {
 				.contentType(MediaType.APPLICATION_JSON).content(TestUtils.loadTextFile("reporting/request.json")))
 				.andExpect(status().isCreated());
 
-		var collection = mongoOperations.getCollection("settings");
+		var collection = mongoOperations.getCollection(AggregationMapping.COLLECTION_NAME);
 		assertThat(collection.countDocuments()).isEqualTo(1);
 		var mapping = mongoOperations.findAll(AggregationMapping.class).getFirst();
 		assertThat(mapping).usingRecursiveComparison().ignoringFields("id").isEqualTo(AggregationMappingTestFactory.create());
diff --git a/src/test/resources/reporting/request.json b/src/test/resources/reporting/request.json
index c2db9de85906742429d7bcd56bc4ae61a28f2580..7bae80abf63f69d1139c4090dde398a6b9daeb04 100644
--- a/src/test/resources/reporting/request.json
+++ b/src/test/resources/reporting/request.json
@@ -1,4 +1,5 @@
 {
+	"name": "Test Auswertung",
 	"formIdentifier": {
 		"formEngineName": "A12",
 		"formId": "42"