サブスクリプションをキャンセル
既存のサブスクリプションをキャンセルする方法は以下のとおりです。
このガイドでは、サブスクリプション API または ダッシュボード を使用して、顧客の購読を管理する方法について説明します。
サブスクリプションを有効なままにしながら、支払いの回収を一時的に停止する場合は、支払いの回収を一時停止できます。支払いの回収を一時停止しても、サブスクリプションのステータス には影響しません。一時停止は、顧客へのサービスを開始または停止するトリガーとして使用することをおすすめします。
サブスクリプションは、顧客への請求が最大 8 回失敗した後で自動的にキャンセルされます。試行回数はサブスクリプションのライフサイクル設定で指定できます。Smart Retriesや設定可能な顧客へのメールなどの売上回収の詳細は、ガイドをご覧ください。
サブスクリプションをキャンセルする
顧客のサブスクリプションは、API または ダッシュボード で手動でキャンセルすることができます。デフォルトでは、キャンセルは直ちに有効となり、キャンセルされたサブスクリプションに対して請求書は発行されなくなります。キャンセルされると、サブスクリプションやそのメタデータは更新できなくなります。
よくある間違い
カスタムのキャンセル日を設定している場合は、返金を行うことができません。クレジットの日割り計算は必ず生成されます。クレジットの日割り計算が生成されないようにするには、カスタムのキャンセル日が現在の請求期間内であること、および proration_
が none
に設定されていることを確認してください。
従量課金の比例配分
サブスクリプションの支払い済み請求期間の途中である場合、prorate パラメーターを渡して、キャンセルを日割り計算できます。
キャンセルを日割り計算する場合、オプションで以下に対する請求を行うことができます。
- 未払いの比例配分の部分
- 従量課金
サブスクリプションを日割り計算しない場合、使用量に基づく請求はすべて破棄され、発生する可能性のある日割り計算額は顧客に返金されません。
invoice_now パラメーターを使用して、最終請求書を作成できます。キャンセル後に顧客にクレジットを支払う必要がある場合は、そのクレジットを顧客のクレジット残高に追加し、将来の請求書に適用することができます。顧客に返金する には、返金 を発行し、アカウント残高 をゼロに戻す必要があります。
現在の請求サイクルの終了時にキャンセルする
現在の請求期間の終了時にサブスクリプションをキャンセルするには、cancel_
を true
に設定します。
これにより、顧客がすでに支払い済みの期間をサブスクリプションで完了できます。 cancel_
を false
に更新することで、キャンセルが予定されているサブスクリプションを再び有効にできます。期間が終了するまでは、いつでもサブスクリプションを再有効化できます。
予定された変更または将来の請求サイクル後にキャンセルする
指定された課金サイクル回数の後でサブスクリプションが終了するようにス設定するには、サブスクリプションスケジュールを作成します。1 つ以上のフェーズと期間を指定してスケジュールの長さを設定し、end_behavior 属性を cancel
に設定します。
終了動作が cancel
の場合、サブスクリプションスケジュールはサブスクリプションの cancel_at 属性を自動的に管理します。スケジュールが最後のフェーズにある場合、サブスクリプションのキャンセル日はフェーズの終了日に設定されます。それ以外の場合、サブスクリプションにキャンセル日は設定されません。
その結果、現在最終フェーズにあるスケジュールに新しいフェーズを追加すると、キャンセル日が削除されます。キャンセル日を延長または削除するときにサブスクリプションが最後の請求期間にある場合、期間終了と請求サイクルの起点が更新される可能性があります。詳細については、カスタムキャンセル日を設定する方法をご覧ください。
不審請求の申請後の自動キャンセルを設定する
限定的なサポート
この機能がサポートされる対象は、「全額」不審請求が申し立てられたクレジットカードとデビットカードの支払いのみです。自動キャンセルの遅延は、テストクロックに対応していません。
顧客がサブスクリプションの料金に対して 不審請求を申請 した場合、サブスクリプションは継続され、さらに不審請求が申請された料金が発生します。ダッシュボード でこの動作を変更し、サブスクリプションをキャンセルできます。サブスクリプションに対する変更は、約 1 時間後に有効になります。
不審請求が申請された支払いの管理 で、以下のいずれかを選択します。
日割り計算せずに、サブスクリプションを直ちにキャンセル: サブスクリプションは日割り計算なしですぐにキャンセルされます。キャンセルされたサブスクリプションを再開することはできません。顧客への請求を続行する場合は、新しいサブスクリプションを作成する必要があります。
期間の終了時にサブスクリプションをキャンセル: サブスクリプションは現在の請求期間の終了時にキャンセルされ、cancel_at_period_end は
true
に設定されます。これにより、キャンセルが発生する前に不審請求の申請プロセスを実行することができます。
スケジュールで管理されているサブスクリプションは、最初にスケジュール設定が解除され、それからキャンセルされます。予定された残りの変更は実施されません。
サブスクリプションのキャンセル時に請求書アイテムを処理する
以下の場合には、サブスクリプションの保留中の請求書アイテム が顧客に請求されることがあります。
- サブスクリプションのキャンセルには最終請求書が含まれます
- 顧客に別の有効なサブスクリプションが存在します
保留中の請求書アイテムについて顧客に請求しないようにするには、請求書アイテムを手動で削除 する必要があります。
同様に、請求期間中に報告された使用量 はすべて、期間の終了時に請求されます。使用量に対する最終の請求を避けるには、clear_usage パラメーターを使用してサブスクリプションを更新 し、従量料金を削除します。
期間の終了時にサブスクリプションをキャンセルするように設定した場合、保留中の比例配分はそのまま残り、期間の終了時に引き続き回収されます。期間が終了する前にサブスクリプションをキャンセルした場合、請求書アイテムは残り、お客様がこの請求書アイテムを含めた請求書を特別に作成しない限り処理されません。
サブスクリプションをキャンセルすると、そのサブスクリプションの open
と draft
になっている請求書の auto_
プロパティは、すべて false
に設定されます。これにより、これらの請求書の 自動回収が一時停止 され、自動リマインダーメールが送信されなくなります。引き続き、手動で支払いの回収とメールの送信を行うことは可能です。
キャンセルイベントを識別する
Stripe は、キャンセルされたサブスクリプションに対して以下のイベントを送信します。
イベント | 説明 |
---|---|
customer. | cancel_ が true に設定されている場合など、サブスクリプションの更新に対して送信されます。 |
customer. | サブスクリプションがキャンセルされたときに送信されます。キャンセルは、サブスクリプションを削除するための直接のコールによって発生するか、cancel_ が指定されているサブスクリプションが請求期間の終了に達したときに発生します。 |
キャンセルの予定を取り消す
サブスクリプション API を更新 または ダッシュボード でキャンセルの予定を停止できます。キャンセルされたサブスクリプションを再び有効にすることはできません。
カスタムのキャンセル日を設定する
サブスクリプションを将来のタイムスタンプにキャンセルするには、cancel_at パラメーターを使用します。
請求期間が終了する前にキャンセル日をスケジュールすると、サブスクリプション項目の current_period_end が cancel_
の日付と一致するように更新されます。これにより、更新によって比例配分が無効化されない限り、現在の期間の変更に対して比例配分が作成されます。
キャンセル日を現在の請求期間後の日付に設定した場合、サブスクリプションが cancel_
日を含む期間に更新されるまで、サブスクリプションサイクルは影響を受けません。更新される items.
は、cancel_
の日付に合わせて短縮されます。
たとえば、顧客が 2024 年 1 月 1 日を更新日とする年額 120 USD のライセンス型サブスクリプションに登録しているとします。顧客は、サブスクリプションを 2024 年 7 月 1 日にキャンセルするように設定しました。1 月 1 日の最終請求書の小計は 60 USD で計算され、items.
は 7 月 1 日になります。
現在の期間内に予定が設定されたキャンセル日を変更、追加、または削除すると、items.
が更新され、比例配分が作成されます。上記の例では、2 月 15 日にキャンセル日を 10 月 1 日に更新しています。現在の期間の終了日は 10 月 1 日になり、Stripe は追加の四半期の料金である 30 USD を比例配分します。10 月 1 日の最終請求書ではなく、比例配分された項目を直ちに請求するには、更新で always_
の proration_behavior を渡すか、別途 1 回限りの請求書を作成します。
サブスクリプションの billing cycle anchor プロパティは、前回のキャンセル日を追跡していた場合に変更が生じる可能性があります。最初の期間中、Stripe はサブスクリプションに最初に設定された起点日を保持します。最初の期間が終了した場合、あるいはサブスクリプションの作成時にカスタムの起点日を指定しなかった場合は、起点日が現在の期間の開始日にリセットされます。この請求サイクルの起点のリセット動作は、2024 年 6 月以降に作成されたサブスクリプションでのみ保証されます。この日よりも前に作成されたサブスクリプションでは、キャンセル、削除、または延長の後も billing cycle anchor プロパティが変更されず、従来の動作が続く可能性があります。
キャンセル日を追加するか、既存のキャンセル日を現在の時刻に近づけると、請求サイクルの起点が短縮され、新しいキャンセル日と一致するようになります。上記の例では、2 月 15 日にキャンセル日を 4 月 1 日に更新します。期間終了と請求起点は 4 月 1 日になり、Stripe は 4 月 1 日から 7 月 1 日までの未使用の期間に対して -30 USD の比例配分を行い、顧客に入金します。