diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/Command.java b/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/Command.java
index ad178941ac769804059b33333b68034304000593..1a5d2ac5fda7dc714f9f2b13514dc22705159219 100644
--- a/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/Command.java
+++ b/alfa-service/src/main/java/de/ozgcloud/alfa/common/command/Command.java
@@ -26,6 +26,8 @@ package de.ozgcloud.alfa.common.command;
 import java.time.ZonedDateTime;
 import java.util.Map;
 
+import org.apache.commons.lang3.StringUtils;
+
 import com.fasterxml.jackson.annotation.JsonIgnore;
 
 import de.ozgcloud.alfa.common.LinkedUserProfileResource;
@@ -76,8 +78,8 @@ public class Command {
 	}
 
 	@JsonIgnore
-	public boolean isDoneSuccessfully() {
-		return status == CommandStatus.FINISHED;
+	public boolean isFinishedSuccessfully() {
+		return status == CommandStatus.FINISHED && StringUtils.isEmpty(errorMessage);
 	}
 
 	@JsonIgnore
diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandController.java b/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandController.java
index 08e6eab21dee043818128204e583e9fc9f571e6d..2cc413979da3622e47fc9d0d5677b804f001cf23 100644
--- a/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandController.java
+++ b/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandController.java
@@ -53,7 +53,7 @@ public class WiedervorlageCommandController {
 			@PathVariable long wiedervorlageVersion) {
 		var wiedervorlage = service.getById(wiedervorlageId);
 		var createdCommand = createCommand(wiedervorlage, command);
-		var doneCommand = service.updateNextFristOnSuccessfullyDoneCommand(createdCommand, wiedervorlage.getVorgangId());
+		var doneCommand = service.updateNextFrist(createdCommand, wiedervorlage.getVorgangId());
 
 		return ResponseEntity.created(linkTo(CommandController.class).slash(doneCommand.getId()).toUri()).build();
 	}
@@ -96,7 +96,7 @@ public class WiedervorlageCommandController {
 		@PostMapping
 		public ResponseEntity<Void> createWiedervorlage(@RequestBody CreateCommand command, @PathVariable String vorgangId) {
 			var createdCommand = service.createWiedervorlage((Wiedervorlage) command.getBody(), vorgangId);
-			var doneCommand = service.updateNextFristOnSuccessfullyDoneCommand(createdCommand, createdCommand.getVorgangId());
+			var doneCommand = service.updateNextFrist(createdCommand, createdCommand.getVorgangId());
 
 			return ResponseEntity.created(linkTo(CommandController.class).slash(doneCommand.getId()).toUri()).build();
 		}
diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageService.java b/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageService.java
index 9fd646607e81f2ee28830c4aa86975795858b731..28f4795c3695c12aa76981ebcb01c2f807fbbbde 100644
--- a/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageService.java
+++ b/alfa-service/src/main/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageService.java
@@ -73,20 +73,20 @@ class WiedervorlageService {
 		return remoteService.getById(wiedervorlageId);
 	}
 
-	public void updateNextFrist(String vorgangId) {
-		var allWiedervorlagen = findByVorgangId(vorgangId);
-
-		remoteService.updateNextFrist(vorgangId, calculateNextFrist(allWiedervorlagen));
-	}
-
-	Command updateNextFristOnSuccessfullyDoneCommand(Command command, String vorgangId) {
+	public Command updateNextFrist(Command command, String vorgangId) {
 		var doneCommand = commandService.waitUntilDone(command);
-		if (doneCommand.isDoneSuccessfully()) {
-			updateNextFrist(vorgangId);
+		if (doneCommand.isFinishedSuccessfully()) {
+			doUpdateNextFrist(vorgangId);
 		}
 		return doneCommand;
 	}
 
+	void doUpdateNextFrist(String vorgangId) {
+		var allWiedervorlagen = findByVorgangId(vorgangId);
+
+		remoteService.updateNextFrist(vorgangId, calculateNextFrist(allWiedervorlagen));
+	}
+
 	Optional<LocalDate> calculateNextFrist(Stream<Wiedervorlage> wiedervorlagen) {
 		return wiedervorlagen
 				.filter(Objects::nonNull)
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java
index 170c3a34fa09b296be2c4edba98331316955a617..f36fbc385c6a22097ff93957c7702de5326cc9d1 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/common/command/CommandTest.java
@@ -11,27 +11,39 @@ import org.junit.jupiter.params.provider.EnumSource;
 import org.junit.jupiter.params.provider.EnumSource.Mode;
 import org.mockito.Mock;
 
+import com.thedeanda.lorem.LoremIpsum;
+
 class CommandTest {
 
 	@Nested
-	class TestIsDoneSuccessfully {
+	class TestIsFinishedSuccessfully {
 
 		@ParameterizedTest
 		@EnumSource(names = "FINISHED")
-		public void shouldReturnTrue(CommandStatus commandStatus) {
+		void shouldReturnTrue(CommandStatus commandStatus) {
 			var command = CommandTestFactory.createBuilder().status(commandStatus).build();
 
-			var isDoneSuccessfully = command.isDoneSuccessfully();
+			var isDoneSuccessfully = command.isFinishedSuccessfully();
 
 			assertThat(isDoneSuccessfully).isTrue();
 		}
 
 		@ParameterizedTest
 		@EnumSource(names = "FINISHED", mode = Mode.EXCLUDE)
-		public void shouldReturnFalse(CommandStatus commandStatus) {
+		void shouldReturnFalseOnStatusNotFinished(CommandStatus commandStatus) {
 			var command = CommandTestFactory.createBuilder().status(commandStatus).build();
 
-			var isDoneSuccessfully = command.isDoneSuccessfully();
+			var isDoneSuccessfully = command.isFinishedSuccessfully();
+
+			assertThat(isDoneSuccessfully).isFalse();
+		}
+
+		@ParameterizedTest
+		@EnumSource
+		void shouldReturnFalseOnErrorMessage(CommandStatus commandStatus) {
+			var command = CommandTestFactory.createBuilder().status(commandStatus).errorMessage(LoremIpsum.getInstance().getWords(1)).build();
+
+			var isDoneSuccessfully = command.isFinishedSuccessfully();
 
 			assertThat(isDoneSuccessfully).isFalse();
 		}
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandByVorgangControllerTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandByVorgangControllerTest.java
index 7c91a7687f2e74eb23eb111b36f141e780fd7a09..ef4a43f95f4ed8458d9be2f37bb190e32bd87e84 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandByVorgangControllerTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandByVorgangControllerTest.java
@@ -90,7 +90,7 @@ class WiedervorlageCommandByVorgangControllerTest {
 			createCommand = CommandTestFactory.create();
 			doneCommand = createCommand.toBuilder().status(CommandStatus.FINISHED).build();
 			when(service.createWiedervorlage(any(), any())).thenReturn(createCommand);
-			when(service.updateNextFristOnSuccessfullyDoneCommand(createCommand, VorgangHeaderTestFactory.ID)).thenReturn(doneCommand);
+			when(service.updateNextFrist(createCommand, VorgangHeaderTestFactory.ID)).thenReturn(doneCommand);
 		}
 
 		@Nested
@@ -108,7 +108,7 @@ class WiedervorlageCommandByVorgangControllerTest {
 			void shouldUpdateNextFristOnSuccessfullyDoneCommand() {
 				doRequest();
 
-				verify(service).updateNextFristOnSuccessfullyDoneCommand(createCommand, VorgangHeaderTestFactory.ID);
+				verify(service).updateNextFrist(createCommand, VorgangHeaderTestFactory.ID);
 			}
 
 			@SneakyThrows
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandControllerTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandControllerTest.java
index 7ecbfc74dbf6819a27e150b6808b8620624e5b36..198f7a00535cfc7dbcc73c53fa65f3d826a2225d 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandControllerTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageCommandControllerTest.java
@@ -89,7 +89,7 @@ class WiedervorlageCommandControllerTest {
 						.body(WiedervorlageTestFactory.createAsMap()).build();
 				doneCommand = createCommand.toBuilder().status(CommandStatus.FINISHED).build();
 				when(service.editWiedervorlage(any(), any(), anyLong())).thenReturn(createCommand);
-				when(service.updateNextFristOnSuccessfullyDoneCommand(createCommand, VorgangHeaderTestFactory.ID)).thenReturn(doneCommand);
+				when(service.updateNextFrist(createCommand, VorgangHeaderTestFactory.ID)).thenReturn(doneCommand);
 			}
 
 			@SneakyThrows
@@ -104,7 +104,7 @@ class WiedervorlageCommandControllerTest {
 			void shouldUpdateNextFristOnSuccessfullyDoneCommand() {
 				doRequest();
 
-				verify(service).updateNextFristOnSuccessfullyDoneCommand(createCommand, VorgangHeaderTestFactory.ID);
+				verify(service).updateNextFrist(createCommand, VorgangHeaderTestFactory.ID);
 			}
 
 			@SneakyThrows
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java
index b3d3ffd3fda88b03bb88d7ae5e1097b4e3cd801c..0479bb9094ae757c30043f67097d58ef61744f36 100644
--- a/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/wiedervorlage/WiedervorlageServiceTest.java
@@ -173,7 +173,7 @@ class WiedervorlageServiceTest {
 	}
 
 	@Nested
-	class TestUpdateNextFrist {
+	class TestDoUpdateNextFrist {
 
 		@Nested
 		class ServiceMethod {
@@ -207,7 +207,7 @@ class WiedervorlageServiceTest {
 			}
 
 			private void callUpdateNextFrist() {
-				service.updateNextFrist(VorgangHeaderTestFactory.ID);
+				service.doUpdateNextFrist(VorgangHeaderTestFactory.ID);
 			}
 		}
 
@@ -257,15 +257,15 @@ class WiedervorlageServiceTest {
 	}
 
 	@Nested
-	class TestUpdateNextFristOnSuccessfullyDoneCommand {
+	class TestUpdateNextFrist {
 
 		@Test
-		public void shouldWaitUntilCommandDone() {
+		void shouldWaitUntilCommandDone() {
 			var pendingCommand = CommandTestFactory.createBuilder().status(CommandStatus.PENDING).build();
 			var command = CommandTestFactory.create();
 			when(commandService.waitUntilDone(command)).thenReturn(pendingCommand);
 
-			service.updateNextFristOnSuccessfullyDoneCommand(command, VorgangHeaderTestFactory.ID);
+			service.updateNextFrist(command, VorgangHeaderTestFactory.ID);
 
 			verify(commandService).waitUntilDone(command);
 		}
@@ -276,7 +276,7 @@ class WiedervorlageServiceTest {
 			var command = CommandTestFactory.create();
 			when(commandService.waitUntilDone(command)).thenReturn(errorCommand);
 
-			var result = service.updateNextFristOnSuccessfullyDoneCommand(command, VorgangHeaderTestFactory.ID);
+			var result = service.updateNextFrist(command, VorgangHeaderTestFactory.ID);
 
 			assertThat(result).isEqualTo(errorCommand);
 		}
@@ -292,10 +292,10 @@ class WiedervorlageServiceTest {
 			}
 
 			@Test
-			public void shouldUpdateNextFrist() {
-				service.updateNextFristOnSuccessfullyDoneCommand(command, VorgangHeaderTestFactory.ID);
+			void shouldUpdateNextFrist() {
+				service.updateNextFrist(command, VorgangHeaderTestFactory.ID);
 
-				verify(service).updateNextFrist(VorgangHeaderTestFactory.ID);
+				verify(service).doUpdateNextFrist(VorgangHeaderTestFactory.ID);
 			}
 		}
 
@@ -310,10 +310,10 @@ class WiedervorlageServiceTest {
 			}
 
 			@Test
-			public void shouldNotUpdateNextFrist() {
-				service.updateNextFristOnSuccessfullyDoneCommand(command, VorgangHeaderTestFactory.ID);
+			void shouldNotUpdateNextFrist() {
+				service.updateNextFrist(command, VorgangHeaderTestFactory.ID);
 
-				verify(service, never()).updateNextFrist(VorgangHeaderTestFactory.ID);
+				verify(service, never()).doUpdateNextFrist(VorgangHeaderTestFactory.ID);
 			}
 		}