Skip to main content

Introducción

La integración de Resend envía un correo electrónico transaccional a través de Resend cuando ocurre un evento de Dodo Payments. Úsala para confirmar pagos, dar la bienvenida a nuevos suscriptores e informar a los clientes cuando un pago falla, desde tu propio dominio de envío.
Esta integración requiere una clave de API de Resend con Sending access y un dominio de envío verificado en Resend. También necesitas acceso a Developer → Webhooks en el dashboard de Dodo Payments.

Comenzando

1

Open the Webhook Section

En el panel de Dodo Payments, ve a Developer → Webhooks y haz clic en Add endpoint.
Add endpoint dialog with Resend selected in the Integration dropdown and the How to connect Resend steps
2

Select Resend

En Integration, selecciona Resend. El dashboard completa la Endpoint URL y el código de transformación para Resend, y el panel How to connect Resend muestra los pasos de configuración.
3

Enter API Key

En Resend, abre API Keys, haz clic en Create API Key y asigna a la clave Sending access. Resend muestra la clave, que comienza con re_, una sola vez. Pégala en API key. Dodo Payments la envía como un bearer token en el encabezado Authorization de cada solicitud a Resend.
4

Select Events

En Subscribed events, selecciona solo los eventos que maneja tu transformación. Un evento que la transformación deja sin cambios llega a Resend en el formato de Dodo Payments, y Resend lo rechaza.
5

Configure Transformation

En Transformation code, edita el handler para que cada evento suscrito se convierta en un correo electrónico de Resend. Comienza con los ejemplos.
6

Test & Create

En Test this code, selecciona un tipo de evento y haz clic en Simulate para previsualizar la solicitud a Resend. Luego haz clic en Create endpoint.
7

Done

Dodo Payments ahora envía un correo electrónico a través de Resend por cada evento suscrito. Para ver cada entrega y la respuesta de Resend, abre la pestaña Logs en Developer → Webhooks.

Ejemplos de código de transformación

Cada handler establece webhook.url en el endpoint de envío de correos de Resend y reemplaza webhook.payload por el correo electrónico. Los importes de Dodo Payments están en la unidad monetaria más pequeña, por lo que los ejemplos los dividen entre 100 y muestran el código de moneda. Para monedas sin decimales, como JPY y KRW, usa el importe tal cual.

Correo electrónico de confirmación de pago

Envía un recibo cuando un pago se realiza correctamente (payment.succeeded):
payment_confirmation.js

Correo electrónico de bienvenida de suscripción

Da la bienvenida a un cliente cuando una suscripción se activa (subscription.active):
subscription_welcome.js

Notificación de pago fallido

Pide al cliente que actualice su método de pago cuando un pago falla (payment.failed):
payment_failure.js

Consejos

  • Envía los correos desde un dominio que hayas verificado en Resend, lo que mejora la entregabilidad.
  • Incluye una versión html y una versión text de cada correo electrónico.
  • Personaliza el contenido con datos del cliente del payload, como customer.name.
  • Escribe asuntos que indiquen el resultado o la acción necesaria.
  • Incluye un enlace para cancelar la suscripción en cualquier correo electrónico que contenga contenido de marketing.
  • Previsualiza cada plantilla con Simulate antes de crear el endpoint.
  • Para omitir un evento en el código, establece webhook.cancel = true antes de devolver el webhook. Los logs registran una entrega omitida como exitosa.

Solución de problemas

  • Comprueba que la clave de API sea correcta, esté activa y tenga Sending access. Para reemplazarla, edita el endpoint y pega una clave nueva en API key.
  • Comprueba que el dominio del remitente esté verificado en Resend.
  • Comprueba que las direcciones de correo electrónico de los destinatarios sean válidas.
  • Comprueba los límites y las cuotas de envío de Resend para tu plan.
  • Abre la pestaña Logs en Developer → Webhooks y lee la respuesta de Resend a la entrega fallida.
  • Comprueba que el payload coincida con el formato de envío de correos de Resend. Resend requiere from, to y subject.
  • Comprueba que cada evento que maneja tu código establezca todos los campos obligatorios.
  • Comprueba que el valor de html sea HTML válido.
  • Comprueba que la dirección de from use un dominio verificado en Resend.
Última modificación el 26 de septiembre de 2026