Resend Email API Tutorial: El Único Setup que Necesitas en Producción

Resend Email API Tutorial: El Único Setup que Necesitas en Producción

Programación· 4 min de lectura

La Mayoría de Developers Siguen Usando SMTP en 2026

SMTP es un protocolo de 1982.

Y todavía lo usas para enviar emails transaccionales en tu SaaS.

La realidad: tu sistema de emails se cae una vez al mes, tu tasa de entrega es un misterio, y no tienes ni un dashboard decente para ver qué está fallando.

Resend resuelve exactamente esto. Y con 15 líneas de código.

Este es el resend email api tutorial que ojalá hubiera existido cuando empecé.

Por Qué Resend y No SendGrid, Mailgun o AWS SES

La respuesta corta: la developer experience.

SendGrid tiene una API de 2011 envuelta en una UI de 2014. Mailgun es potente pero está documentado como si fuera para ingenieros de telecomunicaciones. AWS SES funciona, pero configurar DKIM, SPF y DMARC desde cero te cuesta medio día de trabajo.

Resend está construido específicamente para developers que usan Next.js, React y TypeScript.

Tiene:

→ SDK oficial para Node.js, Python, Go, Ruby y PHP

→ Integración nativa con React Email para plantillas

→ Webhooks con firma HMAC para eventos en tiempo real

→ Domain verification en menos de 10 minutos

→ Dashboard limpio con logs de entrega por mensaje

La API sigue el mismo patrón que Stripe: simple, predecible, documentada con ejemplos reales.

Setup Inicial: De Cero a Primer Email en 5 Minutos

Paso 1: Instalar el SDK

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Paso 2: Obtener tu API Key

Ve a resend.com, crea una cuenta, y en el dashboard genera tu primera API key.

Guárdala en tu .env.local:

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Paso 3: Enviar tu Primer Email

Este es el código más básico posible. Funciona en Node.js, Next.js API Routes y cualquier entorno server-side:

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

El objeto de respuesta tiene data.id — el ID único de ese email. Lo necesitas para rastrear entregas vía webhook.

El Patrón Real: React Email + Resend en Next.js

Enviar HTML crudo es el enfoque de 2015.

El patrón correcto en 2026 es React Email como sistema de plantillas con Resend como transporte. Separas el diseño del envío, y puedes previsualizar emails en el browser como si fueran componentes React.

Instalar React Email

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Crear una Plantilla

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Enviar la Plantilla con Resend

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Este es el patrón de producción. Tus plantillas son testeables, versionables en Git, y reutilizables.

Webhooks: La Parte que Todos Ignoran

El error real no es en el resend email api tutorial. Es en no implementar webhooks.

El verdadero problema no es enviar emails. Es saber cuáles llegaron.

Resend emite eventos para: email.sent, email.delivered, email.bounced, email.complained, email.opened, email.clicked.

Sin webhooks, estás enviando emails a ciegas.

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Instala svix para verificar las firmas:

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Errores Comunes en Producción

Mal: Enviar desde un dominio no verificado

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Resend lo bloqueará. Gmail y los grandes ISPs rechazan emails transaccionales desde dominios personales.

Bien: Dominio propio verificado con DNS

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Verifica el dominio en el dashboard de Resend añadiendo los registros DKIM y SPF que te proporcionan. Tarda menos de 10 minutos.

---

Mal: Hardcodear la API key en el código

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Bien: Variables de entorno siempre

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

---

Mal: Ignorar errores del SDK

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Bien: Desestructurar y manejar `error` siempre

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Verifica Emails en Local con el CLI de React Email

Antes de hacer deploy, previsualiza tus plantillas en el browser:

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Abres localhost:3001 y ves todas tus plantillas renderizadas como si fueran páginas web. Cambias el componente, se recarga en tiempo real. Es la mejor developer experience para email que existe ahora mismo.

Cuándo No Usar Resend

Resend no es la solución para todo.

→ Si necesitas email marketing masivo con segmentación avanzada, listas y A/B testing → usa Loops.so o Brevo

→ Si ya tienes infraestructura en AWS y quieres coste mínimo → AWS SES sigue siendo válido

→ Si necesitas email bidireccional con parsing de respuestas → considera Postmark

Pero para emails transaccionales en un SaaS moderno — confirmaciones, resets de contraseña, notificaciones, facturas — Resend es la opción más rápida de implementar y mantener.

Takeaways Clave

→ Instala resend y @react-email/components juntos desde el primer día

→ Nunca envíes HTML crudo: usa React Email como sistema de plantillas

→ Implementa el webhook endpoint antes de ir a producción, no después

→ Verifica tu dominio con DKIM y SPF desde el dashboard de Resend

→ Maneja siempre { data, error } — nunca asumas que el envío fue exitoso

→ Usa svix para verificar firmas de webhooks y evitar requests maliciosos

La infraestructura de email es la parte más ignorada del stack de cualquier SaaS. Con Resend y este setup, la conviertes en algo que funciona, es observable y no te da problemas a las 3 de la mañana.

Brian Mena

Brian Mena

Ingeniero informatico construyendo productos digitales rentables: SaaS, directorios y agentes de IA. Todo desde cero, todo en produccion.

LinkedIn