Laravel SMTP

Send Laravel transactional email with SMTP

Laravel already has a clean mail layer, so SMTP is often the fastest path. Point Laravel Mail at zaSend, use a sender at your verified domain, and send password resets, notifications, receipts, and product email with DKIM signing and logs.

Laravel .env example

MAIL_MAILER=smtp
MAIL_HOST=smtp.zasend.com
MAIL_PORT=587
MAIL_USERNAME=noreply@yourdomain.com
MAIL_PASSWORD=dsk_live_...
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=noreply@yourdomain.com
MAIL_FROM_NAME="${APP_NAME}"

Why use SMTP here?

  • Laravel already has first-class SMTP support.
  • Domain Sending Keys keep credentials scoped to one verified domain.
  • zaSend logs help debug accepted, failed, bounced, and suppressed messages.
  • You can switch to the REST API later if you need API-specific workflows.

Queue mail in production

For user-facing flows like registration and checkout, queue Laravel mail jobs instead of sending directly in the request. The user gets a faster response, and failures can be retried without losing the event.