diff --git a/src/api/datatransfermodel.h b/src/api/datatransfermodel.h
index 5fc79de7683b732366aefb3923d7482ebf86dc64..2728e60969e003313fda867e90af8b94312593ff 100644
--- a/src/api/datatransfermodel.h
+++ b/src/api/datatransfermodel.h
@@ -74,6 +74,11 @@ public:
      */
     QString downloadDirectory;
 
+    /**
+     *  Creates APPDATA/received and return the path
+     */
+    static QString createDefaultDirectory();
+
 Q_SIGNALS:
     /**
      * Connect this signal to know when a data transfer is incoming.
diff --git a/src/datatransfermodel.cpp b/src/datatransfermodel.cpp
index 23823d4152377dee14036351a4e4876751bf9416..7e857d081ef39fa4849f16683fcd77e88ffb6435 100644
--- a/src/datatransfermodel.cpp
+++ b/src/datatransfermodel.cpp
@@ -31,8 +31,10 @@
 #include <type_traits>
 
 // Qt
-#include <QUuid>
+#include <QDir>
 #include <QFileInfo>
+#include <QtCore/QStandardPaths>
+#include <QUuid>
 
 namespace lrc { namespace api {
 
@@ -188,6 +190,16 @@ DataTransferModel::getDringIdFromInteractionId(int interactionId)
     return pimpl_->lrc2dringIdMap.at(interactionId);
 }
 
+QString
+DataTransferModel::createDefaultDirectory()
+{
+    auto defaultDirectory = QStandardPaths::writableLocation(QStandardPaths::DownloadLocation) + "/Jami";
+    QDir dir(defaultDirectory);
+    if (!dir.exists())
+        dir.mkpath(".");
+    return defaultDirectory;
+}
+
 }} // namespace lrc::api
 
 #include "api/moc_datatransfermodel.cpp"