diff --git a/res/i18n/ts/fr_FR.ts b/res/i18n/ts/fr_FR.ts
index 90afc1552c1a863be32b8ecc533ef9aa2c7f4dd9..42a87785e8224b43d7abb923a7c718489f3ca044 100644
--- a/res/i18n/ts/fr_FR.ts
+++ b/res/i18n/ts/fr_FR.ts
@@ -6,17 +6,32 @@
     <message>
         <location filename="../../../src/cutecoin/core/account.py" line="61"/>
         <source>ud {0}</source>
-        <translation>du {0}</translation>
+        <translation type="obsolete">du {0}</translation>
     </message>
     <message>
-        <location filename="../../../src/cutecoin/core/account.py" line="58"/>
-        <source>q0 {0}</source>
-        <translation></translation>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="285"/>
+        <source>Informations</source>
+        <translation type="obsolete">Informations</translation>
     </message>
     <message>
-        <location filename="../../../src/cutecoin/core/account.py" line="61"/>
-        <source>r0 {0}</source>
-        <translation></translation>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="289"/>
+        <source>Add as contact</source>
+        <translation type="obsolete">Ajouter comme contact</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="293"/>
+        <source>Send money</source>
+        <translation type="obsolete">Envoyer de l&apos;argent</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="310"/>
+        <source>Renew membership</source>
+        <translation type="obsolete">Renouveller le statut de membre</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="297"/>
+        <source>Certify identity</source>
+        <translation type="obsolete">Certifier cette identité</translation>
     </message>
 </context>
 <context>
@@ -32,6 +47,24 @@
         <translation></translation>
     </message>
 </context>
+<context>
+    <name>Account</name>
+    <message>
+        <location filename="../../../src/cutecoin/core/account.py" line="61"/>
+        <source>ud {0}</source>
+        <translation>du {0}</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/core/account.py" line="58"/>
+        <source>q0 {0}</source>
+        <translation></translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/core/account.py" line="61"/>
+        <source>r0 {0}</source>
+        <translation></translation>
+    </message>
+</context>
 <context>
     <name>AccountConfigurationDialog</name>
     <message>
@@ -162,6 +195,16 @@
         <source>Error</source>
         <translation>Erreur</translation>
     </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/certification.py" line="76"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/certification.py" line="79"/>
+        <source>Not a member</source>
+        <translation>Non-membre</translation>
+    </message>
 </context>
 <context>
     <name>CommunityConfigurationDialog</name>
@@ -229,7 +272,7 @@
         <translation>Qualification : </translation>
     </message>
     <message>
-        <location filename="../../ui/community_tab.ui" line="132"/>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="310"/>
         <source>Renew membership</source>
         <translation>Renouveller le statut de membre</translation>
     </message>
@@ -346,6 +389,36 @@ Le processus pour rejoindre la communauté devrait être refait à zéro.</trans
         <source>Web of Trust</source>
         <translation>Toile de Confiance</translation>
     </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="80"/>
+        <source>Informations</source>
+        <translation>Informations</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="84"/>
+        <source>Add as contact</source>
+        <translation>Ajouter comme contact</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="88"/>
+        <source>Send money</source>
+        <translation>Envoyer de l&apos;argent</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="92"/>
+        <source>Certify identity</source>
+        <translation>Certifier cette identité</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="96"/>
+        <source>View in Web of Trust</source>
+        <translation>Voir dans la Toile de Confiance</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/community_tab.py" line="316"/>
+        <source>Send membership demand</source>
+        <translation>Envoyer une demande de membre</translation>
+    </message>
 </context>
 <context>
     <name>ConfigureContactDialog</name>
@@ -793,7 +866,7 @@ Le processus pour rejoindre la communauté devrait être refait à zéro.</trans
     <message>
         <location filename="../../../src/cutecoin/gui/informations_tab.py" line="116"/>
         <source>Universal Dividend (formula)</source>
-        <translation>Dividend Universel (formule)</translation>
+        <translation type="unfinished">Dividende Universel (formule)</translation>
     </message>
     <message>
         <location filename="../../../src/cutecoin/gui/informations_tab.py" line="116"/>
@@ -1214,6 +1287,29 @@ Le processus pour rejoindre la communauté devrait être refait à zéro.</trans
         <translation>Définir comme noeud racine</translation>
     </message>
 </context>
+<context>
+    <name>Node</name>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="285"/>
+        <source>Informations</source>
+        <translation type="obsolete">Informations</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="289"/>
+        <source>Add as contact</source>
+        <translation type="obsolete">Ajouter comme contact</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="293"/>
+        <source>Send money</source>
+        <translation type="obsolete">Envoyer de l&apos;argent</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="297"/>
+        <source>Certify identity</source>
+        <translation type="obsolete">Certifier cette identité</translation>
+    </message>
+</context>
 <context>
     <name>PasswordAskerDialog</name>
     <message>
@@ -1418,12 +1514,12 @@ Souhaitez-vous publier votre clé publique ?</translation>
     <message>
         <location filename="../../../src/cutecoin/gui/transactions_tab.py" line="153"/>
         <source>Send money to</source>
-        <translation>Envoyer de la monnaie à</translation>
+        <translation type="obsolete">Envoyer de la monnaie à</translation>
     </message>
     <message>
         <location filename="../../../src/cutecoin/gui/transactions_tab.py" line="159"/>
         <source>View in WoT</source>
-        <translation>Voir dans la WoT</translation>
+        <translation type="obsolete">Voir dans la WoT</translation>
     </message>
     <message>
         <location filename="../../../src/cutecoin/gui/transactions_tab.py" line="164"/>
@@ -1457,6 +1553,16 @@ Le transfer de monnaie sera annulé et non envoyé.</translation>
         <source>&lt;b&gt;Balance&lt;/b&gt; {:} {:}</source>
         <translation>&lt;b&gt;Balance&lt;/b&gt; {:} {:}</translation>
     </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/transactions_tab.py" line="153"/>
+        <source>Send money</source>
+        <translation>Envoyer de l&apos;argent</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/transactions_tab.py" line="159"/>
+        <source>View in Web of Trust</source>
+        <translation>Voir dans la Toile de Confiance</translation>
+    </message>
 </context>
 <context>
     <name>TransferMoneyDialog</name>
@@ -1699,6 +1805,29 @@ Veuillez rééssayer plus tard</translation>
         <translation>Clé publique</translation>
     </message>
 </context>
+<context>
+    <name>WoT.Node</name>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="288"/>
+        <source>Informations</source>
+        <translation>Informations</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="293"/>
+        <source>Add as contact</source>
+        <translation>Ajouter comme contact</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="298"/>
+        <source>Send money</source>
+        <translation>Envoyer de l&apos;argent</translation>
+    </message>
+    <message>
+        <location filename="../../../src/cutecoin/gui/views/wot.py" line="303"/>
+        <source>Certify identity</source>
+        <translation>Certifier cette identité</translation>
+    </message>
+</context>
 <context>
     <name>WotTabWidget</name>
     <message>
diff --git a/src/cutecoin/core/account.py b/src/cutecoin/core/account.py
index a1df04d168a79c7283983365a9ff2c117a631e6c..4855ec67f5de1af42d804c33b4b56722fe4b62e6 100644
--- a/src/cutecoin/core/account.py
+++ b/src/cutecoin/core/account.py
@@ -13,7 +13,7 @@ from ucoinpy.key import SigningKey
 import logging
 import time
 
-from PyQt5.QtCore import QObject, pyqtSignal, QCoreApplication, QT_TR_NOOP
+from PyQt5.QtCore import QObject, pyqtSignal, QCoreApplication, QT_TRANSLATE_NOOP
 
 from .wallet import Wallet
 from .community import Community
@@ -53,15 +53,15 @@ class Account(QObject):
     '''
     referentials = {'Units': (quantitative, '{0}',
                               quantitative, '{0}'),
-                    'UD': (relative, QT_TR_NOOP('ud {0}'),
-                           relative, QT_TR_NOOP('ud {0}')),
+                    'UD': (relative, QT_TRANSLATE_NOOP('Account', 'ud {0}'),
+                           relative, QT_TRANSLATE_NOOP('Account', 'ud {0}')),
                     'Quant Z-sum': (quantitative_zerosum,
-                                    QT_TR_NOOP('q0 {0}'),
+                                    QT_TRANSLATE_NOOP('Account', 'q0 {0}'),
                                     quantitative, '{0}'),
                     'Relat Z-sum': (relative_zerosum,
-                                    QT_TR_NOOP('r0 {0}'),
+                                    QT_TRANSLATE_NOOP('Account', 'r0 {0}'),
                                     relative,
-                                    QT_TR_NOOP('ud {0}'))
+                                    QT_TRANSLATE_NOOP('Account', 'ud {0}'))
                     }
 
     loading_progressed = pyqtSignal(int, int)
@@ -205,10 +205,13 @@ class Account(QObject):
         return Account.referentials[self.referential][2]
 
     def ref_name(self, currency):
-        return Account.referentials[self.referential][1].format(currency)
+        text = QCoreApplication.translate('Account',
+                                          Account.referentials[self.referential][1])
+        return text.format(currency)
 
     def diff_ref_name(self, currency):
-        return Account.referentials[self.referential][3].format(currency)
+        text = QCoreApplication.translate('Account', Account.referentials[self.referential][3])
+        return text.format(currency)
 
     def set_walletpool_size(self, size, password):
         '''
diff --git a/src/cutecoin/gui/community_tab.py b/src/cutecoin/gui/community_tab.py
index fa0e69e4154ecfcaa0923fd071fa6703cb869979..df57be28753f8890fdd5629ee70ca3fb05ea38a2 100644
--- a/src/cutecoin/gui/community_tab.py
+++ b/src/cutecoin/gui/community_tab.py
@@ -77,23 +77,23 @@ class CommunityTabWidget(QWidget, Ui_CommunityTabWidget):
             identity = Person.lookup(pubkey, self.community)
             menu = QMenu(self)
 
-            informations = QAction("Informations", self)
+            informations = QAction(self.tr("Informations"), self)
             informations.triggered.connect(self.menu_informations)
             informations.setData(identity)
 
-            add_contact = QAction("Add as contact", self)
+            add_contact = QAction(self.tr("Add as contact"), self)
             add_contact.triggered.connect(self.menu_add_as_contact)
             add_contact.setData(identity)
 
-            send_money = QAction("Send money", self)
+            send_money = QAction(self.tr("Send money"), self)
             send_money.triggered.connect(self.menu_send_money)
             send_money.setData(identity)
 
-            certify = QAction("Certify identity", self)
+            certify = QAction(self.tr("Certify identity"), self)
             certify.triggered.connect(self.menu_certify_member)
             certify.setData(identity)
 
-            view_wot = QAction("View in WoT", self)
+            view_wot = QAction(self.tr("View in Web of Trust"), self)
             view_wot.triggered.connect(self.view_wot)
             view_wot.setData(identity)
 
@@ -307,13 +307,13 @@ Publishing your UID cannot be canceled.""")
             if self.account.published_uid(self.community):
                 logging.debug("UID Published")
                 if self.account.member_of(self.community):
-                    self.button_membership.setText("Renew membership")
+                    self.button_membership.setText(self.tr("Renew membership"))
                     self.button_membership.show()
                     self.button_publish_uid.hide()
                     self.button_leaving.show()
                 else:
                     logging.debug("Not a member")
-                    self.button_membership.setText("Send membership demand")
+                    self.button_membership.setText(self.tr("Send membership demand"))
                     self.button_membership.show()
                     self.button_leaving.hide()
                     self.button_publish_uid.hide()
diff --git a/src/cutecoin/gui/transactions_tab.py b/src/cutecoin/gui/transactions_tab.py
index 01bcb08735432283c8928f291b2d96be4c512067..97131571577778b48cc8083cf2346f7149d5858b 100644
--- a/src/cutecoin/gui/transactions_tab.py
+++ b/src/cutecoin/gui/transactions_tab.py
@@ -150,13 +150,13 @@ class TransactionsTabWidget(QWidget, Ui_transactionsTabWidget):
                     add_as_contact.setData(person)
                     menu.addAction(add_as_contact)
 
-                send_money = QAction(self.tr("Send money to"), self)
+                send_money = QAction(self.tr("Send money"), self)
                 send_money.triggered.connect(self.currency_tab.tab_community.menu_send_money)
                 send_money.setData(person)
                 menu.addAction(send_money)
 
                 if isinstance(person, Person):
-                    view_wot = QAction(self.tr("View in WoT"), self)
+                    view_wot = QAction(self.tr("View in Web of Trust"), self)
                     view_wot.triggered.connect(self.currency_tab.tab_community.view_wot)
                     view_wot.setData(person)
                     menu.addAction(view_wot)
diff --git a/src/cutecoin/gui/views/wot.py b/src/cutecoin/gui/views/wot.py
index 4fd5be1261dbdddd2abab93c795cf85b7fa63148..33f58a1542b3ea4b048917ed9ebdf6f48dc23758 100644
--- a/src/cutecoin/gui/views/wot.py
+++ b/src/cutecoin/gui/views/wot.py
@@ -3,7 +3,9 @@
 import math
 from PyQt5.QtGui import QPainter, QBrush, QPen, QPolygonF, QColor, QRadialGradient, \
     QPainterPath, QMouseEvent, QWheelEvent, QTransform, QCursor
-from PyQt5.QtCore import Qt, QRectF, QLineF, QPoint, QPointF, QSizeF, qFuzzyCompare, pyqtSignal
+from PyQt5.QtCore import Qt, QRectF, QLineF, QPoint, QPointF, QSizeF, \
+                        qFuzzyCompare, pyqtSignal, QT_TRANSLATE_NOOP, \
+                        QCoreApplication
 from PyQt5.QtWidgets import QGraphicsView, QGraphicsScene, QGraphicsEllipseItem, \
     QGraphicsSimpleTextItem, QGraphicsLineItem, QMenu, QAction, QGraphicsSceneHoverEvent, \
     QGraphicsSceneContextMenuEvent
@@ -282,19 +284,23 @@ class Node(QGraphicsEllipseItem):
         # create node context menus
         self.menu = QMenu()
         # action show member
-        self.action_show_member = QAction('Informations', self.scene())
+        QT_TRANSLATE_NOOP('WoT.Node', 'Informations')
+        self.action_show_member = QAction(QCoreApplication.translate('WoT.Node', 'Informations'), self.scene())
         self.menu.addAction(self.action_show_member)
         self.action_show_member.triggered.connect(self.member_action)
         # action add identity as contact
-        self.action_contact = QAction('Add as contact', self.scene())
+        QT_TRANSLATE_NOOP('WoT.Node', 'Add as contact')
+        self.action_contact = QAction(QCoreApplication.translate('WoT.Node', 'Add as contact'), self.scene())
         self.menu.addAction(self.action_contact)
         self.action_contact.triggered.connect(self.contact_action)
         # action transaction toward identity
-        self.action_transaction = QAction('Send money', self.scene())
+        QT_TRANSLATE_NOOP('WoT.Node', 'Send money')
+        self.action_transaction = QAction(QCoreApplication.translate('WoT.Node', 'Send money'), self.scene())
         self.menu.addAction(self.action_transaction)
         self.action_transaction.triggered.connect(self.transaction_action)
         # action sign identity
-        self.action_sign = QAction('Certify identity', self.scene())
+        QT_TRANSLATE_NOOP('WoT.Node', 'Certify identity')
+        self.action_sign = QAction(QCoreApplication.translate('WoT.Node', 'Certify identity'), self.scene())
         self.menu.addAction(self.action_sign)
         self.action_sign.triggered.connect(self.sign_action)
         # run menu