Skip to main content

Introduction

L’intégration Resend envoie un e-mail transactionnel via Resend lorsqu’un événement Dodo Payments se produit. Utilisez-la pour confirmer les paiements, souhaiter la bienvenue aux nouveaux abonnés et informer les clients lorsqu’un paiement échoue, depuis votre propre domaine d’envoi.
Cette intégration nécessite une clé API Resend avec Sending access et un domaine d’envoi vérifié dans Resend. Vous devez également avoir accès à Developer → Webhooks dans le tableau de bord Dodo Payments.

Prise en main

1

Open the Webhook Section

Dans le tableau de bord Dodo Payments, accédez à Developer → Webhooks et cliquez sur Add endpoint.
Fenêtre de dialogue Add endpoint avec Resend sélectionné dans la liste déroulante Integration et les étapes How to connect Resend
2

Select Resend

Dans Integration, sélectionnez Resend. Le tableau de bord renseigne automatiquement l’Endpoint URL et le code de transformation pour Resend, tandis que le panneau How to connect Resend affiche les étapes de configuration.
3

Enter API Key

Dans Resend, ouvrez API Keys, cliquez sur Create API Key, puis attribuez à la clé Sending access. Resend n’affiche la clé, qui commence par re_, qu’une seule fois. Collez-la dans API key. Dodo Payments l’envoie comme bearer token dans l’en-tête Authorization de chaque requête vers Resend.
4

Select Events

Dans Subscribed events, sélectionnez uniquement les événements que votre transformation gère. Un événement laissé inchangé par la transformation parvient à Resend au format Dodo Payments, que Resend rejette.
5

Configure Transformation

Sous Transformation code, modifiez le handler afin que chaque événement inscrit devienne un e-mail Resend. Commencez avec les exemples.
6

Test & Create

Sous Test this code, sélectionnez un type d’événement et cliquez sur Simulate pour prévisualiser la requête envoyée à Resend. Cliquez ensuite sur Create endpoint.
7

Done

Dodo Payments envoie désormais un e-mail via Resend pour chaque événement inscrit. Pour voir chaque livraison et la réponse de Resend, ouvrez l’onglet Logs dans Developer → Webhooks.

Exemples de code de transformation

Chaque handler définit webhook.url sur l’endpoint send-email de Resend et remplace webhook.payload par l’e-mail. Les montants Dodo Payments sont exprimés dans la plus petite unité monétaire. Les exemples les divisent donc par 100 et affichent le code devise. Pour les devises sans décimales, comme JPY et KRW, utilisez le montant tel quel.

E-mail de confirmation de paiement

Envoyez un reçu lorsqu’un paiement réussit (payment.succeeded) :
payment_confirmation.js

E-mail de bienvenue pour un abonnement

Souhaitez la bienvenue à un client lorsqu’un abonnement devient actif (subscription.active) :
subscription_welcome.js

Notification d’échec de paiement

Demandez au client de mettre à jour son mode de paiement lorsqu’un paiement échoue (payment.failed) :
payment_failure.js

Conseils

  • Envoyez les e-mails depuis un domaine que vous avez vérifié dans Resend afin d’améliorer la délivrabilité.
  • Incluez une version html et une version text de chaque e-mail.
  • Personnalisez le contenu avec les données client de la payload, comme customer.name.
  • Rédigez des objets qui indiquent le résultat ou l’action requise.
  • Incluez un lien de désabonnement dans tout e-mail contenant du contenu marketing.
  • Prévisualisez chaque modèle avec Simulate avant de créer l’endpoint.
  • Pour ignorer un événement dans le code, définissez webhook.cancel = true avant de retourner le webhook. Les logs enregistrent une livraison ignorée comme réussie.

Résolution des problèmes

  • Vérifiez que la clé API est correcte, active et dispose de Sending access. Pour la remplacer, modifiez l’endpoint et collez une nouvelle clé dans API key.
  • Vérifiez que le domaine de l’expéditeur est vérifié dans Resend.
  • Vérifiez que les adresses e-mail des destinataires sont valides.
  • Vérifiez les limites et les quotas d’envoi Resend correspondant à votre forfait.
  • Ouvrez l’onglet Logs dans Developer → Webhooks et consultez la réponse de Resend concernant la livraison échouée.
  • Vérifiez que la payload correspond au format send-email de Resend. Resend requiert from, to et subject.
  • Vérifiez que chaque événement géré par votre code définit tous les champs requis.
  • Vérifiez que la valeur html est du HTML correctement formé.
  • Vérifiez que l’adresse from utilise un domaine vérifié dans Resend.
Dernière modification le 26 septembre 2026