Most QA teams test email with three shared Gmail accounts and a mock. The accounts collide, the mock proves nothing about delivery, and the one bug that matters — the template that renders wrong in a real client — ships anyway. Reclario gives you a private catch-all domain for $49/mo per domain: every run invents its own addresses, mail arrives over real MX, and API keys plus webhooks let CI assert on what was actually delivered.
Every address on your domain works instantly. Generate one per run in code — no setup fixture, no teardown, no account creation step that flakes at 3am.
Mail is received at a real domain over real MX records — closer to production truth than intercepting SMTP in-process. If routing or headers are wrong, you find out here.
Subject, body, headers, links, attachments, timestamps. Pull the message your app actually sent and make real assertions instead of trusting a send() return value.
See the message the way a user does — images, styling, layout — in a sandboxed renderer. The check automation cannot do, done in five seconds by a human eye.
Read messages from your suite, or get pushed a webhook the moment mail lands — so tests wait on delivery events rather than arbitrary sleeps.
Staging data, reset links, and customer-shaped fixtures never sit in a public inbox. Your domain is unlisted and unsearchable — only invited members can read it.
The whole integration is: pick an address, send to it, read it back. There is nothing to provision and nothing to clean up.
Your team's private catch-all domain — $49/mo per domain, unlimited addresses, unlimited inboxes.
yourteam.reclar.ioTag it with the run and the case so parallel suites never read each other's mail. It works the moment you send.
qa+run-8842@yourteam.reclar.ioFetch the message over the API or wait on a webhook, then assert on subject, body, headers, and attachments.
expect(msg.subject)The reason email tests are flaky is almost never email — it is that four workers are all reading qa@company.com and grabbing each other's messages. With unlimited addresses the fix is free: derive the address from the run ID and the test name, and every worker gets an inbox nobody else can touch. Suites that used to run serially because of email can run wide.
When a test fails you get the actual evidence: the rendered message, the full headers, every attachment, and a raw .eml download to attach to the ticket. Testing calendar flows too? Invites sent to a tagged address answer themselves — see calendar invite testing. Testing signup, verification, and lifecycle mail? That is onboarding and transactional email testing.
qa+run-8842@yourteam.reclar.io exists the instant something sends to it. There is no provisioning step to fail, no setup fixture to maintain, and no DNS work on your side.qa+run-8842-checkout@yourteam.reclar.io — and two suites executing at once never read each other’s mail. This is the usual failure mode of a handful of shared test accounts, and it disappears..eml, with full headers and attachments intact — so you can diff it, attach it to a bug report, or feed it to a parser in your own tests.Claim a private catch-all domain for $49/mo per domain — or wire up your first assertion against the free public sandbox at public.reclar.io (work email required, no credit card). Weighing alternatives? See email testing tools compared.
Start free See pricing