diff --git a/pom.xml b/pom.xml
index ccb8de3bfd4dcbb34e522ade41b81e7bbe5125cd..915ccea3e9f6dfbca7d73078bb0a325dc625d97e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -89,10 +89,6 @@
 			<artifactId>spring-boot-configuration-processor</artifactId>
 			<optional>true</optional>
 		</dependency>
-		<dependency>
-			<groupId>net.devh</groupId>
-			<artifactId>grpc-client-spring-boot-starter</artifactId>
-		</dependency>
 
 		<!-- ShedLock -->
 		<dependency>
diff --git a/src/main/java/de/ozgcloud/admin/organisationseinheit/SyncService.java b/src/main/java/de/ozgcloud/admin/organisationseinheit/SyncService.java
index 85200b0b659b65f05d63047280b81dd62c383570..2e8cf4bf5c2bc97711782f5915dbdbbf248fe78e 100644
--- a/src/main/java/de/ozgcloud/admin/organisationseinheit/SyncService.java
+++ b/src/main/java/de/ozgcloud/admin/organisationseinheit/SyncService.java
@@ -23,14 +23,14 @@ class SyncService {
 	private final OrganisationsEinheitMapper organisationsEinheitMapper;
 
 	public void syncOrganisationsEinheitenFromKeycloak(long syncTimestamp) {
-		keycloakRemoteService.getGroupsWithOrganisationsEinheitId().forEach(group -> syncGroups(group, null, syncTimestamp));
+		keycloakRemoteService.getGroupsWithOrganisationsEinheitId().forEach(group -> syncGroupsWithSubGroups(group, null, syncTimestamp));
 		repository.setUnsyncedAsDeleted(syncTimestamp);
 	}
 
-	void syncGroups(Group group, OrganisationsEinheit parent, long syncTimestamp) {
+	void syncGroupsWithSubGroups(Group group, OrganisationsEinheit parent, long syncTimestamp) {
 		var synced = syncGroup(group, parent, syncTimestamp);
 		var saved = saveSyncedOrganisationsEinheit(synced);
-		group.getSubGroups().forEach(subGroup -> syncGroups(subGroup, saved, syncTimestamp));
+		group.getSubGroups().forEach(subGroup -> syncGroupsWithSubGroups(subGroup, saved, syncTimestamp));
 	}
 
 	OrganisationsEinheit syncGroup(Group group, OrganisationsEinheit parent, long syncTimestamp) {
diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitControllerTest.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitControllerTest.java
index 3e6dd9250606bddadaf863b154e328ead35476d9..a913eb55dcfaeeb4c89da5a8085b04a3bef75e22 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitControllerTest.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitControllerTest.java
@@ -89,10 +89,12 @@ class OrganisationsEinheitControllerTest {
 	class TestGetById {
 
 		private final OrganisationsEinheit organisationsEinheit = OrganisationsEinheitTestFactory.create();
+		private final EntityModel<OrganisationsEinheit> entityModel = EntityModel.of(organisationsEinheit);
 
 		@BeforeEach
 		void setUp() {
 			when(organisationsEinheitService.getOrganisationsEinheitById(OrganisationsEinheitTestFactory.ID)).thenReturn(organisationsEinheit);
+			when(assembler.toModel(organisationsEinheit)).thenReturn(entityModel);
 		}
 
 		@Test
@@ -115,6 +117,13 @@ class OrganisationsEinheitControllerTest {
 			doRequest().andExpect(status().isOk());
 		}
 
+		@Test
+		void shouldReturnEntityModel() {
+			var response = controller.getById(OrganisationsEinheitTestFactory.ID);
+
+			assertThat(response).isEqualTo(entityModel);
+		}
+
 		@SneakyThrows
 		private ResultActions doRequest() {
 			return mockMvc.perform(get(OrganisationsEinheitController.PATH + "/" + OrganisationsEinheitTestFactory.ID));
@@ -124,11 +133,15 @@ class OrganisationsEinheitControllerTest {
 	@Nested
 	class TestGetChildren {
 
-		private final List<OrganisationsEinheit> children = List.of(OrganisationsEinheitTestFactory.create());
+		private final OrganisationsEinheit organisationsEinheit = OrganisationsEinheitTestFactory.create();
+		private final List<OrganisationsEinheit> children = List.of(organisationsEinheit);
+		private final CollectionModel<EntityModel<OrganisationsEinheit>> collectionModel = CollectionModel.of(
+				List.of(EntityModel.of(organisationsEinheit)));
 
 		@BeforeEach
 		void setUp() {
 			when(organisationsEinheitService.getChildren(OrganisationsEinheitTestFactory.ID)).thenReturn(children);
+			when(assembler.toChildrenCollectionModel(OrganisationsEinheitTestFactory.ID, children)).thenReturn(collectionModel);
 		}
 
 		@Test
@@ -151,6 +164,13 @@ class OrganisationsEinheitControllerTest {
 			verify(assembler).toChildrenCollectionModel(OrganisationsEinheitTestFactory.ID, children);
 		}
 
+		@Test
+		void shouldReturnCollectionModel() {
+			var response = controller.getChildren(OrganisationsEinheitTestFactory.ID);
+
+			assertThat(response).isEqualTo(collectionModel);
+		}
+
 		@SneakyThrows
 		private ResultActions doRequest() {
 			return mockMvc.perform(get(OrganisationsEinheitController.PATH + "/" + OrganisationsEinheitTestFactory.ID + "/children"));
diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitModelAssemblerTest.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitModelAssemblerTest.java
index 0a79e4253ef8860897ef3a04c820e894c5b80bfe..c726c6b5219bdadedb46e336c2baa9fed5edee5f 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitModelAssemblerTest.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitModelAssemblerTest.java
@@ -11,6 +11,8 @@ import java.util.UUID;
 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.Spy;
 import org.springframework.hateoas.CollectionModel;
@@ -71,6 +73,10 @@ class OrganisationsEinheitModelAssemblerTest {
 		private CollectionModel<EntityModel<OrganisationsEinheit>> childrenCollectionModel;
 		@Spy
 		private final HalModelBuilder halModelBuilder = HalModelBuilder.emptyHalModel();
+		@Captor
+		private ArgumentCaptor<LinkRelation> linkRelationArgumentCaptor;
+		@Captor
+		private ArgumentCaptor<Collection<EntityModel<OrganisationsEinheit>>> collectionModelContentArgumentCaptor;
 
 		@BeforeEach
 		void setUp() {
@@ -78,8 +84,7 @@ class OrganisationsEinheitModelAssemblerTest {
 			childOrganisationsEinheit = OrganisationsEinheitTestFactory.createBuilder().id(UUID.randomUUID().toString())
 					.parentId(parentOrganisationsEinheit.getId()).build();
 			parentOrganisationsEinheit = parentOrganisationsEinheit.toBuilder().child(childOrganisationsEinheit).build();
-			childrenCollectionModel = CollectionModel.of(
-					List.of(EntityModel.of(childOrganisationsEinheit)));
+			childrenCollectionModel = CollectionModel.of(List.of(EntityModel.of(childOrganisationsEinheit)));
 			doReturn(childrenCollectionModel).when(assembler)
 					.toChildrenCollectionModel(parentOrganisationsEinheit.getId(), parentOrganisationsEinheit.getChildren());
 		}
@@ -95,7 +100,9 @@ class OrganisationsEinheitModelAssemblerTest {
 		void shouldEmbedChildrenModels() {
 			assembler.embedChildOrganisationsEinheiten(parentOrganisationsEinheit, halModelBuilder);
 
-			verify(halModelBuilder).embed(any(Collection.class), any(LinkRelation.class));
+			verify(halModelBuilder).embed(collectionModelContentArgumentCaptor.capture(), linkRelationArgumentCaptor.capture());
+			assertThat(collectionModelContentArgumentCaptor.getValue()).usingRecursiveComparison().isEqualTo(childrenCollectionModel.getContent());
+			assertThat(linkRelationArgumentCaptor.getValue().toString()).isEqualTo(REL_CHILD_ORGANISATIONS_EINHEITEN);
 		}
 
 		@Test
diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitRepositoryITCase.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitRepositoryITCase.java
index ced0b42ccd586c5b3588ed5cb4927f805c243a25..dcfeebde1d6aa5bfb83944ec11c110f72dd833a8 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitRepositoryITCase.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitRepositoryITCase.java
@@ -111,7 +111,7 @@ class OrganisationsEinheitRepositoryITCase {
 		}
 
 		@Test
-		void shouldReturnEmptyOnNotFoundSyncResultNull() {
+		void shouldReturnEmptyOnSyncResultNull() {
 			operations.save(OrganisationsEinheitTestFactory.createBuilder().id(null).syncResult(null).build());
 
 			var organisationsEinheit = repository.findSyncedByKeycloakId(OrganisationsEinheitTestFactory.KEYCLOAK_ID);
@@ -145,12 +145,12 @@ class OrganisationsEinheitRepositoryITCase {
 		private final OrganisationsEinheit deleted1 = OrganisationsEinheitTestFactory.createBuilder()
 				.id(null)
 				.organisationsEinheitId(DELETED_ORGANISATIONS_EINHEIT_ID_1)
-				.lastSyncTimestamp(Instant.now().minusSeconds(300).toEpochMilli())
+				.lastSyncTimestamp(OrganisationsEinheitTestFactory.LAST_SYNC_UPDATE - 1)
 				.build();
 		private final OrganisationsEinheit deleted2 = OrganisationsEinheitTestFactory.createBuilder()
 				.id(null)
 				.organisationsEinheitId(DELETED_ORGANISATIONS_EINHEIT_ID_2)
-				.lastSyncTimestamp(Instant.now().minusSeconds(30000).toEpochMilli())
+				.lastSyncTimestamp(OrganisationsEinheitTestFactory.LAST_SYNC_UPDATE - 2)
 				.build();
 		private final OrganisationsEinheit synced1 = OrganisationsEinheitTestFactory.createBuilder()
 				.id(null)
@@ -235,7 +235,8 @@ class OrganisationsEinheitRepositoryITCase {
 		void shouldFindAllWithoutSyncResult() {
 			var allWithoutSyncResult = repository.findAllWithoutSyncResult();
 
-			assertThat(allWithoutSyncResult).extracting(OrganisationsEinheit::getId).containsExactlyInAnyOrder(WITHOUT_SYNC_RESULT_ID_1, WITHOUT_SYNC_RESULT_ID_2);
+			assertThat(allWithoutSyncResult).extracting(OrganisationsEinheit::getId)
+					.containsExactlyInAnyOrder(WITHOUT_SYNC_RESULT_ID_1, WITHOUT_SYNC_RESULT_ID_2);
 		}
 	}
 
diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitServiceTest.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitServiceTest.java
index c864b9a6b9cc466792da674c1bb1e8a199a419f5..e151636ee95ef52d2dab645c0e19ad5b134f1114 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitServiceTest.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitServiceTest.java
@@ -137,11 +137,25 @@ class OrganisationsEinheitServiceTest {
 	@Nested
 	class TestGetChildren {
 
+		private final OrganisationsEinheit organisationsEinheit = OrganisationsEinheitTestFactory.create();
+
+		@BeforeEach
+		void setUp() {
+			when(repository.findChildren(OrganisationsEinheitTestFactory.ID)).thenReturn(List.of(organisationsEinheit));
+		}
+
 		@Test
 		void shouldCallRepository() {
 			service.getChildren(OrganisationsEinheitTestFactory.ID);
 
 			verify(repository).findChildren(OrganisationsEinheitTestFactory.ID);
 		}
+
+		@Test
+		void shouldReturnChildren() {
+			var children = service.getChildren(OrganisationsEinheitTestFactory.ID);
+
+			assertThat(children).containsExactly(organisationsEinheit);
+		}
 	}
 }
\ No newline at end of file
diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitSettingsTestFactory.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitSettingsTestFactory.java
index ababf88ba11eb1378cc4416c357098c48abd8bc7..c5028fb0e25bb8b6127e623a4e09b75794545d61 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitSettingsTestFactory.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitSettingsTestFactory.java
@@ -15,4 +15,9 @@ public class OrganisationsEinheitSettingsTestFactory {
 				.signatur(SIGNATUR);
 	}
 
+	public static OrganisationsEinheitSettings.OrganisationsEinheitSettingsBuilder createNewBuilder() {
+		return OrganisationsEinheitSettings.builder()
+				.signatur(LoremIpsum.getInstance().getWords(3));
+	}
+
 }
diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitTestFactory.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitTestFactory.java
index 2feb3311fb010748e58beed1f48b9a132c24d015..756ec38fc6a01660b352924cebbd24176c4a9939 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitTestFactory.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/OrganisationsEinheitTestFactory.java
@@ -34,4 +34,16 @@ public class OrganisationsEinheitTestFactory {
 				.lastSyncTimestamp(LAST_SYNC_UPDATE);
 	}
 
+	public static OrganisationsEinheit.OrganisationsEinheitBuilder createNewBuilder() {
+		return OrganisationsEinheit.builder()
+				.id(UUID.randomUUID().toString())
+				.keycloakId(UUID.randomUUID().toString())
+				.name(LoremIpsum.getInstance().getName())
+				.organisationsEinheitId(UUID.randomUUID().toString())
+				.parentId(UUID.randomUUID().toString())
+				.zufiId(UUID.randomUUID().toString())
+				.syncResult(SyncResult.DELETED)
+				.settings(OrganisationsEinheitSettingsTestFactory.createNewBuilder().build())
+				.lastSyncTimestamp(LAST_SYNC_UPDATE - 10000);
+	}
 }
diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java
index 52660504a334711babe2579bd5e7c4612bd2f763..fdba7d25b7d584197570e316becd1297584114c3 100644
--- a/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java
+++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java
@@ -20,6 +20,8 @@ import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Spy;
 
+import com.thedeanda.lorem.LoremIpsum;
+
 import de.ozgcloud.admin.keycloak.AddGroupData;
 import de.ozgcloud.admin.keycloak.AddGroupDataTestFactory;
 import de.ozgcloud.admin.keycloak.Group;
@@ -54,7 +56,7 @@ class SyncServiceTest {
 		@BeforeEach
 		void setUp() {
 			when(keycloakRemoteService.getGroupsWithOrganisationsEinheitId()).thenReturn(Stream.of(group));
-			doNothing().when(service).syncGroups(any(), any(), anyLong());
+			doNothing().when(service).syncGroupsWithSubGroups(any(), any(), anyLong());
 		}
 
 		@Test
@@ -68,7 +70,7 @@ class SyncServiceTest {
 		void shouldSyncGroupsFromKeycloak() {
 			callService();
 
-			verify(service).syncGroups(group, null, syncTimestamp);
+			verify(service).syncGroupsWithSubGroups(group, null, syncTimestamp);
 		}
 
 		@Test
@@ -85,7 +87,7 @@ class SyncServiceTest {
 	}
 
 	@Nested
-	class TestSyncGroups {
+	class TestSyncGroupsWithSubGroups {
 
 		private final long syncTimestamp = Instant.now().toEpochMilli();
 		private final Group group = GroupTestFactory.create();
@@ -96,28 +98,28 @@ class SyncServiceTest {
 		@BeforeEach
 		void setUp() {
 			doReturn(syncedOrganisationsEinheitGroup).when(service).syncGroup(group, null, syncTimestamp);
-			doReturn(savedOrganisationsEinheitGroup).when(service).saveSyncedOrganisationsEinheit(any());
+			doReturn(savedOrganisationsEinheitGroup).when(service).saveSyncedOrganisationsEinheit(syncedOrganisationsEinheitGroup);
 		}
 
 		@Test
 		void shouldSyncGroup() {
-			service.syncGroups(group, null, syncTimestamp);
+			service.syncGroupsWithSubGroups(group, null, syncTimestamp);
 
 			verify(service).syncGroup(group, null, syncTimestamp);
 		}
 
 		@Test
-		void shouldSaveSyncedGroup() {
-			service.syncGroups(group, null, syncTimestamp);
+		void shouldSaveSyncedOrganisationsEinheit() {
+			service.syncGroupsWithSubGroups(group, null, syncTimestamp);
 
 			verify(service).saveSyncedOrganisationsEinheit(syncedOrganisationsEinheitGroup);
 		}
 
 		@Test
 		void shouldSyncSubGroupsWithSyncedOrganisationsEinheitAsParent() {
-			service.syncGroups(group, null, syncTimestamp);
+			service.syncGroupsWithSubGroups(group, null, syncTimestamp);
 
-			verify(service).syncGroups(group.getSubGroups().getFirst(), savedOrganisationsEinheitGroup, syncTimestamp);
+			verify(service).syncGroupsWithSubGroups(group.getSubGroups().getFirst(), savedOrganisationsEinheitGroup, syncTimestamp);
 		}
 	}
 
@@ -129,14 +131,18 @@ class SyncServiceTest {
 		private final OrganisationsEinheit parent = OrganisationsEinheitTestFactory.createBuilder().id(UUID.randomUUID().toString()).build();
 		private final OrganisationsEinheit pvogOrganisationsEinheit = OrganisationsEinheitTestFactory.createBuilder().zufiId(null).settings(null)
 				.parentId(null).syncResult(null).build();
+		private final String syncedName = LoremIpsum.getInstance().getWords(3);
+		private final SyncResult syncedSyncResult = SyncResult.OK;
+		private final String syncedZufiId = UUID.randomUUID().toString();
 
 		@Nested
 		class ParentGroup {
 
 			@BeforeEach
 			void setUp() {
-				doReturn(OrganisationsEinheitTestFactory.NAME).when(service).syncName(anyList(), any());
-				doReturn(SyncResult.OK).when(service).evaluateSyncResult(anyList(), any());
+				doReturn(syncedName).when(service).syncName(List.of(pvogOrganisationsEinheit), group);
+				doReturn(syncedSyncResult).when(service).evaluateSyncResult(List.of(pvogOrganisationsEinheit), group);
+				doReturn(syncedZufiId).when(service).syncZufiId(List.of(pvogOrganisationsEinheit));
 				when(organisationsEinheitRemoteService.getByOrganisationsEinheitId(GroupTestFactory.ORGANISATIONS_EINHEIT_ID)).thenReturn(
 						List.of(pvogOrganisationsEinheit));
 			}
@@ -150,16 +156,18 @@ class SyncServiceTest {
 
 			@Test
 			void shouldSyncName() {
-				service.syncGroup(group, null, syncTimestamp);
+				var synced = service.syncGroup(group, null, syncTimestamp);
 
 				verify(service).syncName(List.of(pvogOrganisationsEinheit), group);
+				assertThat(synced.getName()).isEqualTo(syncedName);
 			}
 
 			@Test
 			void shouldEvaluateSyncResult() {
-				service.syncGroup(group, null, syncTimestamp);
+				var synced = service.syncGroup(group, null, syncTimestamp);
 
 				verify(service).evaluateSyncResult(List.of(pvogOrganisationsEinheit), group);
+				assertThat(synced.getSyncResult()).isEqualTo(syncedSyncResult);
 			}
 
 			@Test
@@ -169,11 +177,19 @@ class SyncServiceTest {
 				verify(organisationsEinheitRemoteService).getByOrganisationsEinheitId(GroupTestFactory.ORGANISATIONS_EINHEIT_ID);
 			}
 
+			@Test
+			void shouldSetOrganisationsEinheitId() {
+				var synced = service.syncGroup(group, null, syncTimestamp);
+
+				assertThat(synced.getOrganisationsEinheitId()).isEqualTo(group.getOrganisationsEinheitId());
+			}
+
 			@Test
 			void shouldSyncZufiId() {
-				service.syncGroup(group, null, syncTimestamp);
+				var synced = service.syncGroup(group, null, syncTimestamp);
 
 				verify(service).syncZufiId(List.of(pvogOrganisationsEinheit));
+				assertThat(synced.getZufiId()).isEqualTo(syncedZufiId);
 			}
 
 			@Test
@@ -189,8 +205,9 @@ class SyncServiceTest {
 
 			@BeforeEach
 			void setUp() {
-				doReturn(OrganisationsEinheitTestFactory.NAME).when(service).syncName(anyList(), any());
-				doReturn(SyncResult.OK).when(service).evaluateSyncResult(anyList(), any());
+				doReturn(syncedName).when(service).syncName(List.of(pvogOrganisationsEinheit), group.getSubGroups().getFirst());
+				doReturn(syncedSyncResult).when(service).evaluateSyncResult(List.of(pvogOrganisationsEinheit), group.getSubGroups().getFirst());
+				doReturn(syncedZufiId).when(service).syncZufiId(List.of(pvogOrganisationsEinheit));
 				when(organisationsEinheitRemoteService.getByOrganisationsEinheitId(GroupTestFactory.SUB_GROUP_ORGANISATIONS_EINHEIT_ID)).thenReturn(
 						List.of(pvogOrganisationsEinheit));
 			}
@@ -204,23 +221,26 @@ class SyncServiceTest {
 
 			@Test
 			void shouldSyncName() {
-				service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
+				var synced = service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
 
 				verify(service).syncName(List.of(pvogOrganisationsEinheit), group.getSubGroups().getFirst());
+				assertThat(synced.getName()).isEqualTo(syncedName);
 			}
 
 			@Test
 			void shouldEvaluateSyncResult() {
-				service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
+				var synced = service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
 
 				verify(service).evaluateSyncResult(List.of(pvogOrganisationsEinheit), group.getSubGroups().getFirst());
+				assertThat(synced.getSyncResult()).isEqualTo(syncedSyncResult);
 			}
 
 			@Test
 			void shouldGetOrganisationsEinheit() {
-				service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
+				var synced = service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
 
 				verify(organisationsEinheitRemoteService).getByOrganisationsEinheitId(GroupTestFactory.SUB_GROUP_ORGANISATIONS_EINHEIT_ID);
+				assertThat(synced.getOrganisationsEinheitId()).isEqualTo(group.getSubGroups().getFirst().getOrganisationsEinheitId());
 			}
 
 			@Test
@@ -232,9 +252,10 @@ class SyncServiceTest {
 
 			@Test
 			void shouldSyncZufiId() {
-				service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
+				var synced = service.syncGroup(group.getSubGroups().getFirst(), parent, syncTimestamp);
 
 				verify(service).syncZufiId(List.of(pvogOrganisationsEinheit));
+				assertThat(synced.getZufiId()).isEqualTo(syncedZufiId);
 			}
 
 			@Test
@@ -377,7 +398,7 @@ class SyncServiceTest {
 		@Nested
 		class SyncedOrganisationsEinheitExists {
 
-			private final OrganisationsEinheit existingOrganisationsEinheit = OrganisationsEinheitTestFactory.create();
+			private final OrganisationsEinheit existingOrganisationsEinheit = OrganisationsEinheitTestFactory.createNewBuilder().build();
 
 			@Captor
 			private ArgumentCaptor<OrganisationsEinheit> savedOrganisationsEinheitArgumentCaptor;