# Idea for v25: email open tracking as a core tool that any module can use, looking for input

**URL:** <https://www.dolibarr.org/forum/t/idea-for-v25-email-open-tracking-as-a-core-tool-that-any-module-can-use-looking-for-input/31429>\
**Category:** Developing for Dolibarr\
**Created:** [October 23, 2026, 9:44pm UTC](https://www.dolibarr.org/forum/t/idea-for-v25-email-open-tracking-as-a-core-tool-that-any-module-can-use-looking-for-input/31429 "2026-10-23T21:44:37Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![zachmelo](https://www.dolibarr.org/forum/user_avatar/www.dolibarr.org/zachmelo/32/9195_2.png) [@zachmelo](https://www.dolibarr.org/forum/u/zachmelo)\
**Post date:** [October 23, 2026, 9:44pm UTC](https://www.dolibarr.org/forum/t/idea-for-v25-email-open-tracking-as-a-core-tool-that-any-module-can-use-looking-for-input/31429/1 "2026-10-23T21:44:37Z")

</div>

I would like to propose a small core feature for 25.0 and would value your opinion, and your support if you find it useful, before I open a pull request.

**The need**

When you send a proposal, order or invoice from its card, you can’t tell whether the customer opened it. Mass mailing records reads, but mail sent from the “Send email” form doesn’t. Modules that send mail on their own (webmail, CRM follow-ups, ticketing add-ons…) each have to build their own tracking, with their own public page, tables and events.

The ` __CHECK_READ__ ` substitution looks as if it does this in the send form, but outside mass mailing it never records anything.

**The idea: one open tracker in core, used by the send form and available to modules**

- **Off by default.** A setting in Setup \> Emails turns it on, with a note about consent and disclosure rules  
(GDPR/ePrivacy and similar).

- **Opt-in per message.** A “Track opening” checkbox in the send form, next to the delivery receipt, unticked by  
default.

- **Recorded on the agenda.** The open is stored on the event of the sent email: open count, first and last  
open. The first open adds an “Email opened” event linked to the same document, third party, contacts and  
project, so it shows on the document’s timeline. That event is a normal automatic event, switchable in Agenda  
setup.

- **Privacy-minded.** Only counters and dates. No IP address or user agent is stored. The image goes into the  
delivered message only, never into the event note, so the sender viewing their own event isn’t counted.

- **A tool for modules.** Any module that sends mail and logs it as an agenda event can use the same mechanism instead of building its own:

---

<div class="post-metadata">

**Author:** ![jonbendtsen](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/j/977dab/32.png) [@jonbendtsen](https://www.dolibarr.org/forum/u/jonbendtsen)\
**Post date:** [October 24, 2026, 9:24am UTC](https://www.dolibarr.org/forum/t/idea-for-v25-email-open-tracking-as-a-core-tool-that-any-module-can-use-looking-for-input/31429/2 "2026-10-24T09:24:35Z")

</div>

I think discussions like this should be on Dolibarrs github issue page.

I think your idea would bring value.

---

<div class="post-metadata">

**Author:** ![HubZ](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/h/e79b87/32.png) [@HubZ](https://www.dolibarr.org/forum/u/HubZ)\
**Post date:** [October 24, 2026, 11:12am UTC](https://www.dolibarr.org/forum/t/idea-for-v25-email-open-tracking-as-a-core-tool-that-any-module-can-use-looking-for-input/31429/3 "2026-10-24T11:12:29Z")

</div>

That would be great from my humble point of view, PRs are now accepted faster so it wont be a loss of time 🙂
