Einführung
Die SendGrid-Integration sendet eine transaktionale E-Mail über die SendGrid Mail Send API, wenn ein Dodo Payments-Ereignis auftritt. Jede E-Mail verwendet eine deiner dynamischen SendGrid-Vorlagen, die mit Daten aus dem Ereignis ausgefüllt wird. So kannst du Zahlungen bestätigen, neue Abonnenten begrüßen und auf fehlgeschlagene Zahlungen reagieren.Für diese Integration benötigst du einen SendGrid API key mit der Berechtigung Mail Send, einen verifizierten Absender in SendGrid und eine dynamische Vorlage für jede E-Mail, die du sendest. Außerdem benötigst du Zugriff auf Developer → Webhooks im Dodo Payments-Dashboard.
Erste Schritte
1
Open the Webhook Section
Gehen Sie im Dodo Payments-Dashboard zu Developer → Webhooks und klicken Sie auf Add endpoint.

2
Select SendGrid
Wähle unter Integration die Option SendGrid aus. Das Dashboard trägt die Endpoint URL und den Transformation code für SendGrid ein. Im Bereich How to connect SendGrid werden die Einrichtungsschritte angezeigt.
3
Enter API Key
Gehe in SendGrid zu Settings → API Keys und klicke auf Create API Key. Wähle Restricted Access mit der Berechtigung Mail Send oder Full Access aus. SendGrid zeigt den Schlüssel, der mit
SG. beginnt, nur einmal an. Füge ihn in API key ein. Dodo Payments sendet ihn als Bearer-Token im Authorization-Header jeder Anfrage an SendGrid.4
Select Events
Wähle unter Subscribed events nur die Ereignisse aus, die deine Transformation verarbeitet. Ein Ereignis, das von der Transformation unverändert gelassen wird, erreicht SendGrid im Dodo Payments-Format, und SendGrid lehnt es ab.
5
Configure Transformation
Bearbeite unter Transformation code den Handler, um E-Mails für die SendGrid Mail Send API zu formatieren. Beginne mit den Beispielen und ersetze jedes
template_id durch die ID deiner eigenen dynamischen Vorlage, die mit d- beginnt.6
Test & Create
Wähle unter Test this code einen Ereignistyp aus und klicke auf Simulate, um die Anfrage an SendGrid in der Vorschau anzuzeigen. Klicke anschließend auf Create endpoint.
7
Done
Dodo Payments sendet jetzt für jedes abonnierte Ereignis eine E-Mail über SendGrid. Um jede Zustellung und die Antwort von SendGrid anzuzeigen, öffne den Tab Logs unter Developer → Webhooks.
Beispiele für Transformation code
Jeder Handler setztwebhook.url auf den Mail Send-Endpunkt und übergibt Ereignisdaten über dynamic_template_data an eine dynamische Vorlage. Dodo Payments-Beträge werden in der kleinsten Währungseinheit angegeben, daher teilen die Beispiele durch 100. Für Währungen ohne Dezimalstellen wie JPY und KRW verwendest du den Betrag unverändert.
E-Mail zur Zahlungsbestätigung
Sende eine Quittung, wenn eine Zahlung erfolgreich ist (payment.succeeded):
payment_confirmation.js
Willkommens-E-Mail für Abonnements
Begrüße einen Kunden, wenn ein Abonnement aktiv wird (subscription.active):
subscription_welcome.js
Benachrichtigung über eine fehlgeschlagene Zahlung
Fordere den Kunden bei einer fehlgeschlagenen Zahlung zum erneuten Versuch auf (payment.failed):
payment_failure.js
Tipps
- Verwende dynamische SendGrid-Vorlagen, um Inhalte zu personalisieren.
- Übergebe die Zahlungsdaten, die deine Vorlage benötigt, in
dynamic_template_data. - Lege eine
from-Adresse fest, die einem verifizierten Absender entspricht, sowie einen Absendername. - Verwende Vorlagen-IDs wieder, damit E-Mails desselben Typs dasselbe Format beibehalten.
- Füge jeder E-Mail, die Marketinginhalte enthält, einen Abmeldelink hinzu.
- Um ein Ereignis im Code zu überspringen, setze
webhook.cancel = true, bevor du den Webhook zurückgibst. In den Logs wird eine übersprungene Zustellung als erfolgreich erfasst.
Fehlerbehebung
Emails Not Being Sent
Emails Not Being Sent
- Überprüfe, ob der API key die Berechtigung Mail Send besitzt. Um ihn zu ersetzen, bearbeite den Endpunkt und füge unter API key einen neuen Schlüssel ein.
- Überprüfe, ob jedes
template_idzu einer aktiven dynamischen Vorlage gehört. - Überprüfe, ob die E-Mail-Adressen der Empfänger gültig sind.
- Überprüfe die Versandlimits und Kontingente deines SendGrid-Tarifs.
- Öffne den Tab Logs unter Developer → Webhooks und lies die Antwort von SendGrid zur fehlgeschlagenen Zustellung.
Transformation Errors
Transformation Errors
- Überprüfe, ob die Payload dem Mail Send-Format von SendGrid entspricht.
- Überprüfe, ob alle erforderlichen Felder vorhanden sind:
personalizationsmit mindestens einerto-Adresse undfrom. - Überprüfe, ob die Schlüssel in
dynamic_template_datamit den Variablen in deiner Vorlage übereinstimmen, z. B.{{customer_name}}. - Überprüfe, ob jede
from-Adresse in SendGrid verifiziert ist.