diff --git a/arkindex/process/serializers/imports.py b/arkindex/process/serializers/imports.py
index d300e3cf2103565787e863da37411d2a210bba76..830e01541b8814e63ec65e34fe137caa5280c8e9 100644
--- a/arkindex/process/serializers/imports.py
+++ b/arkindex/process/serializers/imports.py
@@ -474,12 +474,7 @@ class StartProcessSerializer(serializers.Serializer):
                 )
 
         else:
-            if validated_data.get("worker_activity"):
-                errors["worker_activity"].append("The process must have workers attached to handle their activity.")
-            if validated_data.get("use_cache"):
-                errors["use_cache"].append("The process must have workers attached to use cached results.")
-            if validated_data.get("use_gpu"):
-                errors["use_gpu"].append("The process must have workers attached to use GPUs.")
+            errors["__all__"].append("The process must have worker runs to be started.")
 
         if errors:
             raise ValidationError(errors)
diff --git a/arkindex/process/tests/test_create_process.py b/arkindex/process/tests/test_create_process.py
index 8fdc26705fbe8ee854341c37ea727710040bc0c7..0b8abf86912629206142f2318e677864be4eae02 100644
--- a/arkindex/process/tests/test_create_process.py
+++ b/arkindex/process/tests/test_create_process.py
@@ -116,11 +116,15 @@ class TestCreateProcess(FixtureAPITestCase):
             "element_name_contains": None,
         })
 
+        process.worker_runs.create(
+            version=self.version_1
+        )
+
         # The process needs to be started to produce a workflow
         response = self.client.post(
             reverse("api:process-start", kwargs={"pk": str(process.id)}),
             # The process needs a worker run or thumbnails generation to start
-            {"thumbnails": "true"}
+            {"worker_activity": "true"}
         )
         self.assertEqual(response.status_code, status.HTTP_201_CREATED)
         process.refresh_from_db()
@@ -486,11 +490,15 @@ class TestCreateProcess(FixtureAPITestCase):
         self.assertFalse(process.tasks.exists())
         self.assertEqual(process.elements.get(), page)
 
+        process.worker_runs.create(
+            version=self.version_1
+        )
+
         # The process needs to be started to produce a workflow
         response = self.client.post(
             reverse("api:process-start", kwargs={"pk": str(process.id)}),
             # The process needs a worker run or thumbnails generation to start
-            {"thumbnails": "true"}
+            {"worker_activity": "true"}
         )
         self.assertEqual(response.status_code, status.HTTP_201_CREATED)
         process.refresh_from_db()
diff --git a/arkindex/process/tests/test_processes.py b/arkindex/process/tests/test_processes.py
index 576979a86857ae72768973fa42db10eb3ed6aebb..31d7de782d22fda2b928677b48d2f013b07d6727 100644
--- a/arkindex/process/tests/test_processes.py
+++ b/arkindex/process/tests/test_processes.py
@@ -2168,7 +2168,7 @@ class TestProcesses(FixtureAPITestCase):
 
         self.assertEqual(
             response.json(),
-            {"__all__": ["The process must have worker runs."]},
+            {"__all__": ["The process must have worker runs to be started."]},
         )
 
     def test_start_process_unavailable_worker_version(self):
@@ -2602,9 +2602,7 @@ class TestProcesses(FixtureAPITestCase):
             )
         self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
         self.assertDictEqual(response.json(), {
-            "use_cache": ["The process must have workers attached to use cached results."],
-            "worker_activity": ["The process must have workers attached to handle their activity."],
-            "use_gpu": ["The process must have workers attached to use GPUs."],
+            "__all__": ["The process must have worker runs to be started."]
         })
         process.refresh_from_db()
         self.assertFalse(process.use_cache)