diff --git a/src/cutecoin/core/app.py b/src/cutecoin/core/app.py
index cc26dd675ae44e2f7121a1a56d786f321b440554..4343d3718a80161ed8ab9df5261f2445e5b815a9 100644
--- a/src/cutecoin/core/app.py
+++ b/src/cutecoin/core/app.py
@@ -12,6 +12,7 @@ import json
 import datetime
 import asyncio
 import aiohttp
+import time
 
 from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot, \
 QUrl, QTranslator, QCoreApplication, QLocale
@@ -69,6 +70,18 @@ class Application(QObject):
                             'international_system_of_units': True
                             }
 
+        self.notifications = {'membership_expire_soon':
+                                  (
+                                      self.tr("Warning : Your membership is expiring soon."),
+                                      0
+                                   ),
+                            'warning_certifications':
+                                    (
+                                        self.tr("Warning : Your could miss certifications soon."),
+                                        0
+                                    )
+                            }
+
     @classmethod
     def startup(cls, argv, qapp, loop):
         config.parse_arguments(argv)
@@ -296,7 +309,6 @@ class Application(QObject):
         """
         Load the preferences.
         """
-
         try:
             preferences_path = os.path.join(config.parameters['home'],
                                             'preferences')
diff --git a/src/cutecoin/gui/community_view.py b/src/cutecoin/gui/community_view.py
index ce8f129b44419a4b68da74b4751a2e8888afbe88..590216cee00c2eac285d546cc0264710b183acb7 100644
--- a/src/cutecoin/gui/community_view.py
+++ b/src/cutecoin/gui/community_view.py
@@ -6,6 +6,7 @@ Created on 2 févr. 2014
 
 import logging
 import asyncio
+import time
 
 from PyQt5.QtWidgets import QWidget, QMessageBox, QDialog, QPushButton, QTabBar, QAction
 from PyQt5.QtCore import pyqtSlot, QDateTime, QLocale, QEvent
@@ -42,11 +43,6 @@ class CommunityWidget(QWidget, Ui_CommunityWidget):
         self.status_label = status_label
 
         self.status_info = []
-        self.status_infotext = {'membership_expire_soon':
-                            self.tr("Warning : Your membership is expiring soon."),
-                            'warning_certifications':
-                            self.tr("Warning : Your could miss certifications soon.")
-                            }
 
         super().setupUi(self)
 
@@ -165,21 +161,27 @@ class CommunityWidget(QWidget, Ui_CommunityWidget):
             if will_expire_soon:
                 days = int(expiration_time / 3600 / 24)
                 if days > 0:
-                    self.status_info.append('membership_expire_soon')
+                    if 'membership_expire_soon' not in self.status_info:
+                        self.status_info.append('membership_expire_soon')
 
-                    if self.app.preferences['notifications']:
+                    if self.app.preferences['notifications'] and\
+                            self.app.notifications['membership_expire_soon'][1] < time.time()+24*3600:
                         toast.display(self.tr("Membership expiration"),
                                   self.tr("<b>Warning : Membership expiration in {0} days</b>").format(days))
+                        self.app.notifications['membership_expire_soon'][1] = time.time()
 
             certifiers_of = yield from person.unique_valid_certifiers_of(self.app.identities_registry,
                                                                          self.community)
             if len(certifiers_of) < parameters['sigQty']:
-                self.status_info.append('warning_certifications')
-                if self.app.preferences['notifications']:
+                if 'warning_certifications' not in self.status_info:
+                    self.status_info.append('warning_certifications')
+                if self.app.preferences['notifications'] and\
+                        self.app.notifications['warning_certifications'][1] < time.time()+24*3600:
                     toast.display(self.tr("Certifications number"),
                               self.tr("<b>Warning : You are certified by only {0} persons, need {1}</b>")
                               .format(len(certifiers_of),
                                      parameters['sigQty']))
+                    self.app.notifications['warning_certifications'][1] = time.time()
 
         except MembershipNotFoundError as e:
             pass
@@ -235,7 +237,7 @@ class CommunityWidget(QWidget, Ui_CommunityWidget):
             else:
                 icon = '<img src=":/icons/disconnected" width="12" height="12"/>'
 
-            status_infotext = " - ".join([self.status_infotext[info] for info in self.status_info])
+            status_infotext = " - ".join([self.app.notifications[info][0] for info in self.status_info])
             label_text = "{0}{1}".format(icon, text)
             if status_infotext != "":
                 label_text += " - {0}".format(status_infotext)