Universal email verification plugin for Mautic, providing Double Opt-In (DOI) functionality with seamless form integration.
- Form Action Management: Separate actions for immediate submission vs. post-verification
- Email Verification: Built-in DOI workflow with
{doi_link}token support - Follow-up Emails: Automated reminders for unconfirmed submissions
- Link Expiration: Configurable timeout for DOI verification links
- Flexible Redirects: Configurable success/error pages after verification
- Security: HMAC-based hash generation for verification links
- Console Commands: Cron-compatible follow-up email sending, timeout processing, and optional cleanup of expired submissions
Tip
Other releases of this plugin may cover different Mautic versions!
- Mautic 5.2
- PHP 8.1 or higher
This plugin can be installed through composer.
Alternatively, it can be installed manually, following the usual steps:
- Extract to
plugins/LeuchtfeuerDoiBundle/ - Run
php bin/console cache:clear - Run
php bin/console mautic:plugins:reload - Configure plugin settings in Mautic admin
- Follow-up wait time: Hours before sending reminder emails (default: 24 hours)
- DOI link timeout: Hours after which verification links expire (default: 48 hours)
Set up the following cron jobs for automated processing:
php bin/console leuchtfeuer:doi:send-followup- Send follow-up reminder emailsphp bin/console leuchtfeuer:doi:update-timeout- Mark expired pending submissions as timed outphp bin/console leuchtfeuer:doi:cleanup-submissions- Delete expired pending submissions (per-form setting)
- Actions Tab: Configure immediate vs. post-verification actions
- Email Verification Tab:
- Enable DOI for this form
- Verification email to send (required when DOI is enabled)
- Follow-up email to send (optional)
- Thank you page redirect URL (optional)
- Verification error redirect URL (optional)
- Configure Conditions for skipping the verification (optional)
- Delete in case of DOI timeout (optional)
- Create verification email with
{doi_link}token - Configure form with DOI settings
- Form submissions trigger verification email
- Users click verification link to confirm
- Post-verification actions execute automatically
- Campaign Forms do not withhold the contact from the campaign until the email-verification has been successful, but instead start the campaign immediately
Make sure you have not only installed but also enabled the Plugin.
If things are still funny, please try
php bin/console cache:clear
and
php bin/console mautic:assets:generate
- Conditional actions: Update contact fields based on form field logic (currently doable via campaigns).
- Campaign integration: Start campaign from form action with conditional contact updates (e.g. MOI=1).
- Form submission handling: Persist form field status at submission (forms.cached_html → form_submissions.doi_formstatus).
- Missing email handling: Manage cases with empty or unmapped leads.email.
- Form action – Update Marketing Opt-In: Convenience action to set MOI fields and audit values.
- MOI data model: Fixed fields or dedicated table for bool + audit tracking.
- MOI flavor support: Allow multiple brand-specific opt-in variants defined in plugin config.
- Feedback pages: Support Mautic landing pages and generic preset URLs for thank-you/error redirects.
- Multi-language support: Translated DOI emails, language-aware redirects and feedback pages.
- Multi-brand support: URL-aware feedback pages per brand.
- Form behaviour: Per-form follow-up wait time setting.
- Honeypot support: NHI field awareness and handling.
- DOI email restriction: Only show emails containing
{doi_link}token. - Audit trail (future): Optional contact field audit log (leads.emailverifications_audit) for verification events.
We are continuously improving our plugins. If you are requiring priority support or custom features, please contact us at mautic-plugins@leuchtfeuer.com.
Feel free to open issues or submit pull requests on GitHub. Follow the contribution guidelines in CONTRIBUTING.md.”
@patrykgruszka @biozshock
Leuchtfeuer Digital Marketing GmbH Please raise any issues in GitHub. For all other things, please email mautic-plugins@Leuchtfeuer.com
“This plugin is licensed under the MIT License. See the LICENSE file for more details.”