diff --git a/gtf.engine/gtf.engines/engine.php b/gtf.engine/gtf.engines/engine.php
index 4d7af46b28a6d713874df20c94dfbeaeabcbf782..6c2473b475322d6b5d6f92f766a5b11017680168 100755
--- a/gtf.engine/gtf.engines/engine.php
+++ b/gtf.engine/gtf.engines/engine.php
@@ -445,6 +445,17 @@ if ($ErrorLicense == "0") {
                                                         }
                                                     }
                                                 }
+                                                if (!file_exists($properties["transit_dir"] . "/failed/" . $sUser)) {
+                                                    mkdir($properties["transit_dir"] . "/failed/" . $sUser);
+                                                }
+                                                if (!file_exists($properties["transit_dir"] . "/failed/" . $sUser . "/" . $aTraitement["workspace_id"])) {
+                                                    mkdir($properties["transit_dir"] . "/failed/" . $sUser . "/" . $aTraitement["workspace_id"]);
+                                                }
+                                                rename($sSourceDirectory, $properties["transit_dir"] . "/failed/" . $sUser . "/" . $aTraitement["workspace_id"] . "/" . $aDemande["order_id"]);
+                                                writeToLog(str_replace('[sSourceDirectory]', $sSourceDirectory, INFO_MOVING_FILE) . $properties["transit_dir"] . "/failed/" . $sUser . "/" . $aTraitement["workspace_id"] . "/" . $aDemande["order_id"] . '.', $properties["engine_log_file"]);
+                                            } else {
+                                                writeToLog(str_replace("[properties['transit_dir']]", $properties['transit_dir'], INFO_DIRECTORY_NOT_FOUND_ENGINE), $properties["engine_log_file"]);
+                                                $iStatut = $sEnErreur;
                                             }
                                             $sMessage = $oTraitement->sMessageErreur;
                                             $iStatut = $sEnErreur;
@@ -499,6 +510,17 @@ if ($ErrorLicense == "0") {
                                                         }
                                                     }
                                                 }
+                                                if (!file_exists($properties["transit_dir"] . "/success/" . $sUser)) {
+                                                    mkdir($properties["transit_dir"] . "/success/" . $sUser);
+                                                }
+                                                if (!file_exists($properties["transit_dir"] . "/success/" . $sUser . "/" . $aTraitement["workspace_id"])) {
+                                                    mkdir($properties["transit_dir"] . "/success/" . $sUser . "/" . $aTraitement["workspace_id"]);
+                                                }
+                                                rename($sSourceDirectory, $properties["transit_dir"] . "/success/" . $sUser . "/" . $aTraitement["workspace_id"] . "/" . $aDemande["order_id"]);
+                                                writeToLog(str_replace('[sSourceDirectory]', $sSourceDirectory, INFO_MOVING_FILE) . $properties["transit_dir"] . "/success/" . $sUser . "/" . $aTraitement["workspace_id"] . "/" . $aDemande["order_id"] . '.', $properties["engine_log_file"]);
+                                            } else {
+                                                writeToLog(str_replace("[properties['transit_dir']]", $properties['transit_dir'], INFO_DIRECTORY_NOT_FOUND_ENGINE), $properties["engine_log_file"]);
+                                                $iStatut = $sEnErreur;
                                             }
                                             $sMessage = "";
                                             $iStatut = 3;