Introduction
L’intégration Discord publie les événements de paiement, d’abonnement, de litige et autres événements Dodo Payments dans le canal Discord de votre choix. Votre équipe voit chaque événement là où elle collabore déjà, sans interroger une API ni consulter un tableau de bord.Vous devez avoir accès à Developer → Webhooks dans le tableau de bord Dodo Payments, ainsi que disposer de l’autorisation Manage Webhooks sur le serveur Discord.
Commencer
1
Create a Discord Webhook
Dans Discord, ouvrez le canal qui doit recevoir les notifications et cliquez sur Edit Channel. Accédez à Integrations → Webhooks → New Webhook, nommez le webhook, confirmez le canal, puis cliquez sur Copy Webhook URL.
2
Open the Webhook Section
Dans le dashboard Dodo Payments, accédez à Developer → Webhooks et cliquez sur Add endpoint.

3
Select Discord
Dans Integration, sélectionnez Discord. Le panneau How to connect Discord reprend les étapes de création du webhook Discord.
4
Paste the Webhook URL
Collez l’URL du webhook Discord, qui commence par
https://discord.com/api/webhooks/, dans Endpoint URL. Discord n’a pas besoin de clé API.5
Select Events
Dans Subscribed events, sélectionnez les événements gérés par votre transformation. Discord rejette un message qui ne contient ni
content ni embeds ; un événement que la transformation ne convertit pas ne peut donc pas être transmis.6
Edit Transformation Code
Sous Transformation code, adaptez la façon dont chaque événement est mappé vers un embed Discord, ou partez des exemples.
7
Test & Create
Sous Test this code, cliquez sur Simulate pour prévisualiser l’embed à partir d’un payload d’exemple. Cliquez ensuite sur Create endpoint.
8
Done
Votre canal Discord reçoit désormais un message pour chaque événement auquel vous êtes abonné.
Exemples de code de transformation
Chaque handler remplacewebhook.payload par un message Discord contenant un embed. Les montants de Dodo Payments sont exprimés dans la plus petite unité monétaire ; les exemples les divisent donc par 100 et affichent le code devise.
Embed de paiement minimal
Publiez un embed lorsqu’un paiement réussit (payment.succeeded) :
payment_embed.js
Événements d’abonnement
Publiez un embed lorsqu’un abonnement devient actif (subscription.active) ou est annulé (subscription.cancelled) :
subscription_embed.js
Alertes de litige
Publiez un embed pour chaque événement de litige, tel quedispute.opened, dispute.won ou dispute.lost. Le titre et la couleur dépendent de dispute_status du litige :
dispute_embed.js
Conseils
- Utilisez des embeds pour un formatage enrichi et des couleurs.
- Gardez les titres courts et placez les détails dans les champs.
- Utilisez des couleurs qui indiquent le résultat : vert en cas de réussite, rouge en cas d’échec et orange en cas d’avertissement.
Dépannage
No Messages in Discord
No Messages in Discord
- Vérifiez que le webhook existe toujours dans Integrations → Webhooks du canal et que Endpoint URL correspond à son URL.
- Vérifiez que la transformation renvoie un objet JSON avec
embeds. - Vérifiez que Subscribed events inclut les événements attendus.
- Ouvrez les tentatives de livraison de l’endpoint dans l’onglet Logs de Developer → Webhooks pour voir le code de réponse de Discord.
Transformation Errors
Transformation Errors
- Validez votre code dans l’éditeur. Les erreurs de syntaxe bloquent la livraison.
- Vérifiez que les noms des champs correspondent à la structure de la charge utile du webhook.