Payment Retries は、失敗したサブスクリプションの更新決済を、段階的なバックオフスケジュールに従って自動的に再試行します。再試行が成功すると、顧客による操作や統合作業なしで、サブスクリプションが自動的に再開されます。
Payment Retries とは?
サブスクリプションの更新決済に失敗すると、サブスクリプションは保留中になります。Payment Retries を有効にすると、Dodo Payments は、決済が成功するか回収期間が終了するまで、スマートなスケジュールに従って顧客の既存の支払い方法に自動で再請求します。 これにより、期限切れカードの保留、チャージによって残高が補充されるまでの残高不足、一時的なネットワークエラーなど、一時的な失敗によって失われた収益を、顧客へのメール送信や情報更新の依頼なしで回収できます。Payment Retries は、サブスクリプションの更新決済にのみ適用されます。初回決済(mandate の設定)、一回限りの決済、プラン変更時の請求、オンデマンド請求は、この機能による再試行の対象外です。
Payment Retries の仕組み
1
Renewal fails
サブスクリプションの更新決済に失敗し、サブスクリプションが
on_hold 状態に移行します。2
Retryability check
失敗時のエラーコードが確認されます。ソフトディクライン(残高不足、一般的な拒否、処理エラーやネットワークエラーなど)は再試行の対象です。ハードディクラインの場合は、再試行しても結果が変わらないため、再試行チェーンが直ちに終了します。
3
Scheduled retry
拒否が再試行可能で、回収期間内に収まる場合は、次の試行がスケジュールされます。再試行は、段階的なバックオフスケジュールに従い、顧客の既存の支払い方法に対してオフセッションで実行されます。
4
Recovery
最初の再試行が成功すると、サブスクリプションは
active に戻り、次回の請求日は通常どおり更新されます。再試行が一度も成功しないまま期間が終了すると、再試行は停止し、サブスクリプションは保留中のままになります。Payment Retries の設定
ダッシュボードの Settings → Recovery から Payment Retries を有効化し、設定します。
Payment Retries settings under Settings → Recovery
回収期間は、失敗した更新請求書が作成された時点を起点とします。累積バックオフ遅延がこの期間内に収まる間のみ、再試行がスケジュールされます。
再試行スケジュール
再試行間隔は段階的に長くなります。各試行が回収期間内に収まる限り、最大 8 回 試行されます。サブスクリプションのステータス遷移
再試行がスケジュールされている間にサブスクリプションがキャンセルされた場合、再試行チェーンは直ちに終了し、それ以降の試行は行われません。その他の非アクティブなステータス(
on_hold、expired、pending、failed)では再試行が継続されます。これらの未決済の更新請求書は、顧客がすでに利用した期間に対する債務を表すためです。Subscription Webhook Payloads
サブスクリプションのライフサイクルイベントに関する webhook payload スキーマの全文を確認できます。
再試行可能な失敗と再試行不可能な失敗
ハードディクラインを再試行しても結果は変わらないため、ハードディクラインが検出されると再試行チェーンは直ちに終了します。このような場合は、Payment Retries と Subscription Dunning を組み合わせて、顧客に支払い方法の更新を促してください。
Payment Retries と Dunning の比較
Payment Retries と Subscription Dunning は、相互に補完する回収ツールです。
両方を有効にすると、最も幅広く回収できます。自動再試行で一時的な失敗を検出し、Dunning で支払い方法自体の更新が必要な顧客を呼び戻せます。
関連項目
Subscription Dunning
顧客に支払い方法の更新を促すメールシーケンスです。
Abandoned Cart Recovery
対象を絞ったメールで、未完了または失敗した一回限りのチェックアウトを回収します。
Subscriptions
回収フローに関係するサブスクリプションの状態を理解します。
Subscription Webhooks
subscription.on_hold および subscription.active イベントに対応します。