Using Postmark with Swift Mailer on SS4.2


I attempted to set up Postmark on SS 4.2 today. I was able to send email by installing the official Swift Transport for Postmark:

$ composer require wildbit/swiftmailer-postmark ^2

And then using the following configuration:

Name: my-email
  - '#emailconfig'
    class: Postmark\Transport
      0: '<my-postmark-api-key>'

Big caveat though, the official v2 transport class is missing plugin and event support. This means that environment settings like SS_SEND_ALL_EMAILS_TO are ignored.

v3 looks better, but requires SwiftMailer v6, and SilverStripe is currently locked to v5. So I forked the repo and cherry picked some commits to make a franken-version compatible with SilverStripe 4.2 that supports the beforeSend event. If you want to use it too, edit your composer.json as such:

"repositories": [
        "type": "vcs",
        "url": ""
"require": {
    "wildbit/swiftmailer-postmark": "dev-swift5"

Getting this working on SS4 was trickier than I expected so I’m sharing my process in case it helps other Postmark fans :smile:


Awesome, thanks for this Jono :smiley: