diff --git a/src/store/modules/map.js b/src/store/modules/map.js
index 4a84a098f5bb2347b321b27cd09956360c87b3a7..083bbb453dafecdbee11ead4bab3b5056f34bf58 100644
--- a/src/store/modules/map.js
+++ b/src/store/modules/map.js
@@ -153,43 +153,59 @@ const map = {
 
 
     SAVE_BASEMAPS({ state, rootState, dispatch }, newBasemapIds) {
-      for (let basemap of state.basemaps) {
-        basemap["project"] = rootState.project_slug
-        // TODO: différencier PUT & POST
-        console.log(newBasemapIds.includes(basemap.id), newBasemapIds, basemap.id);
-        if (newBasemapIds.includes(basemap.id)) {
-          axios
-            .post(`${this.state.configuration.VUE_APP_DJANGO_API_BASE}base-maps/`, basemap)
-            .then((response) => (console.log(response.data)))
-            .catch((error) => {
-              throw error;
-            });
-        } else {
-          axios
-            .put(`${this.state.configuration.VUE_APP_DJANGO_API_BASE}base-maps/${basemap.id}/`, basemap)
-            .then((response) => (console.log(response.data)))
-            .catch((error) => {
-              throw error;
-            });
+      return new Promise((resolve, reject) => {
+        for (let basemap of state.basemaps) {
+          basemap["project"] = rootState.project_slug
+          // TODO: différencier PUT & POST
+          if (newBasemapIds.includes(basemap.id)) {
+            axios
+              .post(`${this.state.configuration.VUE_APP_DJANGO_API_BASE}base-maps/`, basemap)
+              .then((response) => {
+                resolve(response);
+              })
+              .catch((error) => {
+                reject(error);
+                throw error;
+              });
+          } else {
+            axios
+              .put(`${this.state.configuration.VUE_APP_DJANGO_API_BASE}base-maps/${basemap.id}/`, basemap)
+              .then((response) => {
+                resolve(response);
+              })
+              .catch((error) => {
+                reject(error);
+                throw error;
+              });
+          }
         }
-      }
-      //* delete in the backend the basemaps that was rewoved from the front
-      for (let basemapId of state.basemapsToDelete) {
-        dispatch("DELETE_BASEMAP", basemapId);
-      }
+        //* delete in the backend the basemaps that was rewoved from the front
+        for (let basemapId of state.basemapsToDelete) {
+          dispatch("DELETE_BASEMAP", basemapId)
+          .then((response) =>{
+            resolve(response);
+          });
+        }
+        state.basemapsToDelete = []
+      });
     },
 
     DELETE_BASEMAP({ commit }, basemapId) {
-      axios
-        .delete(`${this.state.configuration.VUE_APP_DJANGO_API_BASE}base-maps/`, basemapId)
+      return new Promise((resolve, reject) => {
+        let url = `${this.state.configuration.VUE_APP_DJANGO_API_BASE}base-maps/` + basemapId
+        axios
+        .delete(url)
         .then((response) => {
           if (response && response.status === 200) {
             commit("REMOVE_BASEMAP_ID_TO_DELETE", basemapId)
           }
+          resolve(response);
         })
         .catch((error) => {
+          reject(error);
           throw error;
         });
+      });
     }
   },
 }
diff --git a/src/views/project/Project_mapping.vue b/src/views/project/Project_mapping.vue
index f7a0b2ec7de6d78074f1a13137cc291484b3f194..3621e2d8ce1edf5590a23ab97f877c8ccc612b54 100644
--- a/src/views/project/Project_mapping.vue
+++ b/src/views/project/Project_mapping.vue
@@ -70,7 +70,11 @@ export default {
 
     saveChanges() {
       // ToDo : check if values are filled
-      this.$store.dispatch("map/SAVE_BASEMAPS", this.newBasemapIds);
+      this.$store.dispatch("map/SAVE_BASEMAPS", this.newBasemapIds)
+      .then((res) => {
+        console.log('res', res)
+      });
+      this.newBasemapIds = [];
     },
   },