diff -u b/modules/role_expire_notification/role_expire_notification.module b/modules/role_expire_notification/role_expire_notification.module
--- b/modules/role_expire_notification/role_expire_notification.module
+++ b/modules/role_expire_notification/role_expire_notification.module
@@ -12,7 +12,9 @@
  * Implements hook_cron().
  */
 function role_expire_notification_cron() {
-  $points = \Drupal::config('role_expire_notification.config')->get('role_expire_notification_points');
+  $langcode = \Drupal::languageManager()->getCurrentLanguage()->getId();
+  $config_name = basename('role_expire_notification.config', '.yml');
+  $points = \Drupal::languageManager()->getLanguageConfigOverride($langcode, $config_name);
   if (!empty($points)) {
     /** @var \Symfony\Component\EventDispatcher\EventDispatcherInterface $event_dispatcher */
     $event_dispatcher = \Drupal::service('event_dispatcher');
@@ -86,7 +88,9 @@
  *   Array with notification settings.
  */
 function role_expire_notification_check_expired() {
-  $points = \Drupal::config('role_expire_notification.config')->get('role_expire_notification_points');
+  $langcode = \Drupal::languageManager()->getCurrentLanguage()->getId();
+  $config_name = basename('role_expire_notification.config', '.yml');
+  $points = \Drupal::languageManager()->getLanguageConfigOverride($langcode, $config_name);
   if (!empty($points)) {
     $pids = array_keys($points);
     foreach ($points as $point) {
diff -u b/modules/role_expire_notification/role_expire_notification.permissions.yml b/modules/role_expire_notification/role_expire_notification.permissions.yml
--- b/modules/role_expire_notification/role_expire_notification.permissions.yml
+++ b/modules/role_expire_notification/role_expire_notification.permissions.yml
@@ -5 +4,0 @@
-
diff -u b/role_expire.module b/role_expire.module
--- b/role_expire.module
+++ b/role_expire.module
@@ -327,10 +327,6 @@
   $expires = \Drupal::service('role_expire.api')->getExpired();
 
   if ($expires) {
-    $notify = [];
-    if (\Drupal::moduleHandler()->moduleExists('role_expire_notification')) {
-      $notify = role_expire_notification_check_expired();
-    }
     foreach ($expires as $expire) {
 
       // Remove the role expiration record from the role_expires table.
@@ -344,6 +340,10 @@
   $expires = \Drupal::service('role_expire.api')->getExpired();
 
   if ($expires) {
+    $notify = [];
+    if (\Drupal::moduleHandler()->moduleExists('role_expire_notification')) {
+      $notify = role_expire_notification_check_expired();
+    }
     foreach ($expires as $expire) {
 
       // Remove the role expiration record from the role_expires table.
@@ -359,7 +359,7 @@
          * https://fago.gitbooks.io/rules-docs/content/extending_rules/events.html
          * #3193800: RoleExpiresEvent should not depend on Rules module
          */
-        $event = new RoleExpiresEvent($account, $expire->rid, $notify);
+        $event = new RoleExpiresEvent($account, $expire->rid);
         $event_dispatcher = \Drupal::service('event_dispatcher');
         $event_dispatcher->dispatch(RoleExpiresEvent::EVENT_NAME, $event);
 
@@ -372,7 +372,7 @@
          * https://fago.gitbooks.io/rules-docs/content/extending_rules/events.html
          * #3193800: RoleExpiresEvent should not depend on Rules module
          */
-        $event = new RoleExpiresEvent($account, $expire->rid);
+        $event = new RoleExpiresEvent($account, $expire->rid, $notify);
         $event_dispatcher = \Drupal::service('event_dispatcher');
         $event_dispatcher->dispatch(RoleExpiresEvent::EVENT_NAME, $event);
 
