Configurando Resend como un Pro (y Evitando Dolores de Cabeza)

Guía práctica y detallada para configurar y usar Resend para el envío de emails transaccionales en tu aplicación, con un enfoque especial en asegurar una alta entregabilidad y evitar la carpeta de spam.

12 min de lectura
Por Equipo 10xDev

¡Hola, 10x Developer!

Si estás construyendo una aplicación web o un SaaS, hay algo casi tan seguro como que necesitarás autenticación y base de datos: necesitarás enviar emails. Desde confirmaciones de cuenta y OTPs (¡hola, artículo anterior!) hasta notificaciones de actividad, recibos de pago o resets de contraseña, los emails transaccionales son el pegamento que mantiene a los usuarios conectados con tu producto.

El problema no es cómo enviar un email (eso es relativamente fácil con librerías o APIs), sino cómo asegurar que ese email llegue a la bandeja de entrada del usuario y no se pierda en la temida carpeta de spam. Una baja entregabilidad es frustrante para ti y tus usuarios, y da una imagen poco profesional.

Aunque podrías configurar tu propio servidor SMTP (como exploramos brevemente con Zoho para Supabase), un servicio dedicado como Resend está diseñado específicamente para la entregabilidad de emails transaccionales. Te ofrece una API limpia, herramientas de monitoreo y, lo más importante, te guía para configurar la infraestructura DNS necesaria para ser un remitente "de confianza".

En este artículo, vamos a configurar Resend paso a paso y, crucialmente, a entender los factores clave que aseguran que tus emails aterricen donde deben: en la bandeja de entrada.

La Importancia Crítica de la Entregabilidad#

Imagina esto: un nuevo usuario intenta registrarse en tu SaaS, recibe un email de verificación con un código OTP... que nunca llega. O peor, le llega horas después a la carpeta de spam. Resultado: un usuario frustrado que probablemente no volverá.

La entregabilidad no es un detalle menor; es una característica fundamental de tu producto. Depende de varios factores, incluyendo la reputación de tu dominio, la configuración técnica de tu email (registros DNS como SPF, DKIM, DMARC) y el contenido de tus mensajes.

¿Por Qué Resend?#

Resend es un servicio relativamente nuevo pero que ha ganado popularidad rápidamente en la comunidad de desarrolladores por varias razones:

  • API Orientada a Desarrolladores: Es limpia, moderna y fácil de usar.
  • Enfoque en Entregabilidad: Está construido desde cero pensando en asegurar que tus emails lleguen.
  • Precios Razonables: Competitivo, especialmente para volúmenes iniciales.
  • Templates: Permite crear y gestionar templates de email fácilmente.
  • Estadísticas Claras: Proporciona métricas sobre envíos, aperturas, clics, rebotes, etc.

Es una excelente alternativa a servicios más antiguos o más complejos si buscas simplicidad y efectividad.

Paso a Paso: Crear una Cuenta en Resend y Verificar Tu Dominio#

1 Regístrate en Resend: Ve a Resend.com y crea una cuenta. Tienen un plan gratuito generoso para empezar. 2 Añade y Verifica Tu Dominio: Este es el paso más crítico para la entregabilidad. Resend necesita confirmar que eres el propietario del dominio desde el que enviarás emails.

  • En el panel de Resend, ve a la sección "Domains".
  • Haz clic en "Add Domain".
  • Introduce tu dominio (ej: tudominio.com).
  • Resend te proporcionará varios registros DNS que necesitas añadir en el panel de tu gestor de DNS (¡hola, Cloudflare!). Serán registros de tipo TXT y CNAME.

3 Configurando Registros DNS (en Cloudflare): Vuelve a tu panel de Cloudflare (o donde gestiones tus DNS).

  • Ve a la sección DNS de tu dominio.
  • Añade los Registros que te dio Resend. Serán algo parecido a esto:
    • Registro TXT (para verificación):
      • Type: TXT
      • Name: @ o tudominio.com (verifica lo que te pide Resend)
      • Content/Value: El código de verificación que te dio Resend (ej: resend-verification=abcdef123456)
    • Registro TXT (para SPF): SPF (Sender Policy Framework) indica a los servidores de correo receptores qué servidores están autorizados a enviar emails en nombre de tu dominio. Es VITAL.
      • Type: TXT
      • Name: @ o tudominio.com
      • Content/Value: El registro SPF que te dio Resend. Si ya tienes uno (ej: para Zoho Mail), DEBES combinarlo. Un registro SPF típico de Resend se ve como v=spf1 include:resend.com ~all. Si ya tenías v=spf1 include:zoho.com ~all, el nuevo sería v=spf1 include:resend.com include:zoho.com ~all Nunca tengas dos registros TXT separados con v=spf1.
    • Registros CNAME (para DKIM): DKIM (DomainKeys Identified Mail) añade una firma digital a tus emails, permitiendo al receptor verificar que el email no ha sido alterado en tránsito y que proviene realmente del dominio. Resend te dará 1 o 2 registros CNAME para esto.
      • Type: CNAME
      • Name: Un subdominio proporcionado por Resend (ej: resend.tudominio.com o rs._domainkey)
      • Target: El hostname proporcionado por Resend (ej: dkim.resend.com o similar)
      • Importante: Para los registros CNAME de DKIM, asegúrate de que el Proxy de Cloudflare (la nube naranja) esté DESACTIVADO (estado DNS Only). Cloudflare recomienda no proxyar los registros de verificación de terceros.
    • Registro TXT (para DMARC - Opcional pero Muy Recomendado): DMARC (Domain-based Message Authentication, Reporting & Conformance) le dice al receptor qué hacer si los cheques de SPF o DKIM fallan y te permite recibir informes. Configurar DMARC correctamente requiere entender los otros dos. Un registro DMARC básico podría ser:
      • Type: TXT
      • Name: _dmarc
      • Content/Value: v=DMARC1; p=none; rua=mailto:tudireccion@tudominio.com; ruf=mailto:tudireccion@tudominio.com; adkim=s; aspf=s (Esto le dice al receptor que no haga nada si falla, pero que te envíe informes). Puedes cambiar p=none a p=quarantine o p=reject gradualmente una vez que estés seguro de que tus emails pasan SPF/DKIM.

4 Verificar en Resend: Una vez que hayas añadido los registros DNS, vuelve al panel de Resend y haz clic en "Verify Domain". La propagación de DNS puede tardar un poco (desde minutos hasta unas horas), así que ten paciencia. Verás el estado cambiar a "Verified" una vez que se detecten los registros.

¡Tu dominio ahora está configurado correctamente para enviar emails de forma autorizada a través de Resend! Este paso es fundamental para la entregabilidad.

Enviando Tu Primer Email con la API de Resend en Next.js#

Resend ofrece SDKs para varios lenguajes. Usaremos el de Node.js/TypeScript.

1 Instala el SDK:

2 Obtén Tu API Key: En el panel de Resend, ve a "API Keys" y crea una nueva clave Guarda esta clave de forma segura y úsala como una variable de entorno secreta. 3 Crea un Route Handler o API Route en Next.js: Deberías enviar emails desde el lado del servidor para no exponer tu API key.

Asegúrate de definir RESEND_API_KEY en tu archivo .env.local y en la configuración de variables de entorno de tu proveedor de hosting (Vercel, etc.). La dirección de email en el campo from (no-reply@tudominio.com) debe usar el dominio que verificaste en Resend.

Manejo de Templates de Email#

Enviar HTML directamente desde el código puede volverse complicado. Resend te permite crear y gestionar templates directamente en su panel o a través de su API.

  • Crear Template en Resend: En el panel de Resend, ve a "Templates". Puedes crear plantillas usando su editor visual o importando HTML/React.
  • Enviar Email Usando Template:

Usar templates mejora la consistencia, facilita el diseño y separa la lógica de envío del contenido visual.

Factores a Tener en Cuenta para la Entregabilidad (Más Allá de la Configuración)#

Configurar SPF, DKIM y DMARC es esencial, pero la entregabilidad es un juego continuo. Considera lo siguiente:

  • Reputación del Remitente: Se construye con el tiempo. Envía emails consistentemente, evita picos repentinos de volumen si tu dominio es nuevo, y asegúrate de que los usuarios interactúen positivamente con tus emails.
  • Calidad de la Lista de Email: NUNCA compres listas de emails. Envía solo a usuarios que se hayan registrado voluntariamente y esperen tus comunicaciones. Las altas tasas de rebote o quejas de spam dañan seriamente tu reputación.
  • Contenido del Email:
    • Evita spam triggers: Palabras excesivas en mayúsculas, signos de exclamación, jerga de marketing agresiva, enlaces acortados, etc.
    • Mantén un ratio texto/imagen equilibrado.
    • Asegúrate de que el HTML esté limpio y sea responsive.
  • Opción para Darse de Baja: Incluye siempre un enlace de "darse de baja" claro y funcional en tus emails transaccionales (aunque no siempre es requerido legalmente para transaccionales puros, es buena práctica para ciertos tipos de notificaciones). Resend puede añadir esto automáticamente.
  • Monitoreo Constante: Revisa el panel de Resend regularmente. Presta atención a las tasas de apertura, clics, rebotes (bounces) y quejas de spam (complaints). Una alta tasa de rebotes o quejas es una señal de alerta.
  • Autenticación en Dos Pasos (2FA): Para los emails críticos (como OTPs o resets de contraseña), considera implementar 2FA en tu aplicación para una capa extra de seguridad.

Manejo de Webhooks (Rebotes, Quejas)#

Resend puede enviarte notificaciones automáticas (webhooks) cuando ocurre un evento importante, como un email que rebota (bounce) o un usuario que marca tu email como spam (complaint).

  • Configura Webhooks en Resend: En el panel de Resend, ve a "Webhooks" y añade un nuevo endpoint (una URL en tu aplicación que recibirá las notificaciones, ej: https://tudominio.com/api/webhooks/resend).
  • Implementa el Endpoint en Next.js: Crea un Route Handler que escuche peticiones POST en esa URL. Deberás verificar la firma del webhook para asegurarte de que proviene realmente de Resend.

Manejar rebotes y quejas te ayuda a mantener limpia tu lista de emails y protege tu reputación como remitente.

Monitoreo y Análisis de Métricas#

El panel de Resend te proporciona estadísticas valiosas. Revisa las tasas de entrega, apertura, clics, rebotes y quejas. Estas métricas son tus ojos sobre el rendimiento de tus emails y te alertan sobre posibles problemas de entregabilidad.

Conclusión#

El envío de emails transaccionales es más que solo apretar un botón; es un arte que requiere configuración técnica, buenas prácticas y monitoreo constante. Herramientas como Resend simplifican la parte técnica con una API amigable y te empujan a hacer lo correcto con la verificación del dominio.

Hemos recorrido la configuración esencial con Resend, desde añadir los registros DNS críticos (SPF, DKIM, DMARC) hasta enviar tu primer email con Next.js. Más importante aún, ahora entiendes los factores clave que determinan si tus emails llegan a la bandeja de entrada o terminan en la carpeta de spam.

Implementar estas prácticas no solo asegura que tus usuarios reciban tus comunicaciones vitales, sino que también construye la confianza y el profesionalismo de tu marca. ¡Envía con confianza!

¿Cuál es tu mayor dolor de cabeza con los emails transaccionales? ¡Cuéntanos en los comentarios!