diff --git a/modules/visa/batch/batch_tools.php b/modules/visa/batch/batch_tools.php
index 926b7ebccaf81c174847d7e6d7a728343132ba8a..fa8ed3090fc2e543cc5588976af4c309c22b10c8 100755
--- a/modules/visa/batch/batch_tools.php
+++ b/modules/visa/batch/batch_tools.php
@@ -154,39 +154,28 @@ function Bt_myInclude($file)
     }
 }
 
-function Bt_createAttachment($aArgs = [])
+function Bt_createNote($aArgs = [])
 {
-    if (!empty($aArgs['noteContent'])) {
+    if (!empty($aArgs['content'])) {
         $creatorName = '';
-        if (!empty($aArgs['noteCreatorId'])) {
-            $creatorId = $aArgs['noteCreatorId'];
+        if (!empty($aArgs['creatorId'])) {
+            $creatorId = $aArgs['creatorId'];
         } else {
-            $req = "SELECT id FROM users ORDER BY user_id='superadmin' desc limit 1";
-            $stmt = $GLOBALS['db']->query($req, array([]));
-            $reqResult = $stmt->fetchObject();
-            $creatorId = $reqResult->id;
-            $creatorName = $aArgs['noteCreatorName'] . ' : ';
+            $req         = "SELECT id FROM users ORDER BY user_id='superadmin' desc limit 1";
+            $stmt        = $GLOBALS['db']->query($req, []);
+            $reqResult   = $stmt->fetchObject();
+            $creatorId   = $reqResult->id;
+            $creatorName = $aArgs['creatorName'] . ' : ';
         }
         $GLOBALS['db']->query(
             "INSERT INTO notes (identifier, user_id, creation_date, note_text) VALUES (?, ?, CURRENT_TIMESTAMP, ?)",
-            [$aArgs['res_id_master'], $creatorId, $creatorName . $aArgs['noteContent']]
+            [$aArgs['resId'], $creatorId, $creatorName . $aArgs['content']]
         );
     }
+}
 
-    $dataValue = [];
-    $dataValue['resIdMaster']     = $aArgs['res_id_master'];
-    $dataValue['title']           = $aArgs['title'];
-    $dataValue['recipientId']     = $aArgs['recipient_id'];
-    $dataValue['recipientType']   = $aArgs['recipient_type'];
-    $dataValue['typist']          = $aArgs['typist'];
-    $dataValue['chrono']          = $aArgs['identifier'];
-    $dataValue['type']            = $aArgs['attachment_type'];
-    $dataValue['inSignatureBook'] = $aArgs['in_signature_book'];
-    $dataValue['encodedFile']     = $aArgs['encodedFile'];
-    $dataValue['format']          = $aArgs['format'];
-    $dataValue['status']          = $aArgs['status'];
-    $dataValue['originId']        = $aArgs['origin_id'];
-
+function Bt_createAttachment($args = [])
+{
     $opts = [
         CURLOPT_URL => $GLOBALS['applicationUrl'] . 'rest/attachments',
         CURLOPT_HTTPHEADER => [
@@ -196,58 +185,26 @@ function Bt_createAttachment($aArgs = [])
         ],
         CURLOPT_RETURNTRANSFER => true,
         CURLOPT_SSL_VERIFYPEER => false,
-        CURLOPT_POSTFIELDS => json_encode($dataValue),
+        CURLOPT_POSTFIELDS => json_encode($args),
         CURLOPT_POST => true
     ];
 
     $curl = curl_init();
     curl_setopt_array($curl, $opts);
     $rawResponse = curl_exec($curl);
-    $error = curl_error($curl);
+    $error       = curl_error($curl);
     if (!empty($error)) {
         $GLOBALS['logger']->write($error, 'ERROR');
         exit;
     }
 
-    return json_decode($rawResponse, true);
-}
-
-function Bt_refusedSignedMail($aArgs = [])
-{
-    if (!empty($aArgs['noteContent'])) {
-        $creatorName = '';
-        if (!empty($aArgs['noteCreatorId'])) {
-            $creatorId = $aArgs['noteCreatorId'];
-        } else {
-            $creatorId = 'superadmin';
-            $creatorName = $aArgs['noteCreatorName'] . ' : ';
-        }
-        $GLOBALS['db']->query(
-            "INSERT INTO notes (identifier, user_id, creation_date, note_text) VALUES (?, '".$creatorId."', CURRENT_TIMESTAMP, ?)",
-            [$aArgs['resIdMaster'], $creatorName . $aArgs['noteContent']]
-        );
+    $return = json_decode($rawResponse, true);
+    if (!empty($return['errors'])) {
+        $GLOBALS['logger']->write($return['errors'], 'ERROR');
+        exit;
     }
-    $GLOBALS['db']->query("UPDATE ".$aArgs['tableAttachment']." SET status = 'A_TRA', external_id = external_id - 'signatureBookId' WHERE res_id = ?", [$aArgs['resIdAttachment']]);
-    $GLOBALS['db']->query('UPDATE listinstance SET process_date = NULL WHERE res_id = ? AND difflist_type = ?', [$aArgs['resIdMaster'], 'VISA_CIRCUIT']);
-    
-    $GLOBALS['db']->query("UPDATE res_letterbox SET status = '" . $aArgs['refusedStatus'] . "' WHERE res_id = ?", [$aArgs['resIdMaster']]);
-
-    $historyInfo = 'La signature de la pièce jointe '.$aArgs['resIdAttachment'].' ('.$aArgs['tableAttachment'].') a été refusée dans le parapheur externe' . $aArgs['additionalHistoryInfo'];
-    Bt_history([
-        'table_name' => $aArgs['tableAttachment'],
-        'record_id'  => $aArgs['resIdAttachment'],
-        'info'       => $historyInfo,
-        'event_type' => 'UP',
-        'event_id'   => 'attachup'
-    ]);
 
-    Bt_history([
-        'table_name' => 'res_letterbox',
-        'record_id'  => $aArgs['resIdMaster'],
-        'info'       => $historyInfo,
-        'event_type' => 'ACTION#1',
-        'event_id'   => '1'
-    ]);
+    return $return;
 }
 
 function Bt_validatedMail($aArgs = [])
diff --git a/modules/visa/batch/process_mailsFromSignatoryBook.php b/modules/visa/batch/process_mailsFromSignatoryBook.php
index d6eea3bdf3d92dcc311778398803263f390e7ca5..bf417d44ad8abbcd4b001fc146c7aeedce4ca468 100755
--- a/modules/visa/batch/process_mailsFromSignatoryBook.php
+++ b/modules/visa/batch/process_mailsFromSignatoryBook.php
@@ -39,8 +39,6 @@ try {
 $GLOBALS['batchName']    = 'retrieveMailsFromSignatoryBook';
 $GLOBALS['wb']           = '';
 $totalProcessedResources = 0;
-$batchDirectory          = '';
-$log4PhpEnabled          = false;
 
 // Open Logger
 $GLOBALS['logger'] = new Logger4Php();
@@ -161,11 +159,11 @@ try {
         $path = $GLOBALS['MaarchDirectory'] . 'modules/visa/xml/remoteSignatoryBooks.xml';
     }
 
-    $configRemoteSignatoryBook = [];
-    $configRemoteNoteBook = ['id' => 'maarchParapheur'];
     if (file_exists($path)) {
         $loadedXml = simplexml_load_file($path);
         if ($loadedXml) {
+            $configRemoteSignatoryBook       = [];
+            $configRemoteNoteBook            = ['id' => 'maarchParapheur'];
             $configRemoteSignatoryBook['id'] = (string)$loadedXml->signatoryBookEnabled;
             foreach ($loadedXml->signatoryBook as $value) {
                 if ($value->id == $configRemoteSignatoryBook['id']) {
@@ -175,6 +173,10 @@ try {
                     $configRemoteNoteBook['data'] = (array)$value;
                 }
             }
+        } else {
+            $GLOBALS['logger']->write($path . ' can not be loaded', 'ERROR', 102);
+            echo "\nConfiguration file ".$path." can not be loaded ! \nThe batch cannot be launched !\n\n";
+            exit(102);
         }
     } else {
         $GLOBALS['logger']->write($path . ' does not exist', 'ERROR', 102);
@@ -220,7 +222,7 @@ try {
 $GLOBALS['db'] = new \SrcCore\models\DatabasePDO(['customId' => $GLOBALS['CustomId']]);
 
 $GLOBALS['errorLckFile'] = $GLOBALS['batchDirectory'] . DIRECTORY_SEPARATOR . $GLOBALS['batchName'] .'_error.lck';
-$GLOBALS['lckFile'] = $GLOBALS['batchDirectory'] . DIRECTORY_SEPARATOR . $GLOBALS['batchName'] . '.lck';
+$GLOBALS['lckFile']      = $GLOBALS['batchDirectory'] . DIRECTORY_SEPARATOR . $GLOBALS['batchName'] . '.lck';
 
 if (file_exists($GLOBALS['errorLckFile'])) {
     $GLOBALS['logger']->write(
@@ -260,14 +262,14 @@ if ($configRemoteSignatoryBook['id'] == 'ixbus') {
 
 $GLOBALS['logger']->write('Retrieve mails sent to remote signatory book', 'INFO');
 $query = "SELECT res_id, external_id->>'signatureBookId' as external_id, subject, typist, version 
-        FROM res_letterbox WHERE external_id->>'signatureBookId' IS NOT NULL";
+        FROM res_letterbox WHERE external_id->>'signatureBookId' IS NOT NULL AND external_id->>'signatureBookId' <> ''";
 $stmt = $GLOBALS['db']->query($query, []);
 
 while ($reqResult = $stmt->fetchObject()) {
     $idsToRetrieve['resLetterbox'][$reqResult->res_id] = $reqResult;
 }
 if (!empty($idsToRetrieve['resLetterbox'])) {
-    $retrievedLetterboxMails = \ExternalSignatoryBook\controllers\MaarchParapheurController::retrieveSignedMails(['config' => $configRemoteNoteBook, 'idsToRetrieve' => $idsToRetrieve]);
+    $retrievedLetterboxMails        = \ExternalSignatoryBook\controllers\MaarchParapheurController::retrieveSignedMails(['config' => $configRemoteNoteBook, 'idsToRetrieve' => $idsToRetrieve]);
     $retrievedMails['resLetterbox'] = $retrievedLetterboxMails['resLetterbox'];
 }
 
@@ -277,21 +279,22 @@ if (!empty($retrievedMails['error'])) {
 }
 
 // On dégele les pj et on créé une nouvelle ligne si le document a été signé
+$nbMailsRetrieved = 0;
 foreach ($retrievedMails['noVersion'] as $resId => $value) {
     $GLOBALS['logger']->write('Update res_attachments : ' . $resId . '. ExternalId : ' . $value->external_id, 'INFO');
 
     if (!empty($value->log)) {
         $GLOBALS['logger']->write('Create log Attachment', 'INFO');
         Bt_createAttachment([
-            'res_id_master'     => $value->res_id_master,
+            'resIdMaster'       => $value->res_id_master,
             'title'             => '[xParaph Log] ' . $value->title,
-            'identifier'        => $value->identifier,
-            'recipient_id'      => $value->recipient_id,
-            'recipient_type'    => $value->recipient_type,
+            'chrono'            => $value->identifier,
+            'recipientId'       => $value->recipient_id,
+            'recipientType'     => $value->recipient_type,
             'typist'            => $value->typist,
             'format'            => 'xml',
-            'attachment_type'   => $value->attachment_type,
-            'in_signature_book' => 'false',
+            'type'              => $value->attachment_type,
+            'inSignatureBook'   => false,
             'encodedFile'       => $value->log,
             'status'            => 'TRA'
         ]);
@@ -311,26 +314,23 @@ foreach ($retrievedMails['noVersion'] as $resId => $value) {
 
             $GLOBALS['logger']->write('Create validated Attachment', 'INFO');
             Bt_createAttachment([
-                'res_id_master'   => $value->res_id_master,
+                'resIdMaster'     => $value->res_id_master,
                 'title'           => $value->title,
-                'identifier'      => $value->identifier,
-                'recipient_id'    => $value->recipient_id,
-                'recipient_type'  => $value->recipient_type,
+                'chrono'          => $value->identifier,
+                'recipientId'     => $value->recipient_id,
+                'recipientType'   => $value->recipient_type,
                 'typist'          => $value->typist,
                 'format'          => $value->format,
-                'attachment_type' => $value->attachment_type,
-                'in_signature_book' => 'true',
-                'origin_id'       => $resId,
+                'type'            => $value->attachment_type,
                 'status'          => 'SIGN',
                 'encodedFile'     => $value->encodedFile,
-                'noteContent'     => $value->noteContent,
-                'noteCreatorId'   => $value->noteCreatorId,
-                'noteCreatorName' => $value->noteCreatorName
+                'inSignatureBook' => true,
+                'originId'        => $resId
             ]);
         }
 
         $GLOBALS['logger']->write('Document validated', 'INFO');
-        $GLOBALS['db']->query("UPDATE res_attachments SET status = 'OBS', external_id = external_id - 'signatureBookId' WHERE res_id = ?", [$resId]);
+        $GLOBALS['db']->query("UPDATE res_attachments SET status = 'TRA', external_id = external_id - 'signatureBookId', in_signature_book = 'false' WHERE res_id = ?", [$resId]);
         if (!empty($value->onlyVisa) && $value->onlyVisa) {
             $status = $validatedStatusOnlyVisa;
         } else {
@@ -339,6 +339,32 @@ foreach ($retrievedMails['noVersion'] as $resId => $value) {
         Bt_validatedMail(['status' => $status, 'resId' => $value->res_id_master]);
 
         $historyInfo = 'La signature de la pièce jointe '.$resId.' (res_attachments) a été validée dans le parapheur externe' . $additionalHistoryInfo;
+    } elseif ($value->status == 'refused') {
+        if (!empty($value->encodedFile)) {
+            $GLOBALS['logger']->write('Create refused Attachment', 'INFO');
+            Bt_createAttachment([
+                'resIdMaster'     => $value->res_id_master,
+                'title'           => '[REFUSE] ' . $value->title,
+                'chrono'          => $value->identifier,
+                'recipientId'     => $value->recipient_id,
+                'recipientType'   => $value->recipient_type,
+                'typist'          => $value->typist,
+                'format'          => $value->format,
+                'type'            => $value->attachment_type,
+                'status'          => 'A_TRA',
+                'encodedFile'     => $value->encodedFile,
+                'inSignatureBook' => false
+            ]);
+        }
+        $GLOBALS['logger']->write('Document refused', 'INFO');
+        $GLOBALS['db']->query('UPDATE listinstance SET process_date = NULL WHERE res_id = ? AND difflist_type = ?', [$value->res_id_master, 'VISA_CIRCUIT']);
+        $GLOBALS['db']->query("UPDATE res_attachments SET status = 'A_TRA', external_id = external_id - 'signatureBookId' WHERE res_id = ?", [$resId]);
+        $GLOBALS['db']->query("UPDATE res_letterbox SET status = '" . $refusedStatus . "' WHERE res_id = ?", [$value->res_id_master]);
+    
+        $historyInfo = 'La signature de la pièce jointe '.$resId.' (res_attachments) a été refusée dans le parapheur externe' . $additionalHistoryInfo;
+    }
+    if (in_array($value->status, ['validated', 'refused'])) {
+        Bt_createNote(['creatorId' => $value->noteCreatorId, 'creatorName' => $value->noteCreatorName, 'content' => $value->noteContent, 'resId' => $value->res_id_master]);
         Bt_history([
             'table_name' => 'res_attachments',
             'record_id'  => $resId,
@@ -346,6 +372,7 @@ foreach ($retrievedMails['noVersion'] as $resId => $value) {
             'event_type' => 'UP',
             'event_id'   => 'attachup'
         ]);
+    
         Bt_history([
             'table_name' => 'res_letterbox',
             'record_id'  => $value->res_id_master,
@@ -353,38 +380,7 @@ foreach ($retrievedMails['noVersion'] as $resId => $value) {
             'event_type' => 'ACTION#1',
             'event_id'   => '1'
         ]);
-    } elseif ($value->status == 'refused') {
-        if (!empty($value->encodedFile)) {
-            $GLOBALS['logger']->write('Create refused Attachment', 'INFO');
-            Bt_createAttachment([
-                'res_id_master'   => $value->res_id_master,
-                'title'           => '[REFUSE] ' . $value->title,
-                'identifier'      => $value->identifier,
-                'recipient_id'    => $value->recipient_id,
-                'recipient_type'  => $value->recipient_type,
-                'typist'          => $value->typist,
-                'format'          => $value->format,
-                'attachment_type' => $value->attachment_type,
-                'status'          => 'A_TRA',
-                'encodedFile'     => $value->encodedFile,
-                'in_signature_book' => 'false',
-                'noteContent'     => $value->noteContent,
-                'noteCreatorId'   => $value->noteCreatorId,
-                'noteCreatorName' => $value->noteCreatorName
-            ]);
-            $value->noteContent = '';
-        }
-        $GLOBALS['logger']->write('Document refused', 'INFO');
-        Bt_refusedSignedMail([
-            'tableAttachment' => 'res_attachments',
-            'resIdAttachment' => $resId,
-            'refusedStatus'   => $refusedStatus,
-            'resIdMaster'     => $value->res_id_master,
-            'noteContent'     => $value->noteContent,
-            'noteCreatorId'   => $value->noteCreatorId,
-            'noteCreatorName' => $value->noteCreatorName,
-            'additionalHistoryInfo' => $additionalHistoryInfo
-        ]);
+        $nbMailsRetrieved++;
     }
 }
 
@@ -394,23 +390,16 @@ foreach ($retrievedMails['resLetterbox'] as $resId => $value) {
     if (!empty($value->encodedFile)) {
         $GLOBALS['logger']->write('Create document in res_letterbox', 'INFO');
         if ($value->status =='validated') {
-            \SrcCore\models\DatabaseModel::delete([
-                'table' => 'adr_letterbox',
-                'where' => ['res_id = ?', 'type in (?)', 'version = ?'],
-                'data'  => [$resId, ['SIGN', 'TNL'], $value->version]
-            ]);
+            $typeToDelete = ['SIGN', 'TNL'];
         } else {
-            \SrcCore\models\DatabaseModel::delete([
-                'table' => 'adr_letterbox',
-                'where' => ['res_id = ?', 'type in (?)', 'version = ?'],
-                'data'  => [$resId, ['NOTE'], $value->version]
-            ]);
+            $typeToDelete = ['NOTE'];
         }
+        \SrcCore\models\DatabaseModel::delete([
+            'table' => 'adr_letterbox',
+            'where' => ['res_id = ?', 'type in (?)', 'version = ?'],
+            'data'  => [$resId, $typeToDelete, $value->version]
+        ]);
 
-        $adrType = 'SIGN';
-        if (in_array($value->status, ['refused', 'refusedNote', 'validatedNote'])) {
-            $adrType = 'NOTE';
-        }
         $storeResult = \Docserver\controllers\DocserverController::storeResourceOnDocServer([
             'collId'          => 'letterbox_coll',
             'docserverTypeId' => 'DOC',
@@ -421,7 +410,7 @@ foreach ($retrievedMails['resLetterbox'] as $resId => $value) {
             'table'         => 'adr_letterbox',
             'columnsValues' => [
                 'res_id'       => $resId,
-                'type'         => $adrType,
+                'type'         => in_array($value->status, ['refused', 'refusedNote', 'validatedNote']) ? 'NOTE' : 'SIGN',
                 'docserver_id' => $storeResult['docserver_id'],
                 'path'         => $storeResult['destination_dir'],
                 'filename'     => $storeResult['file_destination_name'],
@@ -430,50 +419,46 @@ foreach ($retrievedMails['resLetterbox'] as $resId => $value) {
             ]
         ]);
     }
-    $additionalHistoryInfo = '';
-    if (!empty($value->workflowInfo)) {
-        $additionalHistoryInfo =  ' : ' . $value->workflowInfo;
-    }
-    if (in_array($value->status, ['validatedNote', 'validated'])) {
-        $GLOBALS['logger']->write('Document validated', 'INFO');
-        $status = $validatedStatus;
-        if ($value->status == 'validatedNote') {
-            $status = $validatedStatusAnnot;
+    if (in_array($value->status, ['validatedNote', 'validated', 'refusedNote', 'refused'])) {
+        $additionalHistoryInfo = '';
+        if (!empty($value->workflowInfo)) {
+            $additionalHistoryInfo =  ' : ' . $value->workflowInfo;
         }
-        $GLOBALS['db']->query('UPDATE res_letterbox SET status = ? WHERE res_id = ? ', [$status, $resId]);
-        Bt_history([
-            'table_name' => 'res_letterbox',
-            'record_id'  => $resId,
-            'info'       => 'Le document '.$resId.' (res_letterbox) a été validé dans le parapheur externe' . $additionalHistoryInfo,
-            'event_type' => 'ACTION#1',
-            'event_id'   => '1'
-        ]);
-    } elseif (in_array($value->status, ['refusedNote', 'refused'])) {
-        $GLOBALS['logger']->write('Document refused', 'INFO');
-        $status = $refusedStatus;
-        if ($value->status == 'refusedNote') {
-            $status = $refusedStatusAnnot;
+        if (in_array($value->status, ['validatedNote', 'validated'])) {
+            $GLOBALS['logger']->write('Document validated', 'INFO');
+            $status = $validatedStatus;
+            if ($value->status == 'validatedNote') {
+                $status = $validatedStatusAnnot;
+            }
+            $history = 'Le document '.$resId.' (res_letterbox) a été validé dans le parapheur externe' . $additionalHistoryInfo;
+        } elseif (in_array($value->status, ['refusedNote', 'refused'])) {
+            $GLOBALS['logger']->write('Document refused', 'INFO');
+            $status = $refusedStatus;
+            if ($value->status == 'refusedNote') {
+                $status = $refusedStatusAnnot;
+            }
+            $history = 'Le document '.$resId.' (res_letterbox) a été refusé dans le parapheur externe' . $additionalHistoryInfo;
         }
-        $GLOBALS['db']->query("UPDATE res_letterbox SET status = ? WHERE res_id = ?", [$status, $resId]);
         Bt_history([
             'table_name' => 'res_letterbox',
             'record_id'  => $resId,
-            'info'       => 'Le document '.$resId.' (res_letterbox) a été refusé dans le parapheur externe' . $additionalHistoryInfo,
+            'info'       => $history,
             'event_type' => 'ACTION#1',
             'event_id'   => '1'
         ]);
+        Bt_createNote(['creatorId' => $value->noteCreatorId, 'creatorName' => $value->noteCreatorName, 'content' => $value->noteContent, 'resId' => $resId]);
+        $GLOBALS['db']->query("UPDATE res_letterbox SET status = ?, external_id = external_id - 'signatureBookId' WHERE res_id = ?", [$status, $resId]);
+        $nbMailsRetrieved++;
     }
-    $GLOBALS['db']->query("UPDATE res_letterbox SET external_id = external_id - 'signatureBookId' WHERE res_id = ?", [$resId]);
 }
 
 $GLOBALS['logger']->write('End of process', 'INFO');
-$nbMailsRetrieved = count($retrievedMails['noVersion']) + count($retrievedMails['resLetterbox']);
 $GLOBALS['logger']->write($nbMailsRetrieved.' document(s) retrieved', 'INFO');
 
 Bt_logInDataBase(
     $nbMailsRetrieved,
     $err,
-    $nbMailsRetrieved.' mail(s) retrieved'
+    $nbMailsRetrieved.' mail(s) retrieved from signatory book'
 );
 Bt_updateWorkBatch();
 
diff --git a/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php b/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php
index 0704b1c4717e61ece0e9cb4e7cc3343665b01960..97973a6fb180a1c4ebf6cc1f29e7ed04cc666aa6 100755
--- a/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php
+++ b/src/app/external/externalSignatoryBook/controllers/MaarchParapheurController.php
@@ -493,13 +493,14 @@ class MaarchParapheurController
                     if (!empty($state['note'])) {
                         $aArgs['idsToRetrieve'][$version][$resId]->noteContent = $state['note'];
                         $userInfos = UserModel::getByExternalId([
-                            'select'            => ['id'],
+                            'select'            => ['id', 'firstname', 'lastname'],
                             'externalId'        => $state['noteCreatorId'],
                             'externalName'      => 'maarchParapheur'
                         ]);
                         if (!empty($userInfos)) {
                             $aArgs['idsToRetrieve'][$version][$resId]->noteCreatorId = $userInfos['id'];
-                        } else {
+                            $aArgs['idsToRetrieve'][$version][$resId]->noteCreatorName = $userInfos['firstname'] . ' ' . $userInfos['lastname'];
+                        } elseif (!empty($state['noteCreatorName'])) {
                             $aArgs['idsToRetrieve'][$version][$resId]->noteCreatorName = $state['noteCreatorName'];
                         }
                     }
diff --git a/src/app/resource/controllers/ResController.php b/src/app/resource/controllers/ResController.php
index dddc974be10be7dde51064ab8a9fd170f9d9f267..40a768036c1508186b8e8b9daa976ad7e31de054 100755
--- a/src/app/resource/controllers/ResController.php
+++ b/src/app/resource/controllers/ResController.php
@@ -385,8 +385,6 @@ class ResController extends ResourceControlController
         $convertedDocument = ConvertPdfController::getConvertedPdfById(['resId' => $aArgs['resId'], 'collId' => 'letterbox_coll']);
         if (!empty($convertedDocument['errors'])) {
             return $response->withStatus(400)->withJson(['errors' => 'Conversion error : ' . $convertedDocument['errors']]);
-        } elseif ($document['docserver_id'] == $convertedDocument['docserver_id']) {
-            return $response->withStatus(400)->withJson(['errors' => 'Document can not be converted']);
         }
 
         $document = $convertedDocument;
diff --git a/src/app/resource/controllers/StoreController.php b/src/app/resource/controllers/StoreController.php
index 61899876cd8763d306f7d3b397a59f89eb511af4..9e7ee4b387dbb939fdf8c0c13bf3074c66d97fd7 100755
--- a/src/app/resource/controllers/StoreController.php
+++ b/src/app/resource/controllers/StoreController.php
@@ -312,6 +312,7 @@ class StoreController
             $externalId = json_encode($args['externalId']);
         }
 
+        $inSignatureBook = isset($args['inSignatureBook']) ? $args['inSignatureBook'] : $attachmentsTypes[$args['type']]['sign'];
         $preparedData = [
             'title'                 => $args['title'] ?? null,
             'identifier'            => $args['chrono'] ?? null,
@@ -326,7 +327,7 @@ class StoreController
             'recipient_type'        => !empty($args['recipientId']) ? $args['recipientType'] : null,
             'validation_date'       => $args['validationDate'] ?? null,
             'effective_date'        => $args['effectiveDate'] ?? null,
-            'in_signature_book'     => $attachmentsTypes[$args['type']]['sign'] == true || !empty($args['inSignatureBook']) ? 'true' : 'false',
+            'in_signature_book'     => $inSignatureBook ? 'true' : 'false',
             'external_id'           => $externalId,
             'creation_date'         => 'CURRENT_TIMESTAMP'
         ];