diff --git a/src/app/contentManagement/controllers/OnlyOfficeController.php b/src/app/contentManagement/controllers/OnlyOfficeController.php
index 5dd5e463c6d004c2b31a1ae9d91731d54a8c0f68..741073fee362eef0880e3554b3cecca4b53cd1c0 100644
--- a/src/app/contentManagement/controllers/OnlyOfficeController.php
+++ b/src/app/contentManagement/controllers/OnlyOfficeController.php
@@ -177,11 +177,11 @@ class OnlyOfficeController
     {
         $loadedXml = CoreConfigModel::getXmlLoaded(['path' => 'apps/maarch_entreprise/xml/documentEditorsConfig.xml']);
         if (empty($loadedXml) || empty($loadedXml->onlyoffice->enabled) || $loadedXml->onlyoffice->enabled == 'false') {
-            return $response->withStatus(400)->withJson(['errors' => 'Onlyoffice is not enabled', 'lang' => '']);
+            return $response->withStatus(400)->withJson(['errors' => 'Onlyoffice is not enabled', 'lang' => 'onlyOfficeNotEnabled']);
         } elseif (empty($loadedXml->onlyoffice->server_uri)) {
-            return $response->withStatus(400)->withJson(['errors' => 'Onlyoffice server_uri is empty', 'lang' => '']);
+            return $response->withStatus(400)->withJson(['errors' => 'Onlyoffice server_uri is empty', 'lang' => 'uriIsEmpty']);
         } elseif (empty($loadedXml->onlyoffice->server_port)) {
-            return $response->withStatus(400)->withJson(['errors' => 'Onlyoffice server_port is empty', 'lang' => '']);
+            return $response->withStatus(400)->withJson(['errors' => 'Onlyoffice server_port is empty', 'lang' => 'portIsEmpty']);
         }
 
         $uri = (string)$loadedXml->onlyoffice->server_uri;
diff --git a/src/frontend/lang/lang-en.ts b/src/frontend/lang/lang-en.ts
index 9dfa67747360ab263a4b18b9e3b73fe8a16bc0aa..c3d12458b927e74ba240e32baea6cdd3434a441d 100755
--- a/src/frontend/lang/lang-en.ts
+++ b/src/frontend/lang/lang-en.ts
@@ -1380,6 +1380,9 @@ export const LANG_EN = {
     "closeEditor" : "Close the editor",
     "errorOnlyoffice1" : "Cannot launch onlyoffice, a local address is used",
     "errorOnlyoffice2" : "Cannot launch onlyoffice. Check if the only office server is available",
+    "onlyOfficeNotEnabled" : "The onlyoffice server is not enabled",
+    "uriIsEmpty" : "URI of onlyoffice server is empty in documentEditorsConfig.xml",
+    "portIsEmpty" : "Port of onlyoffice server is empty in documentEditorsConfig.xml",
     "externalVisaWorkflow" : "Visa workflow Maarch Parapheur",
     "IdMaarch2Gec" : "MAARCH2GEC identifier",
     "indexingFile" : "Indexation",
diff --git a/src/frontend/lang/lang-fr.ts b/src/frontend/lang/lang-fr.ts
index 21270cfcd60c8340a0dd7951ab35fabb27ddae64..6a9fe86d88534eddbbea33fcc3908d09072bd1c0 100755
--- a/src/frontend/lang/lang-fr.ts
+++ b/src/frontend/lang/lang-fr.ts
@@ -1420,6 +1420,9 @@ export const LANG_FR = {
     "closeEditor" : "Fermer l'éditeur",
     "errorOnlyoffice1" : "Impossible de lancer onlyoffice, vous utilisez une adresse locale",
     "errorOnlyoffice2" : "Impossible de lancer onlyoffice. Veuillez vérifier la disponibilité du serveur",
+    "onlyOfficeNotEnabled" : "Le Serveur onlyoffice n'est pas activé dans documentEditorsConfig.xml",
+    "uriIsEmpty" : "L'uri du serveur onlyoffice n'est pas renseigné dans documentEditorsConfig.xml",
+    "portIsEmpty" : "Le port du serveur onlyoffice n'est pas renseigné dans documentEditorsConfig.xml",
     "externalVisaWorkflow" : "Circuit de visa Maarch Parapheur",
     "IdMaarch2Gec" : "Identifiant MAARCH2GEC",
     "indexingFile" : "Indexation",
diff --git a/src/frontend/lang/lang-nl.ts b/src/frontend/lang/lang-nl.ts
index 4408bf5d4861903ec0ae8bf62815f65b697d576d..4f904361b48cb8e8c0730accd1d5116a9ddb1357 100755
--- a/src/frontend/lang/lang-nl.ts
+++ b/src/frontend/lang/lang-nl.ts
@@ -1403,6 +1403,11 @@ export const LANG_NL = {
     "searchTrackedMail": "Search in tracked mails", //_TO_TRANSLATE
     "checkOnlyofficeServer": "Establish contact with the Onlyoffice server", //_TO_TRANSLATE
     "closeEditor" : "Close the editor", //_TO_TRANSLATE
+    "errorOnlyoffice1" : "Cannot launch onlyoffice, a local address is used", //_TO_TRANSLATE
+    "errorOnlyoffice2" : "Cannot launch onlyoffice. Check if the only office server is available", //_TO_TRANSLATE
+    "onlyOfficeNotEnabled" : "The onlyoffice server is not enabled", //_TO_TRANSLATE
+    "uriIsEmpty" : "URI of onlyoffice server is empty in documentEditorsConfig.xml", //_TO_TRANSLATE
+    "portIsEmpty" : "Port of onlyoffice server is empty in documentEditorsConfig.xml", //_TO_TRANSLATE
     "externalVisaWorkflow" : "Visa workflow Maarch Parapheur", //_TO_TRANSLATE
     "IdMaarch2Gec" : "MAARCH2GEC identifier", //_TO_TRANSLATE
     "indexingFile" : "Indexation", //_TO_TRANSLATE
diff --git a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js
index 6578680d1a7d956806a7d962ab70411c3fa2c402..4430d40df39bff492bafcb67de5792c0ca6e013a 100644
--- a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js
+++ b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js
@@ -689,7 +689,7 @@ var onlyofficetesturl = '';
     };
 
     function getBasePath(config) {
-        return `http://${config.onlyOfficeIp}/web-apps/apps/`;
+        return `${config.onlyOfficeIp}/web-apps/apps/`;
         
         /*var scripts = document.getElementsByTagName('script'),
             match;
diff --git a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts
index 1879e5477a141e51fed12b67e0b22f616b6d6834..98f417434ae13ddd5e9f222ec2efa823b5519094 100644
--- a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts
+++ b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts
@@ -123,7 +123,9 @@ export class EcplOnlyofficeViewerComponent implements OnInit, AfterViewInit {
             this.http.get(`../../rest/onlyOffice/configuration`).pipe(
                 tap((data: any) => {
                     if (data.enabled) {
-                        this.onlyfficeUrl = data.serverUri;
+                        const protocol = data.serverSsl ? 'https://': 'http://';
+                        const port = data.serverPort ? `:${data.serverPort}`: ':80';
+                        this.onlyfficeUrl = `${protocol}${data.serverUri}${port}`;
                         this.appUrl = data.coreUrl;
                         resolve(true);
                     } else {
@@ -158,6 +160,8 @@ export class EcplOnlyofficeViewerComponent implements OnInit, AfterViewInit {
                         }
                     }),
                     catchError((err) => {
+                        this.notify.error(`${this.lang[err.error.lang]}`);
+                        this.triggerCloseEditor.emit();
                         return of(false);
                     }),
                 ).subscribe();