PlugPress

Email Failover and Smart Sender Routing

SMTP failover is the reason Mailyard exists. Most SMTP plugins send an email through one provider, and if that provider errors, they give up and log the failure. Mailyard doesn’t.

How automatic failover works

Add a backup provider in the Connections tab and Mailyard switches to it the moment your first one fails — on the same send, not in a retry queue. The email your customer is waiting for still goes out; a flaky API key on a Saturday night stops being your problem.

  1. In Connections, click Add and set up a second provider.
  2. Enable it and drag it below your primary provider.
  3. That’s it — the order of the list is the fallback chain.

With only one provider connected, a failed email fails like it normally would — so add a backup.

Smart sender routing

One site often sends more than one kind of mail. Routing lets you use the right provider for each kind, automatically:

  • By from address — send store receipts from orders@… through Postmark and newsletters from news@… through Brevo.
  • By purpose — split transactional email one way and marketing email the other. Providers with separate transactional/broadcast streams (like Postmark) get told which stream a message belongs on, so your transactional reputation stays clean.

This is also how Mailyard Pro broadcasts stay separate from your order emails: campaigns are routed on the marketing stream while receipts and password resets keep their own lane.

Bounce and complaint tracking

When an address hard-bounces or someone hits “mark as spam”, Postmark, Amazon SES, Resend, and Brevo report it back via webhooks. Mailyard catches those events, tidies them into one shape, and fires a single mailyard_bounce hook your other plugins can act on — so bad addresses get caught instead of quietly wrecking your sender reputation. Mailyard Pro listens to this hook to feed its suppression list automatically.

Verifying it all works

Every send — and every failover — shows up in the email log with its status and the exact provider error when something failed, so you can see the fallback chain doing its job.