diff --git a/addons/mass_mailing_slides/__init__.py b/addons/mass_mailing_slides/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..dc5e6b693d19dcacd224b7ab27b26f75e66cb7b2
--- /dev/null
+++ b/addons/mass_mailing_slides/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from . import models
diff --git a/addons/mass_mailing_slides/__manifest__.py b/addons/mass_mailing_slides/__manifest__.py
new file mode 100644
index 0000000000000000000000000000000000000000..f313de6d64a581d568686fceec7b04d540a385d5
--- /dev/null
+++ b/addons/mass_mailing_slides/__manifest__.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+{
+    'name': 'Mass mailing on course members',
+    'category': 'Hidden',
+    'version': '1.0',
+    'description':
+        """
+Mass mail course members
+========================
+
+Bridge module adding UX requirements to ease mass mailing of course members.
+        """,
+    'depends': ['website_slides', 'mass_mailing'],
+    'data': [
+        'views/slide_channel_views.xml'
+    ],
+    'auto_install': True,
+}
diff --git a/addons/mass_mailing_slides/models/__init__.py b/addons/mass_mailing_slides/models/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..c9c3eb273a88f8ce5d6beeaceda6f2192cba5e71
--- /dev/null
+++ b/addons/mass_mailing_slides/models/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from . import slide_channel
diff --git a/addons/mass_mailing_slides/models/slide_channel.py b/addons/mass_mailing_slides/models/slide_channel.py
new file mode 100644
index 0000000000000000000000000000000000000000..7822dc8113d31da915ea39f8dca227d16b0e27f3
--- /dev/null
+++ b/addons/mass_mailing_slides/models/slide_channel.py
@@ -0,0 +1,23 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import models, _
+
+
+class Course(models.Model):
+    _inherit = "slide.channel"
+
+    def action_mass_mailing_attendees(self):
+        domain = [('slide_channel_ids', 'in', self.ids)]
+        mass_mailing_action = dict(
+            name=_('Mass Mail Course Members'),
+            type='ir.actions.act_window',
+            res_model='mailing.mailing',
+            view_mode='form',
+            target='current',
+            context=dict(
+                default_mailing_model_id=self.env.ref('base.model_res_partner').id,
+                default_mailing_domain=domain,
+            ),
+        )
+        return mass_mailing_action
diff --git a/addons/mass_mailing_slides/views/slide_channel_views.xml b/addons/mass_mailing_slides/views/slide_channel_views.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ddc7c38af22a5ac0984bfb170ea6de4ffeb1f271
--- /dev/null
+++ b/addons/mass_mailing_slides/views/slide_channel_views.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<odoo>
+    <record id="slide_channel_view_form" model="ir.ui.view">
+        <field name="name">slide.channel.view.form.inherit.mass.mailing</field>
+        <field name="model">slide.channel</field>
+        <field name="inherit_id" ref="website_slides.view_slide_channel_form"/>
+        <field name="arch" type="xml">
+            <xpath expr="//button[@name='action_redirect_to_members']" position="before">
+                <button class="oe_stat_button" type="object"
+                        name="action_mass_mailing_attendees"
+                        icon="fa-envelope-o"
+                        attrs="{'invisible': [('members_count', '=', 0)]}">
+                    <div class="o_field_widget o_stat_info">
+                        <span class="o_stat_text">Mail Attendees</span>
+                    </div>
+                </button>
+            </xpath>
+        </field>
+    </record>
+
+    <record id="slide_channel_view_kanban" model="ir.ui.view">
+        <field name="name">slide.channel.view.kanban.inherit.mass.mailing</field>
+        <field name="model">slide.channel</field>
+        <field name="inherit_id" ref="website_slides.slide_channel_view_kanban"/>
+        <field name="arch" type="xml">
+            <xpath expr="//a[@name='action_channel_invite']" position="after">
+                <a class="dropdown-item" name="action_mass_mailing_attendees" role="menuitem" type="object">
+                    Mail Attendees
+                </a>
+            </xpath>
+        </field>
+    </record>
+</odoo>
diff --git a/addons/website_slides/models/__init__.py b/addons/website_slides/models/__init__.py
index b8b6868cc0a8c5563656f4f53661399f843fdcff..4fb9318f4da09a9fb142175a947430ad9f17d524 100644
--- a/addons/website_slides/models/__init__.py
+++ b/addons/website_slides/models/__init__.py
@@ -10,4 +10,4 @@ from . import res_config_settings
 from . import website
 from . import res_users
 from . import res_groups
-from . import res_partner
+from . import res_partner
\ No newline at end of file
diff --git a/addons/website_slides/models/res_config_settings.py b/addons/website_slides/models/res_config_settings.py
index 8085cd407c8f3771220e17e9f10c2cfa36212c97..9e886766a7c8e4e1a274e5a09d932df48d8ef55b 100644
--- a/addons/website_slides/models/res_config_settings.py
+++ b/addons/website_slides/models/res_config_settings.py
@@ -11,3 +11,4 @@ class ResConfigSettings(models.TransientModel):
     module_website_sale_slides = fields.Boolean(string="Sell on eCommerce")
     module_website_slides_forum = fields.Boolean(string="Forum")
     module_website_slides_survey = fields.Boolean(string="Certifications")
+    module_mass_mailing_slides = fields.Boolean(string="Mailing")
diff --git a/addons/website_slides/models/res_partner.py b/addons/website_slides/models/res_partner.py
index 6ee87be909d91e6d66c02d7d753ae407ce922d29..fb2aff8dc9e1a5995ca5ebc144fc233c271596b5 100644
--- a/addons/website_slides/models/res_partner.py
+++ b/addons/website_slides/models/res_partner.py
@@ -1,38 +1,40 @@
 # -*- coding: utf-8 -*-
 # Part of Odoo. See LICENSE file for full copyright and licensing details.
 
-from odoo import api, fields, models
+from odoo import api, fields, models, _
 
 
 class ResPartner(models.Model):
     _inherit = 'res.partner'
 
-    slide_channels_count = fields.Integer('Course Count', compute='_compute_slide_channels_count')
-    slide_channels_company_count = fields.Integer('Company Course Count', compute='_compute_slide_channels_company_count')
+    slide_channel_ids = fields.Many2many(
+        'slide.channel', 'slide_channel_partner', 'partner_id', 'channel_id',
+        string='eLearning Courses')
+    slide_channel_count = fields.Integer('Course Count', compute='_compute_slide_channel_count')
+    slide_channel_company_count = fields.Integer('Company Course Count', compute='_compute_slide_channel_company_count')
 
     @api.depends('is_company')
-    def _compute_slide_channels_count(self):
+    def _compute_slide_channel_count(self):
         read_group_res = self.env['slide.channel.partner'].sudo().read_group(
             [('partner_id', 'in', self.ids)],
             ['partner_id'], 'partner_id'
         )
         data = dict((res['partner_id'][0], res['partner_id_count']) for res in read_group_res)
         for partner in self:
-            partner.slide_channels_count = data.get(partner.id, 0)
+            partner.slide_channel_count = data.get(partner.id, 0)
 
-    @api.depends('is_company', 'child_ids.slide_channels_count')
-    def _compute_slide_channels_company_count(self):
+    @api.depends('is_company', 'child_ids.slide_channel_count')
+    def _compute_slide_channel_company_count(self):
         for partner in self:
             if partner.is_company:
-                partner.slide_channels_company_count = self.env['slide.channel'].sudo().search_count(
+                partner.slide_channel_company_count = self.env['slide.channel'].sudo().search_count(
                     [('partner_ids', 'in', partner.child_ids.ids)]
                 )
             else:
-                partner.slide_channels_company_count = 0
+                partner.slide_channel_company_count = 0
 
     def action_view_courses(self):
-        action = self.env.ref('website_slides.res_partner_action_courses').read()[0]
-        action['view_mode'] = 'tree'
+        action = self.env.ref('website_slides.slide_channel_action_overview').read()[0]
+        action['name'] = _('Followed Courses')
         action['domain'] = ['|', ('partner_ids', 'in', self.ids), ('partner_ids', 'in', self.child_ids.ids)]
-
         return action
diff --git a/addons/website_slides/views/res_config_settings_views.xml b/addons/website_slides/views/res_config_settings_views.xml
index 3e5a64010f05cd7c77b8249fbc753aa89e8d7649..0271a58c9e9ddcd5ca9afa8bc869dfe1d1752ef7 100644
--- a/addons/website_slides/views/res_config_settings_views.xml
+++ b/addons/website_slides/views/res_config_settings_views.xml
@@ -43,6 +43,18 @@
                             </div>
                         </div>
                         <div class="col-12 col-lg-6"></div>
+                        <div class="col-12 col-lg-6 o_setting_box" id="website_slides_install_mass_mailing_slides">
+                            <div class="o_setting_left_pane">
+                                <field name="module_mass_mailing_slides"/>
+                            </div>
+                            <div class="o_setting_right_pane">
+                                <label for="module_mass_mailing_slides"/>
+                                <div class="text-muted">
+                                    Contact all the members of a course via mass mailing
+                                </div>
+                            </div>
+                        </div>
+                        <div class="col-12 col-lg-6"></div>
                         <div class="col-12 col-lg-6 o_setting_box" id="elearning_install_certif">
                             <div class="o_setting_left_pane">
                                 <field name="module_website_slides_survey"/>
diff --git a/addons/website_slides/views/res_partner_views.xml b/addons/website_slides/views/res_partner_views.xml
index 5455a0195f5ee7d7559fff74c6d62958f360b955..8a202cb0311217d8e4cd674a7aa6803ef2899528 100644
--- a/addons/website_slides/views/res_partner_views.xml
+++ b/addons/website_slides/views/res_partner_views.xml
@@ -1,12 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <odoo><data>
 
-    <record id="res_partner_action_courses" model="ir.actions.act_window">
-        <field name="name">Followed Courses</field>
-        <field name="res_model">slide.channel</field>
-        <field name="view_mode">tree</field>
-    </record>
-
     <record id="res_partner_view_form" model="ir.ui.view">
         <field name="name">res.partner.view.form.inherit.slides</field>
         <field name="model">res.partner</field>
@@ -16,20 +10,18 @@
             <xpath expr="//div[@name='button_box']" position="inside">
                 <button class="oe_stat_button" type="object"
                     icon="fa-graduation-cap" name="action_view_courses"
-                    attrs="{'invisible': ['|', ('slide_channels_count', '=', 0), ('is_company', '=', True)]}">
+                    attrs="{'invisible': ['|', ('slide_channel_count', '=', 0), ('is_company', '=', True)]}">
                     <div class="o_field_widget o_stat_info">
-                        <span class="o_stat_value"><field name="slide_channels_count" /></span>
-                        <span class="o_stat_text" attrs="{'invisible': [('slide_channels_count', '&lt;', 2)]}">Courses</span>
-                        <span class="o_stat_text" attrs="{'invisible': [('slide_channels_count', '&gt;', 1)]}">Course</span>
+                        <span class="o_stat_value"><field name="slide_channel_count"/></span>
+                        <span class="o_stat_text">Courses</span>
                     </div>
                 </button>
                 <button class="oe_stat_button" type="object"
                     icon="fa-graduation-cap" name="action_view_courses"
-                    attrs="{'invisible': ['|', ('slide_channels_company_count', '=', 0), ('is_company', '=', False)]}">
+                    attrs="{'invisible': ['|', ('slide_channel_company_count', '=', 0), ('is_company', '=', False)]}">
                     <div class="o_field_widget o_stat_info">
-                        <span class="o_stat_value"><field name="slide_channels_company_count" /></span>
-                        <span class="o_stat_text" attrs="{'invisible': [('slide_channels_company_count', '&lt;', 2)]}">Courses</span>
-                        <span class="o_stat_text" attrs="{'invisible': [('slide_channels_company_count', '&gt;', 1)]}">Course</span>
+                        <span class="o_stat_value"><field name="slide_channel_company_count" /></span>
+                        <span class="o_stat_text">Courses</span>
                     </div>
                 </button>
             </xpath>