Amazon SES

Cheapest at scale ($0.10 per 1,000). Best deliverability when configured properly.

Setup

  1. Create an IAM user with the AmazonSESFullAccess managed policy. Generate an access key — Maillayer uses SigV4 to sign API calls.

  2. Verify your sender domain (or single email) in the SES console. Add the DNS records SES gives you. See Custom domain.

  3. Submit a production access request from the SES console. New accounts start in sandbox (200 emails/day, only to verified addresses). The request usually clears in a few hours.

  4. Brand → Provider → pick Amazon SES. Paste:

    • region (e.g. us-east-1)
    • access_key_id
    • secret_access_key

Bounce / complaint webhooks

SES delivers bounce + complaint events via SNS. Configure an SNS topic, subscribe an HTTPS endpoint, and point it at:

https://<your-app>/api/webhooks/ses/<brandId>

Maillayer auto-confirms the SNS subscription handshake on first request. Hard bounces unsubscribe contacts; complaints flag them for review.

Pricing

  • $0.10 per 1,000 outbound emails
  • $0.12 per GB of attachments
  • 62,000/mo free when sending from EC2 (any region)
Domain identity, not email
Verify the whole domain (e.g. example.com) instead of a single address. That way you can send as any address @ that domain — useful for multi-brand setups and per-template From addresses.