Subscription Dunning は、支払い失敗後に失効したサブスクリプション、または顧客がキャンセルしたサブスクリプションに対してメールを送信し、支払い方法の更新または再購入を促します。有効にすると自動的に実行されます。
サブスクリプション督促とは?
Dunning は、サブスクリプションが回復可能な状態になったことを検知し、顧客に対応を促すメールシーケンスを送信します。シーケンスを開始する状態は次の 3 つです。- On Hold subscriptions: 更新の支払いに失敗しました。残高不足やカードの有効期限切れなどが原因です。
- Past Due subscriptions: 猶予期間中に更新の支払いに失敗しました。
- Cancelled subscriptions: 顧客が Customer Portal からキャンセルしました。
督促の仕組み
1
Trigger
サブスクリプションが次の 3 つの状態のいずれかになります。
- On Hold: 更新の支払いに失敗しました。
- Past Due: 猶予期間中に更新の支払いに失敗しました。
- Cancelled: 顧客が Customer Portal からサブスクリプションをキャンセルしました。
dunning.started webhook を送信します。対応するシーケンスに有効なメールがない場合、attempt は開始されません。また、1 つのサブスクリプションで同時にアクティブにできる attempt は最大 1 つです。2
Grace Period
猶予期間を設定すると、更新の支払いに失敗した場合、サブスクリプションは
on_hold ではなく past_due に移行します。On Hold のメールシーケンスはその期間中に実行されるため、顧客が引き続きアクセスできる間に支払いを促せます。支払いに 1 回失敗すると、1 つのシーケンスが開始されます。期間の終了時に 2 つ目のシーケンスが開始されることはありません。サブスクリプションが On Hold のまま期間が終了した場合、シーケンス内の残りのメールは引き続き送信されます。サブスクリプションが Cancelled の状態で期間が終了した場合、attempt は exhausted としてマークされます。Dunning attempt には past_due trigger state が記録されます。Dunning analytics を確認するときは、on_hold だけでなく past_due でもフィルタリングしてください。3
Email Sequence
Dodo Payments は trigger state に基づき、設定した遅延時間で最大 4 通の Dunning メールを送信します。各メールには Customer Portal へのリンクが含まれ、顧客はそこで支払い方法を更新できます。または、キャンセルされたサブスクリプションを再購入できる checkout へのリンクが含まれます。
4
Recovery
顧客が Customer Portal で支払い方法を更新すると、Dodo Payments は残りの未払い金額を自動的に請求します。支払いに成功すると、サブスクリプションが再有効化され、Dunning attempt は
recovered としてマークされます。ステータスのライフサイクル
各 Dunning attempt には、次のいずれかのステータスがあります。Dunning attempt が
exhausted としてマークされても、Dodo Payments はサブスクリプションを変更しません。現在の状態(Past Due、On Hold、または Cancelled)のままになります。Dunning の設定
ダッシュボードの Settings → Recovery で Dunning を有効にして設定します。Dunning はデフォルトで無効になっています。
Dunning settings in the dashboard showing enable toggle, on-hold sequence, and cancelled sequence
メールシーケンス
Dunning には On Hold と Cancelled の 2 つのメールシーケンスがあり、それぞれ最大 4 通のメールを設定できます。ダッシュボードでは、これらは Emails sent to customer when subscription is on hold および Emails sent to customer when subscription is cancelled として表示されます。past_due の attempt では、On Hold シーケンスが使用されます。
各メールには次の設定があります。
Subject Line では、Dodo Payments が次の placeholders を置き換えます。
{store_name}、{store_owner_name}、{store_contact_email}、{subscription_id}、{failure_reason}、{payment_form_link}。
デフォルトの遅延時間は次のとおりです。
Dunning メールの例
Dunning では、各サブスクリプションの状態に応じて異なるメールが送信されます。以下の例は顧客に表示される内容です。- On Hold
- Cancelled

Dunning email sent when a renewal payment fails and the subscription is on hold
顧客の回復エクスペリエンス
顧客が On Hold の Dunning メール内のリンクをクリックすると、Customer Portal がサブスクリプションのページで開きます。そこでは、サブスクリプションのステータスを確認し、支払い方法を更新できます。
Customer portal showing an on-hold subscription with option to update payment method
active に戻ります。
Cancelled サブスクリプションの場合、リンクを開くと、そのサブスクリプションの商品があらかじめカートに入った checkout ページが表示されます。
Analytics
ダッシュボードの Analytics → Recovery で Dunning のパフォーマンスを追跡できます。
Recovery analytics dashboard showing ACR and dunning metrics
Webhook イベント
Dunning は 2 つの webhook events を送信します。Recovery Webhook Payloads
Dunning events の webhook payload schema の全文を確認できます。
エッジケース
Dunning は次のケースを自動的に処理します。ベストプラクティス
- デフォルトから始める: デフォルトの遅延時間(1、3、5、7 日)ではメールが 1 週間にわたって分散されるため、顧客に大量のメールを送りつけずに、継続的なリマインダーを届けられます。
- 回復率を監視する: Recovery rate by email を確認して、どのメールが最も多くの回復につながったかを把握します。後のメールでほとんど回復していない場合は、そのメールを無効にします。
- サポートと連携する: Dunning メールが送信されることをサポートチームに伝え、返信した顧客をサポートできるようにします。
- サブスクリプションの状態を確認する: Dunning を
subscription.on_holdおよびsubscription.cancelledwebhooks と組み合わせて、サブスクリプションのライフサイクル全体を追跡します。
Dunning は Customer Portal の既存の On Hold および再有効化フローと連携して動作します。有効にすると、統合作業なしで自動的に実行されます。
関連情報
Recovery Webhooks
dunning.started および dunning.recovered events に対応します。Abandoned Cart Recovery
放棄または失敗した checkout を recovery emails で回復します。
Customer Portal
顧客は Customer Portal で支払い方法を更新します。
Subscriptions
Dunning をトリガーするサブスクリプションの状態です。
