はじめに
AutoSendとDodo Paymentsの統合により、成功した取引から失敗した試行、返金確認まで、すべての支払いイベントに対してリアルタイムのメール通知を自動的に送信できます。
AutoSendの強力なメールAPIを使用して、支払いイベントのトランザクションメールを送信します。
この統合では認証のために AutoSend API キーが必要です。API キーは AutoSend ダッシュボードの「Settings > API Keys」から確認できます。
始め方
AutoSendをDodo Paymentsに統合するための手順は次のとおりです。
Open Webhook Section
Dodo Payments ダッシュボードの Webhooks セクションに移動します。 Select AutoSend Integration
利用可能な統合リストから AutoSend を選択します。
Enter API Key
認証のために AutoSend API キーを入力します。API キーは AutoSend ダッシュボードの「Settings > API Keys」から確認できます。Learn how to create and manage API keys
API キーの作成と管理については AutoSend ドキュメントをご覧ください。
Configure Transformation
JavaScript トランスフォーメーションハンドラーを設定して、支払いイベントに基づいたメールコンテンツをカスタマイズします。
Test & Create
Webhook 設定をテストして、メールが正しく送信されることを確認した後、統合を作成します。
Activation Complete
🎉 AutoSend の統合が有効になり、設定された支払いイベントに対して自動的にメールが送信されます。
コード例
支払い確認メール
支払いが正常に処理されたときに確認メールを送信します:
function handler(webhook) {
if (webhook.eventType === "payment.succeeded") {
const p = webhook.payload.data;
webhook.url = "https://api.autosend.com/v1/mails/send";
webhook.payload = {
to: {
email: p.customer.email,
name: p.customer.name,
},
from: {
email: "payments@mail.yourdomain.com",
name: "Your Company",
},
subject: "Payment Successful - Thank you for your purchase!",
templateId: "A-61522f2xxxxxxxxx",
dynamicData: {
customerName: p.customer.name,
amount: p.amount,
currency: p.currency,
paymentId: p.payment_id,
paymentDate: new Date(p.created_at).toLocaleDateString(),
},
replyTo: {
email: "support@yourdomain.com",
name: "Support Team",
},
};
}
return webhook;
}
サブスクリプション歓迎メール
新しいサブスクリプションが作成されたときに歓迎メールを送信します:
function handler(webhook) {
if (webhook.eventType === "subscription.active") {
const s = webhook.payload.data;
webhook.url = "https://api.autosend.com/v1/mails/send";
webhook.payload = {
to: {
email: s.customer.email,
name: s.customer.name,
},
from: {
email: "subscriptions@mail.yourdomain.com",
name: "Your Company",
},
subject: "Welcome to your subscription!",
templateId: "A-61522f2xxxxxxxxx",
dynamicData: {
customerName: s.customer.name,
planName: s.plan.name,
billingInterval: s.billing_interval,
nextBillingDate: new Date(s.next_billing_at).toLocaleDateString(),
subscriptionId: s.subscription_id,
},
replyTo: {
email: "support@yourdomain.com",
name: "Support Team",
},
};
}
return webhook;
}
支払い失敗通知
支払いが失敗したときに通知メールを送信します:
function handler(webhook) {
if (webhook.eventType === "payment.failed") {
const p = webhook.payload.data;
webhook.url = "https://api.autosend.com/v1/mails/send";
webhook.payload = {
to: {
email: p.customer.email,
name: p.customer.name,
},
from: {
email: "billing@mail.yourdomain.com",
name: "Your Company Billing",
},
subject: "Payment Failed - Action Required",
templateId: "A-61522f2xxxxxxxxx",
dynamicData: {
customerName: p.customer.name,
amount: p.amount,
currency: p.currency,
failureReason: p.failure_reason,
paymentId: p.payment_id,
retryUrl: `https://yourdomain.com/billing/retry/${p.payment_id}`,
},
replyTo: {
email: "billing@yourdomain.com",
name: "Billing Support",
},
};
}
return webhook;
}
ベストプラクティス
-
送信者ドメインを確認する: 送信者のメールドメインがAutoSendで確認されていることを確認し、配信率を向上させ、認証の問題を回避します。確認されたドメインは、メールがスパムフォルダに入るのを防ぐのに役立ちます。
-
Use dynamic data for personalization:
dynamicData フィールドを使用して、顧客固有の情報(名前、支払金額、サブスクリプションの詳細など)でメールをパーソナライズします。パーソナライズされたメールはエンゲージメント率が高くなります。
-
明確な件名を書く: メールの目的を明確に示す説明的な件名を書く。スパムトリガーワードを避け、件名は簡潔に(50文字以内)保ちます。
-
本番前にテストする: 本番環境で送信する前に、必ずメールをテストします。これにより、メールコンテンツが正しく表示され、すべての動的データが適切にマッピングされていることが確認できます。
APIリファレンス
AutoSend APIの完全な詳細、すべての利用可能なパラメータおよびエラーコードについては、AutoSend APIドキュメントを訪問してください。
トラブルシューティング
- API キーが正しく有効であることを確認してください
- 送信元ドメインが AutoSend で確認済みであることを確認してください
- 宛先メールアドレスが有効であることを確認してください
- AutoSend の送信制限とクォータを確認してください
- API エンドポイント URL が正しいことを確認してください:
https://api.autosend.com/v1/mails/send
- ペイロードに必要なパラメータが含まれていることを確認してください
- テンプレート ID が AutoSend で正しく有効であることを確認してください
dynamicData キーがテンプレートで使用している変数と一致していることを確認してください
- 必要なテンプレート変数がすべて提供されていることを確認してください
- AutoSend ダッシュボードでテンプレートを独立してテストしてください