v 14.0 Third Party 1157
Download for v 14.0 Deploy on Odoo.sh
Odoo Online
On Premise
Odoo Apps Dependencies Email Marketing (mass_mailing)
Contacts (contacts)
Discuss (mail)
Lines of code 990
Technical Name mass_mailing_custom_unsubscribe
Versions 16.0 11.0 15.0 9.0 14.0 8.0 10.0 12.0 13.0
You bought this module and need support? Click here!

Customizable unsubscription process on mass mailing emails

Beta License: AGPL-3 OCA/social Translate me on Weblate Try me on Runboat

This addon extends the unsubscription form to let you:

  • Choose which mailing lists are not cross-unsubscriptable when unsubscribing from a different one.
  • Know why and when a contact has been subscribed or unsubscribed from a mass mailing.
  • Provide proof on why you are sending mass mailings to a given contact, as required by the GDPR in Europe.
  • Handle discrete unsubscriptions from other recipients that are not a mailing list. On standard module, unsubscriptions from these recipients directly include that mail on the general blacklist.

Table of contents


You can customize what reasons will be displayed to your unsubscriptors when they are going to unsubscribe. To do it:

  1. Go to Email Marketing > Configuration > Unsubscription Reasons.
  2. Create / edit / remove / sort as usual.
  3. If Details required is enabled, they will have to fill a text area to continue.

For having discrete unsubscriptions from other recipients than the mailing lists, you need to add a glue module that adds 2 fields in the associated model:

  • opt_out.
  • Either email or email_from.

See mass_mailing_custom_unsubscribe_event for an example.


Once configured:

  1. Go to Email Marketing > Mailings > Create.
  2. Edit your mass mailing at wish, but remember to add a snippet from Footers, so people have an Unsubscribe link.
  3. Send it.
  4. If somebody gets unsubscribed, you will see logs about that under Email Marketing > Unsubscriptions.

Known issues / Roadmap

  • This module replaces AJAX submission core implementation from the mailing list management form, because it is impossible to extend it. When this is fixed, this addon will need a refactoring (mostly removing duplicated functionality and depending on it instead of replacing it).

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.



  • Tecnativa


  • Tecnativa:
    • Rafael Blasco
    • Antonio Espinosa
    • Jairo Llopis
    • David Vidal
    • Ernesto Tejeda
    • Pedro M. Baeza
    • Carlos Roca


This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/social project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.