diff --git a/src/app/networkmanager.cpp b/src/app/networkmanager.cpp
index 7bad5e6c6bbc8a01952f5bd49e226175fb138580..501758fbaa03f3923001da1e26ead9a30eb20ca9 100644
--- a/src/app/networkmanager.cpp
+++ b/src/app/networkmanager.cpp
@@ -59,7 +59,28 @@ void
 NetworkManager::sendGetRequest(const QUrl& url,
                                std::function<void(const QByteArray&)>&& onDoneCallback)
 {
-    auto* const reply = manager_->get(QNetworkRequest(url));
+    QNetworkRequest request = QNetworkRequest(url);
+    sendGetRequest(request, std::move(onDoneCallback));
+}
+
+void
+NetworkManager::sendGetRequest(const QUrl& url,
+                               const QMap<QString, QByteArray>& header,
+                               std::function<void(const QByteArray&)>&& onDoneCallback)
+{
+    QNetworkRequest request = QNetworkRequest(url);
+    for (auto it = header.begin(); it != header.end(); ++it) {
+        request.setRawHeader(QByteArray(it.key().toStdString().c_str(), it.key().size()),
+                             it.value());
+    }
+    sendGetRequest(request, std::move(onDoneCallback));
+}
+
+void
+NetworkManager::sendGetRequest(const QNetworkRequest& request,
+                               std::function<void(const QByteArray&)>&& onDoneCallback)
+{
+    auto* const reply = manager_->get(request);
     QObject::connect(reply, &QNetworkReply::finished, this, [reply, onDoneCallback, this]() {
         if (reply->error() == QNetworkReply::NoError) {
             onDoneCallback(reply->readAll());
diff --git a/src/app/networkmanager.h b/src/app/networkmanager.h
index daa2196be02496c89dd6a351e4aa54e6e9f500d3..569f5e794b3da0f4fd46325c0e3583c51d98011d 100644
--- a/src/app/networkmanager.h
+++ b/src/app/networkmanager.h
@@ -39,7 +39,11 @@ public:
     Q_ENUM(GetError)
 
     void sendGetRequest(const QUrl& url, std::function<void(const QByteArray&)>&& onDoneCallback);
-
+    void sendGetRequest(const QUrl& url,
+                        const QMap<QString, QByteArray>& header,
+                        std::function<void(const QByteArray&)>&& onDoneCallback);
+    void sendGetRequest(const QNetworkRequest& request,
+                        std::function<void(const QByteArray&)>&& onDoneCallback);
     int downloadFile(const QUrl& url,
                      int replyId,
                      std::function<void(bool, const QString&)>&& onDoneCallback,
diff --git a/src/app/pluginadapter.cpp b/src/app/pluginadapter.cpp
index c01d69e8b408bdf806b97e66fb3839618c9482fd..79a9ff9446fb9a919ef495a297e536c3e8efed17 100644
--- a/src/app/pluginadapter.cpp
+++ b/src/app/pluginadapter.cpp
@@ -23,21 +23,27 @@
 #include "pluginstorelistmodel.h"
 #include "networkmanager.h"
 #include "lrcinstance.h"
+#include "appsettingsmanager.h"
 #include "utilsadapter.h"
 #include "qmlregister.h"
 
 #include <QJsonArray>
 #include <QJsonDocument>
+#include <QtNetwork>
 #include <QJsonObject>
 #include <QDir>
 #include <QString>
 
-PluginAdapter::PluginAdapter(LRCInstance* instance, QObject* parent, QString baseUrl)
+PluginAdapter::PluginAdapter(LRCInstance* instance,
+                             AppSettingsManager* settingsManager,
+                             QObject* parent,
+                             QString baseUrl)
     : QmlAdapterBase(instance, parent)
     , pluginStoreListModel_(new PluginStoreListModel(instance, this))
     , pluginVersionManager_(new PluginVersionManager(instance, baseUrl, this))
     , pluginListModel_(new PluginListModel(instance, this))
     , lrcInstance_(instance)
+    , settingsManager_(settingsManager)
     , tempPath_(QDir::tempPath())
     , baseUrl_(baseUrl)
 
@@ -89,9 +95,13 @@ PluginAdapter::getPluginsFromStore()
                                        [this](NetworkManager::GetError error, const QString& msg) {
                                            Q_EMIT storeNotAvailable();
                                        });
+    QMap<QString, QByteArray> header;
+    const auto& language = settingsManager_->getLanguage();
+    header["Accept-Language"] = QByteArray(language.toStdString().c_str(), language.size());
     pluginVersionManager_
         ->sendGetRequest(QUrl(baseUrl_
                               + "?arch=" + lrcInstance_->pluginModel().getPlatformInfo()["os"]),
+                         header,
                          [this, errorHandler](const QByteArray& data) {
                              auto result = QJsonDocument::fromJson(data).array();
                              auto pluginsInstalled = lrcInstance_->pluginModel().getPluginsId();
@@ -113,9 +123,13 @@ PluginAdapter::getPluginsFromStore()
 void
 PluginAdapter::getPluginDetails(const QString& pluginId)
 {
+    QMap<QString, QByteArray> header;
+    const auto& language = settingsManager_->getLanguage();
+    header["Accept-Language"] = QByteArray(language.toStdString().c_str(), language.size());
     pluginVersionManager_
         ->sendGetRequest(QUrl(baseUrl_ + "/details/" + pluginId
                               + "?arch=" + lrcInstance_->pluginModel().getPlatformInfo()["os"]),
+                         header,
                          [this](const QByteArray& data) {
                              auto result = QJsonDocument::fromJson(data).object();
                              // my response is a json object and I want to convert
diff --git a/src/app/pluginadapter.h b/src/app/pluginadapter.h
index c7039d2eea032cb4ee2d0a3d5f496cd762d2ace7..5b7c3ae92bdbcd36a14737ef377c8c75d8fdb53b 100644
--- a/src/app/pluginadapter.h
+++ b/src/app/pluginadapter.h
@@ -32,6 +32,7 @@
 
 class PluginVersionManager;
 class PluginStoreListModel;
+class AppSettingsManager;
 
 class PluginAdapter final : public QmlAdapterBase
 {
@@ -41,6 +42,7 @@ class PluginAdapter final : public QmlAdapterBase
 
 public:
     explicit PluginAdapter(LRCInstance* instance,
+                           AppSettingsManager* settingsManager,
                            QObject* parent = nullptr,
                            QString baseUrl = "https://plugins.jami.net");
     ~PluginAdapter() = default;
@@ -79,4 +81,5 @@ private:
     std::mutex mtx_;
     QString tempPath_;
     QString baseUrl_;
+    AppSettingsManager* settingsManager_;
 };
diff --git a/src/app/qmlregister.cpp b/src/app/qmlregister.cpp
index 7ebab391d79b46efbd0a7bb9d9921b3bcd4e8383..55d2cca90369d37a219c5b3f7893b8247a9c8409 100644
--- a/src/app/qmlregister.cpp
+++ b/src/app/qmlregister.cpp
@@ -123,7 +123,7 @@ registerTypes(QQmlEngine* engine,
     auto contactAdapter = new ContactAdapter(lrcInstance, parent);
     auto accountAdapter = new AccountAdapter(settingsManager, systemTray, lrcInstance, parent);
     auto utilsAdapter = new UtilsAdapter(settingsManager, systemTray, lrcInstance, parent);
-    auto pluginAdapter = new PluginAdapter(lrcInstance, parent);
+    auto pluginAdapter = new PluginAdapter(lrcInstance, settingsManager, parent);
     auto currentCall = new CurrentCall(lrcInstance, parent);
     auto currentConversation = new CurrentConversation(lrcInstance, parent);
     auto currentAccount = new CurrentAccount(lrcInstance, settingsManager, parent);