Transactional email you can actually debug.
A transactional email API and SMTP relay built on Amazon SES. Get per-message debug logs — down to the SMTP conversation — plus stable published pricing, a warn-before-block suspension policy, and the deliverability tooling to actually land in the inbox.
3,000 emails/month free, no credit card required.
import { Mailfully } from "@mailfully/node";
const mailfully = new Mailfully({
apiKey: process.env.MAILFULLY_API_KEY ?? "", // never hard-code your key
});
const { data, error } = await mailfully.emails.send({
from: "[email protected]",
to: "[email protected]",
subject: "Welcome aboard",
html: "<p>Thanks for signing up!</p>",
});
if (error) {
// No method ever throws — failures arrive on the error arm.
console.error(`Send failed (${error.statusCode}):`, error.message);
} else {
console.log("Queued email id:", data.id);
}The official @mailfully/node SDK. No method ever throws.
The bets we are making
Every transactional email provider sends mail. We are differentiating on the parts that actually hurt: visibility, billing trust, fair enforcement, and deliverability.
Per-message debug logs
Every message keeps its full timeline — accepted, the raw SES message ID, deliveries, opens, bounces, complaints — plus the actual SMTP conversation and provider response. When a send misbehaves, you see exactly what happened instead of guessing.
Price stability
Published per-tier pricing with a fixed overage rate per 1,000 emails. No surprise reclassification, no quiet mid-contract repricing. The numbers on our pricing page are the numbers you pay.
No silent suspension
We warn before we block. If your reputation or volume trips a policy, you get a notice and a window to respond — with a written appeal SLA — not an account that just stops sending overnight.
Deliverability tooling
Dedicated, shared, and warm-up IP pools on SES, guided DKIM/SPF/DMARC alignment, reputation monitoring, and first-class suppression handling — the tooling you need to actually land in the inbox.
Idiomatic SDK
The official @mailfully/node client wraps fetch with a typed { data, error } tuple — no method ever throws. Idempotency keys, camelCase inputs mapped to the wire format, and full TypeScript types.
Built on Amazon SES
The proven SES sending substrate, with the operational layer — logs, billing, suppression, abuse handling, a dashboard and an SMTP relay — built on top so you do not have to assemble it yourself.
Send your first email in five minutes.
Install the SDK, verify a domain, and ship. Migrating from Resend, Postmark, or Mailgun? The API and SDK are designed for a quick cutover.