diff --git a/src/sakia/gui/navigation/identity/model.py b/src/sakia/gui/navigation/identity/model.py
index 589e957673ab5456fbddb6e3fe30f1e7fa177b8e..952173b838b017fcfe4618fd6dcfc5528c08b447 100644
--- a/src/sakia/gui/navigation/identity/model.py
+++ b/src/sakia/gui/navigation/identity/model.py
@@ -53,9 +53,11 @@ class IdentityModel(QObject):
     async def refresh_identity_data(self):
         identity = self.identities_service.get_identity(self.connection.pubkey, self.connection.uid)
         identity = await self.identities_service.load_requirements(identity)
-        certifiers = await self.identities_service.load_certifiers_of(identity)
-        certified = await self.identities_service.load_certified_by(identity)
-        await self.identities_service.load_certs_in_lookup(identity, certifiers, certified)
+
+        # update identities in database from the network
+        await self.identities_service.initialize_certifications(identity, None, None)
+
+        # update identities from database
         self.table_model.init_certifiers()
 
     def table_data(self, index):
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..197f6757b66156b2ca28b9426182174cc3046086 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()
 
@@ -237,30 +237,36 @@ class IdentitiesService(QObject):
             logging.debug(str(e))
         return certifications
 
-    async def initialize_certifications(self, identity, log_stream, progress):
+    async def initialize_certifications(self, identity, log_stream=None, progress=None):
         """
         Initialize certifications to and from a given identity
         :param sakia.data.entities.Identity identity:
-        :param function log_stream:
-        :param function progress:
+        :param function log_stream: Logger function
+        :param function progress: Progress function for progress bar
         """
-        log_stream("Requesting certifiers of data")
+        if log_stream:
+            log_stream("Requesting certifiers of data")
         certifiers = await self.load_certifiers_of(identity)
 
-        log_stream("Requesting certified by data")
+        if log_stream:
+            log_stream("Requesting certified by data")
         certified = await self.load_certified_by(identity)
 
-        log_stream("Requesting lookup data")
+        if log_stream:
+            log_stream("Requesting lookup data")
         certifiers, certified = await self.load_certs_in_lookup(identity, certifiers, certified)
 
-        log_stream("Requesting identities of certifications")
+        if log_stream:
+            log_stream("Requesting identities of certifications")
         identities = []
         i = 0
         nb_certs = len(certified + certifiers)
         for cert in certifiers:
-            log_stream("Requesting identity... {0}/{1}".format(i, nb_certs))
+            if log_stream:
+                log_stream("Requesting identity... {0}/{1}".format(i, nb_certs))
             i += 1
-            progress(1/nb_certs)
+            if progress:
+                progress(1/nb_certs)
             certifier = self.get_identity(cert.certifier)
             if not certifier:
                 certifier = await self.find_from_pubkey(cert.certifier)
@@ -268,16 +274,18 @@ class IdentitiesService(QObject):
                 identities.append(certifier)
 
         for cert in certified:
-            log_stream("Requesting identity... {0}/{1}".format(i, nb_certs))
+            if log_stream:
+                log_stream("Requesting identity... {0}/{1}".format(i, nb_certs))
             i += 1
-            progress(1/nb_certs)
+            if progress:
+                progress(1/nb_certs)
             certified = self.get_identity(cert.certified)
             if not certified:
                 certified = await self.find_from_pubkey(cert.certified)
                 certified = await self.load_requirements(certified)
                 identities.append(certified)
-
-        log_stream("Commiting identities...")
+        if log_stream:
+            log_stream("Commiting identities...")
         for idty in identities:
             self._identities_processor.insert_or_update_identity(idty)
 
@@ -485,7 +493,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 +501,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)