Dynamic Mass Mailing Lists

mass_mailing_list_dynamic
REPOSITORY
REPOSITORYOCA/mass-mailing
GIT
GIThttps://github.com/OCA/mass-mailing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/mass-mailing/tree/19.0/mass_mailing_list_dynamic
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Quoc - Pham Ngoc
WEBSITE
WEBSITEhttps://github.com/OCA/mass-mailing
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:40:50
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/mass-mailing:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - html_builder
    - utm
    - link_tracker
    - social_media
    - digest
    - portal
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Without this addon you have to choose between providing a dynamic domain
and letting your mass mailings reach all partners that match it.

This addon allows you to create dynamic mailing lists, so you can now
benefit from both things.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mailing_list_view_form Add sync stuff mailing.list xpath Inherits mass_mailing.mailing_list_view_form
view_mailing_load_filter_form mailing.load.filter form New
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization criteria'
  • sync_method Selection
    default='add' help='Choose the synchronization method for this list if you want to make it dynamic' required=True selection=[('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_ids', '=', uid), ('user_ids','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (1)
  • action_launch(self)

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/mass-mailing
GIT
GIThttps://github.com/OCA/mass-mailing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/mass-mailing/tree/18.0/mass_mailing_list_dynamic
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSJairo Llopis, OCA-git-bot, oca-ci, DavidJForgeFlow
WEBSITE
WEBSITEhttps://github.com/OCA/mass-mailing
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:18
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/mass-mailing:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - utm
    - link_tracker
    - web_editor
    - social_media
    - digest
    - portal
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Without this addon you have to choose between providing a dynamic domain
and letting your mass mailings reach all partners that match it.

This addon allows you to create dynamic mailing lists, so you can now
benefit from both things.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mailing_list_view_form Add sync stuff mailing.list xpath Inherits mass_mailing.mailing_list_view_form
view_mailing_load_filter_form mailing.load.filter form New
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True selection=[('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (1)
  • action_launch(self)

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/social
GIT
GIThttps://github.com/OCA/social.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/social/tree/17.0/mass_mailing_list_dynamic
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSJairo Llopis, Víctor Martínez, Weblate, OCA-git-bot, oca-ci, Pedro Evaristo Gonzalez Sanchez
WEBSITE
WEBSITEhttps://github.com/OCA/social
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:08
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/social:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - utm
    - link_tracker
    - web_editor
    - social_media
    - digest
    - portal
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Without this addon you have to choose between providing a dynamic domain
and letting your mass mailings reach all partners that match it.

This addon allows you to create dynamic mailing lists, so you can now
benefit from both things.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mailing_list_view_form Add sync stuff mailing.list xpath Inherits mass_mailing.mailing_list_view_form
view_mailing_load_filter_form mailing.load.filter form New
Models touched (7)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True selection=[('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (1)
  • action_launch(self)

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/social
GIT
GIThttps://github.com/OCA/social.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/social/tree/16.0/mass_mailing_list_dynamic
VERSION
VERSION 2.1.0
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSPedro M. Baeza, Jairo Llopis, Weblate, OCA-git-bot, David Vidal, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/social
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:55
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/social:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - utm
    - link_tracker
    - web_editor
    - web_kanban_gauge
    - social_media
    - digest
    - portal
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mailing_list_view_form Add sync stuff mailing.list xpath Inherits mass_mailing.mailing_list_view_form
view_mailing_load_filter_form mailing.load.filter form New
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True selection=[('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (1)
  • action_launch(self)

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/social
GIT
GIThttps://github.com/OCA/social.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/social/tree/15.0/mass_mailing_list_dynamic
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/social
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:40
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/social:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - utm
    - link_tracker
    - web_editor
    - web_kanban_gauge
    - social_media
    - digest
    - portal
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mailing_list_view_form Add sync stuff mailing.list xpath Inherits mass_mailing.mailing_list_view_form
view_mailing_load_filter_form mailing.load.filter form New
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True selection=[('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/social
GIT
GIThttps://github.com/OCA/social.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/social/tree/14.0/mass_mailing_list_dynamic
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSVíctor Martínez, oca-travis, Weblate, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/social
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:08
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/social:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - utm
    - link_tracker
    - web_editor
    - web_kanban_gauge
    - social_media
    - digest
    - portal
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mailing_list_view_form Add sync stuff mailing.list xpath Inherits mass_mailing.mailing_list_view_form
view_mailing_load_filter_form mailing.load.filter form New
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True selection=[('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/social
GIT
GIThttps://github.com/OCA/social.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/social/tree/13.0/mass_mailing_list_dynamic
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSJairo Llopis, Akim Juillerat, Jared Kipe, OCA Transbot, Víctor Martínez, oca-travis, Weblate, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/social
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:34:18
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/social:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - utm
    - link_tracker
    - web_editor
    - web_kanban_gauge
    - social_media
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mailing_list_view_form Add sync stuff mailing.list xpath Inherits mass_mailing.mailing_list_view_form
view_mailing_load_filter_form mailing.load.filter form New
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True args: [('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/social
GIT
GIThttps://github.com/OCA/social.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/social/tree/12.0/mass_mailing_list_dynamic
VERSION
VERSION 1.0.4
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSPedro M. Baeza, david, OCA Transbot, Víctor Martínez, oca-travis, Weblate, OCA-git-bot, Victor M.M. Torres
WEBSITE
WEBSITEhttps://github.com/OCA/social
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:23
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/social:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - contacts
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - utm
    - link_tracker
    - web_editor
    - web_kanban_gauge
    - social_media
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
view_mail_mass_mailing_list_form Add sync stuff mail.mass_mailing.list xpath Inherits mass_mailing.view_mail_mass_mailing_list_form
view_mail_mass_mailing_load_filter_form mail.mass_mailing.load.filter form New
Models touched (6)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • get_remaining_recipients(self)
    When evaluating remaining recipients we must resync the list in advance to avoid missing recipients due to domain change or new partners fitting into the conditions

New fields (0)

No new fields.

Public methods (2)
  • create(self, vals_list)
    @api.model_create_multi
  • write(self, vals)

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('is_blacklisted', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True args: [('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.
REPOSITORY
REPOSITORYOCA/social
GIT
GIThttps://github.com/OCA/social.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/social/tree/10.0/mass_mailing_list_dynamic
VERSION
VERSION 1.2.0
CATEGORY
CATEGORYMarketing
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSPedro M. Baeza, OCA Transbot, oca-travis, Weblate, Rafael Blasco, David
WEBSITE
WEBSITEhttps://github.com/OCA/social
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:20:00
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/social:
    - mass_mailing_partner
odoo/odoo:
    - mass_mailing
    - mail
    - base
    - base_setup
    - web_kanban
    - web
    - bus
    - web_tour
    - utm
    - link_tracker
    - web_editor
    - web_kanban_gauge
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
view_mail_mass_mailing_list_form Add sync stuff mail.mass_mailing.list xpath Inherits mass_mailing.view_mail_mass_mailing_list_form
view_mail_mass_mailing_load_filter_form mail.mass_mailing.load.filter form New
Models touched (5)

New fields (0)

No new fields.

Public methods (1)
  • send_mail(self)
    Sync dynamic lists before sending mailings to them.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (4)
  • dynamic Boolean
    help='Set this list as dynamic, to make it autosynchronized with partners from a given criteria.'
  • is_synced Boolean
    default=True help='Helper field to make the user aware of unsynced changes'
  • sync_domain Char
    default="[('opt_out', '=', False), ('email', '!=', False)]" help='Filter partners to sync in this list' required=True string='Synchronization critera'
  • sync_method Selection
    default='add' help='Choose the syncronization method for this list if you want to make it dynamic' required=True args: [('add', 'Only add new records'), ('full', 'Add and remove records as needed')]
Public methods (1)
  • action_sync(self)
    Sync contacts in dynamic lists.

New fields (1)
  • filter_id Many2one → ir.filters
    comodel_name='ir.filters' domain="[('model_id', '=', 'res.partner'), '|', ('user_id', '=', uid), ('user_id','=',False)]" ondelete='cascade' required=True string='Filter to load'
Public methods (1)
  • load_filter(self)

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)
    Allow to write values in mass mailing contact.