PHPackages                             silverstripe/emailbouncehandler - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Mail &amp; Notifications](/categories/mail)
4. /
5. silverstripe/emailbouncehandler

AbandonedSilverstripe-module[Mail &amp; Notifications](/categories/mail)

silverstripe/emailbouncehandler
===============================

Email bounce handling for SilverStripe CMS, implemented through callbacks in MTAs

6293PHP

Since Apr 25Pushed 10y ago11 watchersCompare

[ Source](https://github.com/silverstripe-archive/silverstripe-emailbouncehandler)[ Packagist](https://packagist.org/packages/silverstripe/emailbouncehandler)[ RSS](/packages/silverstripe-emailbouncehandler/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

**This is an archived project and is no longer supported or updated by SilverStripe. Please do not file issues or pull-requests against this repo. If you wish to continue to develop this code yourself, we recommend you fork it or contact the maintainers directly (check latest commits for email addresses).**

SilverStripe Email Bounce Handling Module
=========================================

[](#silverstripe-email-bounce-handling-module)

Overview
--------

[](#overview)

Email bounce handling for SilverStripe CMS, implemented through callbacks in the mail server for incoming mail.

*Caution: This functionality has been migrated from SilverStripe core in 2012, but hasn't been actively used or maintained in a while. It should be regarded as a starting point rather than a complete solution. In general, we recommend using third party email SaaS solutions if you care about bounce tracking and management.*

If the [newsletter module](https://github.com/silverstripe-labs/silverstripe-newsletter)is installed, the bounce tracking can also identify the `Member`record and newsletter which this email related to, and track the data more specifically.

Installation
------------

[](#installation)

First of all, define a unique `EMAIL_BOUNCEHANDLER_KEY` constant, in order to secure the tracking against unverified use. Change the value in `_config.php`, or define your own one earlier on.

You need to let your mailserver know where to forward bounced emails to. In the *Exim* mailserver, this is called the "[pipe transport](http://www.exim.org/exim-html-3.20/doc/html/spec_18.html)". The configuration setting will look roughly like the following example:

```
| php -q /your/path/framework/cli-script.php /Email_BounceHandler

```

Please ensure that the `From:` or `Reply-To:` address in the emails you send matches the one address being configured in the mailserver.

Usage
-----

[](#usage)

You can send an email through SilverStripe as usual, no special flags are needed.

```
:::php
$email = new Email();
$email
	->setTo('test@test.com')
	->setFrom('mailer@mydomain.com')
	->setSubject('Test Email')
	->send();

```

Bounces will be recorded as new `Email_BounceRecord` database entries, as well as tracked in the `Member->Bounced` property.

Alternatively, you can define a `BOUNCE_EMAIL` constant to set up a global bounce address for all emails sent through SilverStripe's `Email` class.

Related
-------

[](#related)

- [Jeremy's bouncehandler module](https://github.com/burnbright/silverstripe-bouncehandler)

###  Health Score

24

—

LowBetter than 31% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 88.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/b0cba8b534e20e6ab4fff555a97b237a18436ebca1446fc0b29c8a8b504038b9?d=identicon)[GuySartorelli](/maintainers/GuySartorelli)

![](https://avatars.githubusercontent.com/u/111025?v=4)[Ingo Schommer](/maintainers/chillu)[@chillu](https://github.com/chillu)

![](https://www.gravatar.com/avatar/be6648e60fbab6f70bfc34dd8c14259562d28a47510a934ea9c01fe98633f3c2?d=identicon)[sminnee](/maintainers/sminnee)

---

Top Contributors

[![chillu](https://avatars.githubusercontent.com/u/111025?v=4)](https://github.com/chillu "chillu (8 commits)")[![dhensby](https://avatars.githubusercontent.com/u/563596?v=4)](https://github.com/dhensby "dhensby (1 commits)")

### Embed Badge

![Health badge](/badges/silverstripe-emailbouncehandler/health.svg)

```
[![Health](https://phpackages.com/badges/silverstripe-emailbouncehandler/health.svg)](https://phpackages.com/packages/silverstripe-emailbouncehandler)
```

###  Alternatives

[maize-tech/laravel-email-domain-rule

Laravel Email Domain Rule

612.0k](/packages/maize-tech-laravel-email-domain-rule)[sarfraznawaz2005/noty

Laravel package to incorporate noty flash notifications into laravel.

324.5k](/packages/sarfraznawaz2005-noty)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
