diff --git a/src/cutecoin/core/app.py b/src/cutecoin/core/app.py
index 7a18d2ec4afc455502f21be86b273396092da6c3..dae6046b05f112a4a9e691fcefa1f4a156b533ae 100644
--- a/src/cutecoin/core/app.py
+++ b/src/cutecoin/core/app.py
@@ -53,7 +53,7 @@ class Application(QObject):
                             'lang': 'en_GB',
                             'ref': 0,
                             'expert_mode': False,
-                            'digits_after_comma': 8,
+                            'digits_after_comma': 6,
                             'maximized': False
                             }
 
diff --git a/src/cutecoin/core/net/api/bma/access.py b/src/cutecoin/core/net/api/bma/access.py
index 6975c69efa05b90236f9b1ec78bd682bd1c8c365..02125a74f72607eb2be380000cd1d894fb438ce6 100644
--- a/src/cutecoin/core/net/api/bma/access.py
+++ b/src/cutecoin/core/net/api/bma/access.py
@@ -252,9 +252,7 @@ class BmaAccess(QObject):
             nodes = self._network.synced_nodes
             if len(nodes) > 0:
                 node = random.choice(nodes)
-                server = node.endpoint.conn_handler().server
-                port = node.endpoint.conn_handler().port
-                conn_handler = ConnectionHandler(self._network.network_manager, server, port)
+                conn_handler = node.endpoint.conn_handler(self._network.network_manager)
                 req = request(conn_handler, **req_args)
                 reply = req.get(**get_args)
                 reply.finished.connect(lambda: handle_future_reply(reply))
@@ -300,9 +298,7 @@ class BmaAccess(QObject):
         replies = []
         for node in nodes:
             logging.debug("Trying to connect to : " + node.pubkey)
-            server = node.endpoint.conn_handler().server
-            port = node.endpoint.conn_handler().port
-            conn_handler = ConnectionHandler(self._network.network_manager, server, port)
+            conn_handler = node.endpoint.conn_handler(self._network.network_manager)
             req = request(conn_handler, **req_args)
             reply = req.post(**post_args)
             replies.append(reply)
diff --git a/src/cutecoin/core/net/node.py b/src/cutecoin/core/net/node.py
index 4cfec79bd0099d39467ce313ce12f53252869150..80ff1a3aad56f693030a9cdbc822e084aa875f57 100644
--- a/src/cutecoin/core/net/node.py
+++ b/src/cutecoin/core/net/node.py
@@ -421,7 +421,7 @@ class Node(QObject):
                 leaves = [leaf for leaf in peers_data['leaves']
                           if leaf not in self._last_merkle['leaves']]
                 for leaf_hash in leaves:
-                    conn_handler = ConnectionHandler(self.network_manager)
+                    conn_handler = self.endpoint.conn_handler(self.network_manager)
                     leaf_reply = qtbma.network.peering.Peers(conn_handler).get(leaf=leaf_hash)
                     leaf_reply.finished.connect(self.handle_leaf_reply)
                 self._last_merkle = {'root' : peers_data['root'],
diff --git a/src/cutecoin/gui/currency_tab.py b/src/cutecoin/gui/currency_tab.py
index 258f37b59c3cb6bc01a509ddbbb1ea0320920d07..8f62ea386f51f311cf5f5215161fa80c6a8bab59 100644
--- a/src/cutecoin/gui/currency_tab.py
+++ b/src/cutecoin/gui/currency_tab.py
@@ -63,7 +63,7 @@ class CurrencyTabWidget(QWidget, Ui_CurrencyTabWidget):
                                                  self.password_asker,
                                                  self)
 
-        self.tab_informations = InformationsTabWidget(self.app.current_account,
+        self.tab_informations = InformationsTabWidget(self.app,
                                                 self.community)
 
         self.tab_network = NetworkTabWidget(self.app,
diff --git a/src/cutecoin/gui/informations_tab.py b/src/cutecoin/gui/informations_tab.py
index 039c3c0c2259342134c88ac8e4b3a37379cba310..163306776dbc6bea73e8677e7512fc0de85d2dad 100644
--- a/src/cutecoin/gui/informations_tab.py
+++ b/src/cutecoin/gui/informations_tab.py
@@ -16,18 +16,26 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
     classdocs
     """
 
-    def __init__(self, account, community):
+    def __init__(self, app, community):
         """
-        Constructor
+        Constructor of the InformationsTabWidget
+
+        :param app: cutecoin.core.Application
+        :param community: cutecoin.core.Community
+        :return:
         """
         super().__init__()
-        self.setupUi(self)
+        self.app = app
         self.community = community
         self.community.inner_data_changed.connect(self.refresh)
-        self.account = account
 
+        self.setupUi(self)
         self.refresh()
 
+    @property
+    def account(self):
+        return self.app.current_account
+
     def refresh(self):
         #  try to request money parameters
         try:
@@ -88,7 +96,7 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
                     )
             else:
                 # display float values
-                localized_ud = QLocale().toString(ud, 'f', 6)
+                localized_ud = QLocale().toString(ud, 'f', self.app.preferences['digits_after_comma'])
                 # display float values
                 localized_ud_plus_1 = QLocale().toString(
                     float(
@@ -97,25 +105,25 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
                         )
                     ),
                     'f',
-                    6
+                    self.app.preferences['digits_after_comma']
                 )
                 localized_mass = QLocale().toString(
-                    float(self.get_referential_diff_value(block_ud['monetaryMass'])), 'f', 6
+                    float(self.get_referential_diff_value(block_ud['monetaryMass'])), 'f', self.app.preferences['digits_after_comma']
                 )
                 if block_ud_minus_1:
                     localized_mass_minus_1_per_member = QLocale().toString(
                         self.get_referential_diff_value(float(0) if block_ud['membersCount'] == 0 else
-                            block_ud_minus_1['monetaryMass'] / block_ud['membersCount']), 'f', 6
+                            block_ud_minus_1['monetaryMass'] / block_ud['membersCount']), 'f', self.app.preferences['digits_after_comma']
                     )
                     localized_mass_minus_1 = QLocale().toString(
-                        self.get_referential_diff_value(block_ud_minus_1['monetaryMass']), 'f', 6
+                        self.get_referential_diff_value(block_ud_minus_1['monetaryMass']), 'f', self.app.preferences['digits_after_comma']
                     )
                 else:
                     localized_mass_minus_1_per_member = QLocale().toString(
-                        float(0), 'f', 6
+                        float(0), 'f', self.app.preferences['digits_after_comma']
                     )
                     localized_mass_minus_1 = QLocale().toString(
-                        float(0), 'f', 6
+                        float(0), 'f', self.app.preferences['digits_after_comma']
                     )
 
             # set infos in label
diff --git a/src/cutecoin/gui/transactions_tab.py b/src/cutecoin/gui/transactions_tab.py
index 5191a5c6d7cfde024569f4417f7770cb0332375d..777274f902152f0ccf522e839a9da3191de25457 100644
--- a/src/cutecoin/gui/transactions_tab.py
+++ b/src/cutecoin/gui/transactions_tab.py
@@ -55,11 +55,12 @@ class TransactionsTabWidget(QWidget, Ui_transactionsTabWidget):
         self.date_to.setMaximumDateTime(tomorrow_datetime)
 
     def refresh(self):
+        #TODO: Use resetmodel instead of destroy/create
         self.refresh_minimum_maximum()
         ts_from = self.date_from.dateTime().toTime_t()
         ts_to = self.date_to.dateTime().toTime_t()
 
-        model = HistoryTableModel(self.app.current_account, self.community)
+        model = HistoryTableModel(self.app, self.community)
         proxy = TxFilterProxyModel(ts_from, ts_to)
         proxy.setSourceModel(model)
         proxy.setDynamicSortFilter(True)
diff --git a/src/cutecoin/gui/wallets_tab.py b/src/cutecoin/gui/wallets_tab.py
index b386a743e435da984f48e5f3b35dafdf5455366b..b9136e9e9be7fed427d39cd2180196c3ecdab34c 100644
--- a/src/cutecoin/gui/wallets_tab.py
+++ b/src/cutecoin/gui/wallets_tab.py
@@ -47,7 +47,8 @@ class WalletsTabWidget(QWidget, Ui_WalletsTab):
         self.refresh_wallets()
 
     def refresh_wallets(self):
-        wallets_model = WalletsTableModel(self.account, self.community)
+        #TODO: Using reset model instead of destroy/create
+        wallets_model = WalletsTableModel(self.app, self.community)
         proxy_model = WalletsFilterProxyModel()
         proxy_model.setSourceModel(wallets_model)
         wallets_model.dataChanged.connect(self.wallet_changed)
@@ -122,9 +123,12 @@ class WalletsTabWidget(QWidget, Ui_WalletsTab):
             localized_maximum = QLocale().toString(float(self.get_referential_value(maximum)), 'f', 0)
         else:
             # display float values
-            localized_amount = QLocale().toString(float(self.get_referential_value(amount)), 'f', 6)
-            localized_minimum = QLocale().toString(float(self.get_referential_value(0)), 'f', 6)
-            localized_maximum = QLocale().toString(float(self.get_referential_value(maximum)), 'f', 6)
+            localized_amount = QLocale().toString(float(self.get_referential_value(amount)), 'f',
+                                                  self.app.preferences['digits_after_comma'])
+            localized_minimum = QLocale().toString(float(self.get_referential_value(0)), 'f',
+                                                  self.app.preferences['digits_after_comma'])
+            localized_maximum = QLocale().toString(float(self.get_referential_value(maximum)), 'f',
+                                                  self.app.preferences['digits_after_comma'])
 
         # set infos in label
         self.label_balance.setText(
diff --git a/src/cutecoin/models/txhistory.py b/src/cutecoin/models/txhistory.py
index e521933691fb44dc4aec6995092575b0ffddff0e..a23f9decd123b4c87abaedceda369ca13ec89e43 100644
--- a/src/cutecoin/models/txhistory.py
+++ b/src/cutecoin/models/txhistory.py
@@ -17,12 +17,16 @@ class TxFilterProxyModel(QSortFilterProxyModel):
     def __init__(self, ts_from, ts_to, parent=None):
         super().__init__(parent)
         self.community = None
-        self.account = None
+        self.app = None
         self.ts_from = ts_from
         self.ts_to = ts_to
         self.payments = 0
         self.deposits = 0
 
+    @property
+    def account(self):
+        return self.app.current_account
+
     def set_period(self, ts_from, ts_to):
         """
         Filter table by given timestamps
@@ -66,7 +70,7 @@ class TxFilterProxyModel(QSortFilterProxyModel):
 
     def setSourceModel(self, sourceModel):
         self.community = sourceModel.community
-        self.account = sourceModel.account
+        self.app = sourceModel.app
         super().setSourceModel(sourceModel)
 
     def lessThan(self, left, right):
@@ -115,7 +119,7 @@ class TxFilterProxyModel(QSortFilterProxyModel):
                         return QLocale().toString(float(amount_ref), 'f', 0)
                     else:
                         # display float values
-                        return QLocale().toString(amount_ref, 'f', 6)
+                        return QLocale().toString(amount_ref, 'f', self.app.preferences['digits_after_comma'])
 
         if role == Qt.FontRole:
             font = QFont()
@@ -154,12 +158,12 @@ class HistoryTableModel(QAbstractTableModel):
     A Qt abstract item model to display communities in a tree
     """
 
-    def __init__(self, account, community, parent=None):
+    def __init__(self, app, community, parent=None):
         """
         Constructor
         """
         super().__init__(parent)
-        self.account = account
+        self.app = app
         self.community = community
         self.account.referential
         self.transfers_data = []
@@ -187,6 +191,10 @@ class HistoryTableModel(QAbstractTableModel):
             'Pubkey'
         )
 
+    @property
+    def account(self):
+        return self.app.current_account
+
     @property
     def transfers(self):
         return self.account.transfers(self.community) + self.account.dividends(self.community)
diff --git a/src/cutecoin/models/wallets.py b/src/cutecoin/models/wallets.py
index 1d4f1cad813aac12e9677b57dfdecec638bd90ff..8e78251579e23c9dbe0c56baf77fd632915638dc 100644
--- a/src/cutecoin/models/wallets.py
+++ b/src/cutecoin/models/wallets.py
@@ -11,14 +11,18 @@ class WalletsFilterProxyModel(QSortFilterProxyModel):
     def __init__(self, parent=None):
         super().__init__(parent)
         self.community = None
-        self.account = None
+        self.app = None
+
+    @property
+    def account(self):
+        return self.app.current_account
 
     def columnCount(self, parent):
         return self.sourceModel().columnCount(None)
 
     def setSourceModel(self, source_model):
         self.community = source_model.community
-        self.account = source_model.account
+        self.app = source_model.app
         super().setSourceModel(source_model)
 
     def lessThan(self, left, right):
@@ -45,7 +49,8 @@ class WalletsFilterProxyModel(QSortFilterProxyModel):
                     return QLocale().toString(float(amount_ref), 'f', 0)
                 else:
                     # display float values
-                    return QLocale().toString(amount_ref, 'f', 6)
+                    return QLocale().toString(amount_ref, 'f',
+                                                  self.app.preferences['digits_after_comma'])
 
         if role == Qt.TextAlignmentRole:
             if source_index.column() == self.sourceModel().columns_types.index('amount'):
@@ -60,7 +65,7 @@ class WalletsTableModel(QAbstractTableModel):
     A Qt list model to display wallets and edit their names
     """
 
-    def __init__(self, account, community, parent=None):
+    def __init__(self, app, community, parent=None):
         """
 
         :param list of cutecoin.core.wallet.Wallet wallets: The list of wallets to display
@@ -70,7 +75,7 @@ class WalletsTableModel(QAbstractTableModel):
         :rtype: WalletsTableModel
         """
         super().__init__(parent)
-        self.account = account
+        self.app = app
         self.account.wallets_changed.connect(self.refresh_account_wallets)
 
         self.community = community
@@ -79,6 +84,10 @@ class WalletsTableModel(QAbstractTableModel):
                                 self.tr('Pubkey'))
         self.columns_types = ('name', 'amount', 'pubkey')
 
+    @property
+    def account(self):
+        return self.app.current_account
+
     @property
     def wallets(self):
         return self.account.wallets