diff --git a/src/sakia/gui/navigation/identity/table_model.py b/src/sakia/gui/navigation/identity/table_model.py
index 3297642c8ee55e259341569461f61c72071ec559..b8a499b08834d9d808583ae725adf30f615524cf 100644
--- a/src/sakia/gui/navigation/identity/table_model.py
+++ b/src/sakia/gui/navigation/identity/table_model.py
@@ -1,5 +1,5 @@
 from sakia.errors import NoPeerAvailable
-from sakia.data.entities import Identity
+from sakia.data.entities import Identity, Certification
 from sakia.data.processors import BlockchainProcessor
 from PyQt5.QtCore import QAbstractTableModel, QSortFilterProxyModel, Qt, \
                         QDateTime, QModelIndex, QLocale, QT_TRANSLATE_NOOP
@@ -16,7 +16,7 @@ class CertifiersFilterProxyModel(QSortFilterProxyModel):
 
     def columnCount(self, parent):
         return len(CertifiersTableModel.columns_ids) - 2
-    
+
     def lessThan(self, left, right):
         """
         Sort table by given column number.
@@ -108,47 +108,56 @@ class CertifiersTableModel(QAbstractTableModel):
         self.connection = connection
         self.blockchain_service = blockchain_service
         self.identities_service = identities_service
-        self._certifiers_data = []
+        self._certifiers_data = list()
 
-    def certifier_data(self, certification):
+    def init_certifiers(self):
+        """
+        Init table with data to display
+        """
+        self.beginResetModel()
+        certifications = self.identities_service.certifications_received(self.connection.pubkey)
+        logging.debug("Refresh {0} certifiers".format(len(certifications)))
+        certifiers_data = []
+        for certifier in certifications:
+            certifiers_data.append(self.certifier_data(certifier))
+
+        self._certifiers_data = certifiers_data
+        self.endResetModel()
+
+    def certifier_data(self, certification: Certification) -> tuple:
         """
         Return the identity in the form a tuple to display
-        :param sakia.data.entities.Certification certification: The certification to get data from
+        :param Certification certification: The certification to get data from
         :return: The certification data in the form of a tuple
         :rtype: tuple
         """
         parameters = self.blockchain_service.parameters()
         publication_date = certification.timestamp
-        identity = self.identities_service.get_identity(certification.certifier)
-        if not identity:
-            identity = Identity(currency=certification.currency, pubkey=certification.certifier, uid="")
         written = certification.written_on >= 0
+
         if written:
             expiration_date = publication_date + parameters.sig_validity
         else:
             expiration_date = publication_date + parameters.sig_window
-        return identity.uid, identity.pubkey, publication_date, expiration_date, written, identity
 
-    def certifier_loaded(self, identity):
-        for i, idty in enumerate(self.identities_data):
-            if idty[CertifiersTableModel.columns_ids.index('identity')] == identity:
-                self._certifiers_data[i] = self._certifiers_data(identity)
-                self.dataChanged.emit(self.index(i, 0), self.index(i, len(CertifiersTableModel.columns_ids)))
-                return
+        identity = self.identities_service.get_identity(certification.certifier)
+        if not identity:
+            identity = Identity(currency=certification.currency, pubkey=certification.certifier, uid="")
 
-    def init_certifiers(self):
-        """
-        Change the identities to display
+        return identity.uid, identity.pubkey, publication_date, expiration_date, written, identity
+
+    def certifier_loaded(self, identity: Identity):
         """
-        self.beginResetModel()
-        certifications = self.identities_service.certifications_received(self.connection.pubkey)
-        logging.debug("Refresh {0} certifiers".format(len(certifications)))
-        certifiers_data = []
-        for certifier in certifications:
-            certifiers_data.append(self.certifier_data(certifier))
+        Update identity of certifier after closing information window
 
-        self._certifiers_data = certifiers_data
-        self.endResetModel()
+        :param Identity identity: Updated identity of the certifier
+        :return:
+        """
+        for i, certifier_data in enumerate(self._certifiers_data):
+            if certifier_data[CertifiersTableModel.columns_ids.index('identity')] == identity:
+                self._certifiers_data[i] = update_certifier_data_from_identity(certifier_data, identity)
+                self.dataChanged.emit(self.index(i, 0), self.index(i, len(CertifiersTableModel.columns_ids)))
+                return
 
     def rowCount(self, parent):
         return len(self._certifiers_data)
@@ -170,3 +179,24 @@ class CertifiersTableModel(QAbstractTableModel):
 
     def flags(self, index):
         return Qt.ItemIsSelectable | Qt.ItemIsEnabled
+
+
+#######################
+# STATIC FUNCTIONS
+#######################
+
+
+def update_certifier_data_from_identity(certifier_data: tuple, identity: Identity) -> tuple:
+    """
+    Return certifier data from updated identity
+
+    :param tuple certifier_data: Certifier data list
+    :param Identity identity: Identity of the certifier
+    :return tuple:
+    """
+    return identity.uid, \
+        identity.pubkey, \
+        certifier_data[CertifiersTableModel.columns_ids.index('publication')], \
+        certifier_data[CertifiersTableModel.columns_ids.index('expiration')], \
+        certifier_data[CertifiersTableModel.columns_ids.index('written')], \
+        identity
diff --git a/src/sakia/services/identities.py b/src/sakia/services/identities.py
index efa457ff6298d8a53eb08d3c408d84a54eca0838..57903a5a8080490a905cd3b78d7c0e935a6dcce8 100644
--- a/src/sakia/services/identities.py
+++ b/src/sakia/services/identities.py
@@ -75,7 +75,7 @@ class IdentitiesService(QObject):
         for c in connections:
             identities.append(self._identities_processor.get_identity(self.currency, c.pubkey))
         return identities
-    
+
     def is_identity_of_connection(self, identity):
         return identity.pubkey in self._connections_processor.pubkeys()
 
@@ -485,7 +485,7 @@ class IdentitiesService(QObject):
         """
         Get the list of certifications received by a given identity
         :param str pubkey: the pubkey
-        :rtype: List[sakia.data.entities.Certifications]
+        :rtype: list[Certification]
         """
         return self._certs_processor.certifications_received(self.currency, pubkey)
 
@@ -493,6 +493,6 @@ class IdentitiesService(QObject):
         """
         Get the list of certifications received by a given identity
         :param str pubkey: the pubkey
-        :rtype: List[sakia.data.entities.Certifications]
+        :rtype: list[Certification]
         """
         return self._certs_processor.certifications_sent(self.currency, pubkey)