diff --git a/src/sakia/gui/navigation/identity/view.py b/src/sakia/gui/navigation/identity/view.py
index 5fa7451ff60489fbe4a19faea6386de85adc7ca6..55811b7c6e08f4ad26932eb14e140e4e585366d3 100644
--- a/src/sakia/gui/navigation/identity/view.py
+++ b/src/sakia/gui/navigation/identity/view.py
@@ -1,5 +1,5 @@
 from PyQt5.QtWidgets import QWidget, QMessageBox, QAbstractItemView, QHeaderView
-from PyQt5.QtCore import QEvent, QLocale, pyqtSignal, Qt, QDateTime
+from PyQt5.QtCore import QEvent, QLocale, pyqtSignal, Qt, QDateTime, QCoreApplication
 from .identity_uic import Ui_IdentityWidget
 from enum import Enum
 from sakia.helpers import timestamp_to_dhms
@@ -69,7 +69,8 @@ class IdentityView(QWidget, Ui_IdentityWidget):
             self.button_membership.hide()
         else:
             if data["written"]:
-                written_value = self.tr("Identity written in blockchain")
+                written_value = QCoreApplication.translate("IdentityView", "Identity written in blockchain")
+                pass
             else:
                 expiration_text = QLocale.toString(
                     QLocale(),
@@ -77,45 +78,45 @@ class IdentityView(QWidget, Ui_IdentityWidget):
                     QLocale.dateTimeFormat(QLocale(), QLocale.ShortFormat),
                 )
                 written_value = (
-                    self.tr("Identity not written in blockchain")
+                    QCoreApplication.translate("IdentityView", "Identity not written in blockchain")
                     + " ("
-                    + self.tr("Expires on: {0}").format(expiration_text)
+                    + QCoreApplication.translate("IdentityView", "Expires on: {0}").format(expiration_text)
                     + " BAT)"
                 )
 
             status_value = (
-                self.tr("Member") if data["membership_state"] else self.tr("Not a member")
+                QCoreApplication.translate("IdentityView", "Member") if data["membership_state"] else QCoreApplication.translate("IdentityView", "Not a member")
             )
             if data["mstime"] > 0:
-                membership_action_value = self.tr("Renew membership")
+                membership_action_value = QCoreApplication.translate("IdentityView", "Renew membership")
                 status_info = ""
                 membership_action_enabled = True
             elif data["membership_state"]:
-                membership_action_value = self.tr("Renew membership")
+                membership_action_value = QCoreApplication.translate("IdentityView", "Renew membership")
                 status_info = "Your membership expired"
                 membership_action_enabled = True
             else:
-                membership_action_value = self.tr("Request membership")
+                membership_action_value = QCoreApplication.translate("IdentityView", "Request membership")
                 if data["nb_certs"] > data["nb_certs_required"]:
-                    status_info = self.tr("Identity registration ready")
+                    status_info = QCoreApplication.translate("IdentityView", "Identity registration ready")
                     membership_action_enabled = True
                 else:
-                    status_info = self.tr("{0} more certifications required").format(
+                    status_info = QCoreApplication.translate("IdentityView", "{0} more certifications required").format(
                         data["nb_certs_required"] - data["nb_certs"]
                     )
                     membership_action_enabled = True
 
             if data["mstime"] > 0:
                 days, hours, minutes, seconds = timestamp_to_dhms(data["mstime"])
-                mstime_remaining_text = self.tr("Expires in ")
+                mstime_remaining_text = QCoreApplication.translate("IdentityView", "Expires in ")
                 if days > 0:
-                    mstime_remaining_text += "{days} days".format(days=days)
+                    mstime_remaining_text += QCoreApplication.translate("IdentityView", "{days} days").format(days=days)
                 else:
-                    mstime_remaining_text += "{hours} hours and {min} min.".format(
+                    mstime_remaining_text += QCoreApplication.translate("IdentityView", "{hours} hours and {min} min.").format(
                         hours=hours, min=minutes
                     )
             else:
-                mstime_remaining_text = self.tr("Expired or never published")
+                mstime_remaining_text = QCoreApplication.translate("IdentityView", "Expired or never published")
 
             ms_status_color = "#00AA00" if data["membership_state"] else "#FF0000"
             outdistanced_status_color = (
@@ -132,13 +133,13 @@ class IdentityView(QWidget, Ui_IdentityWidget):
 <body>
     <p><span style="font-weight:600;">{status_label}</span>
      : <span style="color:{ms_status_color};">{status}</span>
-     - <span>{status_info}</span></p>
+    <span>{status_info}</span></p>
 </body>
 </html>""".format(
                 ms_status_color=ms_status_color,
-                status_label=self.tr("Status"),
+                status_label=QCoreApplication.translate("IdentityView", "Status"),
                 status=status_value,
-                status_info=status_info,
+                status_info=status_info
             )
             description_identity = """<html>
 <body>
@@ -146,11 +147,11 @@ class IdentityView(QWidget, Ui_IdentityWidget):
     <p><span style="font-weight:600;">{mstime_remaining_label}</span> : {mstime_remaining}</p>
 </body>
 </html>""".format(
-                nb_certs_label=self.tr("Certs. received"),
+                nb_certs_label=QCoreApplication.translate("IdentityView", "Certs. received"),
                 nb_certs=data["nb_certs"],
                 outdistanced_text=data["outdistanced"],
                 outdistanced_status_color=outdistanced_status_color,
-                mstime_remaining_label=self.tr("Membership"),
+                mstime_remaining_label=QCoreApplication.translate("IdentityView", "Membership"),
                 mstime_remaining=mstime_remaining_text,
             )
 
@@ -180,13 +181,13 @@ class IdentityView(QWidget, Ui_IdentityWidget):
     async def licence_dialog(self, currency, params):
         dt_dhms = timestamp_to_dhms(params.dt)
         if dt_dhms[0] > 0:
-            dt_as_str = self.tr("{:} day(s) {:} hour(s)").format(*dt_dhms)
+            dt_as_str = QCoreApplication.translate("IdentityView", "{:} day(s) {:} hour(s)").format(*dt_dhms)
         else:
-            dt_as_str = self.tr("{:} hour(s)").format(dt_dhms[1])
+            dt_as_str = QCoreApplication.translate("IdentityView", "{:} hour(s)").format(dt_dhms[1])
         if dt_dhms[2] > 0 or dt_dhms[3] > 0:
             dt_dhms += ", {:} minute(s) and {:} second(s)".format(*dt_dhms[1:])
         dt_reeval_dhms = timestamp_to_dhms(params.dt_reeval)
-        dt_reeval_as_str = self.tr("{:} day(s) {:} hour(s)").format(*dt_reeval_dhms)
+        dt_reeval_as_str = QCoreApplication.translate("IdentityView", "{:} day(s) {:} hour(s)").format(*dt_reeval_dhms)
 
         message_box = QMessageBox(self)
 
@@ -224,35 +225,35 @@ and that you will only certify persons that you know well enough.</b>
                 ROOT_SERVERS[currency]["display"],
                 params.c,
                 QLocale().toString(params.dt / 86400, "f", 2),
-                self.tr("Fundamental growth (c)"),
+                QCoreApplication.translate("IdentityView", "Fundamental growth (c)"),
                 params.ud0,
-                self.tr("Initial Universal Dividend UD(0) in"),
+                QCoreApplication.translate("IdentityView", "Initial Universal Dividend UD(0) in"),
                 ROOT_SERVERS[currency]["display"],
                 dt_as_str,
-                self.tr("Time period between two UD"),
+                QCoreApplication.translate("IdentityView", "Time period between two UD"),
                 dt_reeval_as_str,
-                self.tr("Time period between two UD reevaluation"),
+                QCoreApplication.translate("IdentityView", "Time period between two UD reevaluation"),
                 ROOT_SERVERS[currency]["display"],
                 QLocale().toString(params.sig_period / 86400, "f", 2),
-                self.tr("Minimum delay between 2 certifications (in days)"),
+                QCoreApplication.translate("IdentityView", "Minimum delay between 2 certifications (in days)"),
                 QLocale().toString(params.sig_validity / 86400, "f", 2),
-                self.tr("Maximum validity time of a certification (in days)"),
+                QCoreApplication.translate("IdentityView", "Maximum validity time of a certification (in days)"),
                 params.sig_qty,
-                self.tr("Minimum quantity of certifications to be part of the WoT"),
+                QCoreApplication.translate("IdentityView", "Minimum quantity of certifications to be part of the WoT"),
                 params.sig_stock,
-                self.tr("Maximum quantity of active certifications per member"),
+                QCoreApplication.translate("IdentityView", "Maximum quantity of active certifications per member"),
                 params.sig_window,
-                self.tr(
+                QCoreApplication.translate("IdentityView",
                     "Maximum time before a pending certification expire"
                 ),
                 params.xpercent,
-                self.tr(
+                QCoreApplication.translate("IdentityView",
                     "Minimum percent of sentries to reach to match the distance rule"
                 ),
                 params.ms_validity / 86400,
-                self.tr("Maximum validity time of a membership (in days)"),
+                QCoreApplication.translate("IdentityView", "Maximum validity time of a membership (in days)"),
                 params.step_max,
-                self.tr("Maximum distance between each WoT member and a newcomer"),
+                QCoreApplication.translate("IdentityView", "Maximum distance between each WoT member and a newcomer"),
             )
         )
         message_box.setStandardButtons(QMessageBox.Yes | QMessageBox.No)