diff --git a/res/ui/certification.ui b/res/ui/certification.ui
index d171bd3c3ebf6b7792697875ee31a5b0651baf8a..ff937b3a4ee56ce873ba3bbcbbb6b575ad76dcad 100644
--- a/res/ui/certification.ui
+++ b/res/ui/certification.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>399</width>
-    <height>283</height>
+    <width>473</width>
+    <height>373</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -173,6 +173,14 @@
      </layout>
     </widget>
    </item>
+   <item>
+    <widget class="QGroupBox" name="groupBox_3">
+     <property name="title">
+      <string>User informations</string>
+     </property>
+     <layout class="QVBoxLayout" name="verticalLayout_3"/>
+    </widget>
+   </item>
    <item>
     <widget class="QDialogButtonBox" name="button_box">
      <property name="orientation">
diff --git a/src/sakia/core/account.py b/src/sakia/core/account.py
index 90caa204bc15ab779aa6c2994a863ea08c7559c9..e713d64a4966c596c3d67068395eece17d7bff00 100644
--- a/src/sakia/core/account.py
+++ b/src/sakia/core/account.py
@@ -516,7 +516,7 @@ class Account(QObject):
                     await r.release()
             return result
         else:
-            return (False, self.tr("Could not find user self certification."))
+            return False, self.tr("Could not find user self certification.")
 
     async def revoke(self, password, community):
         """
diff --git a/src/sakia/gui/member.py b/src/sakia/gui/member.py
index 0b7fe87e4ef59d1db500e8628fa09ee8554b8e66..94f027a2c1b3547acf7cae6b448253ff23697d13 100644
--- a/src/sakia/gui/member.py
+++ b/src/sakia/gui/member.py
@@ -1,7 +1,8 @@
 import datetime
 import asyncio
 
-from PyQt5.QtWidgets import QDialog
+from PyQt5.QtCore import QObject
+from PyQt5.QtWidgets import QDialog, QWidget
 
 from ..core.graph import WoTGraph
 from ..tools.decorators import asyncify
@@ -9,12 +10,12 @@ from ..gen_resources.member_uic import Ui_DialogMember
 from ..tools.exceptions import MembershipNotFoundError
 
 
-class MemberDialog(QDialog, Ui_DialogMember):
+class MemberDialog(QObject):
     """
-    classdocs
+    A widget showing informations about a member
     """
 
-    def __init__(self, app, account, community, identity):
+    def __init__(self, app, account, community, identity, widget, ui):
         """
         Init MemberDialog
 
@@ -22,20 +23,31 @@ class MemberDialog(QDialog, Ui_DialogMember):
         :param sakia.core.account.Account account:   Account instance
         :param sakia.core.community.Community community: Community instance
         :param sakia.core.registry.identity.Identity identity: Identity instance
+        :param PyQt5.QtWidget widget: The class of the widget
+        :param sakia.gen_resources.member_uic.Ui_DialogMember ui: the class of the ui applyed to the widget
         :return:
         """
         super().__init__()
-        self.setupUi(self)
+        self.widget = widget
+        self.ui = ui
+        self.ui.setupUi(self.widget)
         self.app = app
         self.community = community
         self.account = account
         self.identity = identity
-        self.label_uid.setText(identity.uid)
+        self.ui.label_uid.setText(identity.uid)
         self.refresh()
 
+    @classmethod
+    def open_dialog(cls, app, account, community, identity):
+        return cls(app, account, community, identity, QDialog(), Ui_DialogMember()).exec()
+
+    @classmethod
+    def as_widget(cls, app, account, community, identity):
+        return cls(app, account, community, identity, QWidget(), Ui_DialogMember())
+
     @asyncify
     async def refresh(self):
-
         try:
             join_date = await self.identity.get_join_date(self.community)
         except MembershipNotFoundError:
@@ -90,4 +102,7 @@ class MemberDialog(QDialog, Ui_DialogMember):
         text += "</table>"
 
         # set text in label
-        self.label_properties.setText(text)
+        self.ui.label_properties.setText(text)
+
+    def exec(self):
+        self.widget.exec()
diff --git a/src/sakia/gui/widgets/context_menu.py b/src/sakia/gui/widgets/context_menu.py
index c66e6d0c6c0d5917ff4d8148ee15c4f244c65195..bd9217abcf69905b9fc9ed2baa7eadf1cb2d268e 100644
--- a/src/sakia/gui/widgets/context_menu.py
+++ b/src/sakia/gui/widgets/context_menu.py
@@ -119,8 +119,7 @@ class ContextMenu(QObject):
         clipboard.setText(identity.pubkey)
 
     def informations(self, identity):
-        dialog = MemberDialog(self._app, self._account, self._community, identity)
-        dialog.exec_()
+        MemberDialog.open_dialog(self._app, self._account, self._community, identity)
 
     def add_as_contact(self, identity):
         dialog = ConfigureContactDialog.from_identity( self.parent(), self._account, identity)