サブスクリプションの請求サイクル日を設定する
サブスクリプションの請求日を設定する方法をご紹介します。
サブスクリプションの請求サイクルは、次の 2 つの要因により決定されます。
- 単一の料金または複数の料金の継続期間 (月次、年次、週次など)。
- billing cycle anchor (請求サイクルの起点) は、今後の請求サイクルの日付を調整するための参照先です。
week
の期間には曜日、month
とyear
の期間には日、year
の期間には月が設定されます。デフォルト値は、サブスクリプションの作成日またはトライアルの終了日 (トライアル期間を使用している場合) です。また、サブスクリプションの作成時にこの値を明示的に設定することもできます。
注
請求サイクルアンカーは、現在のエポックからの秒単位の Unix タイムスタンプです。
以下に、さまざまな請求サイクルが設定された月次サブスクリプションの例を示します。
- 請求サイクルの起点の日付が 9 月 2 日の月次サブスクリプションの場合、常に毎月 2 日に請求されます。
- 請求サイクルの起点の日付が 1 月 31 日の月次サブスクリプションの場合、請求日は起点の日付に最も近いその月の最終日になります。したがって、請求日は 2 月 28 日 (うるう年の場合は 2 月 29 日)、3 月 31 日、4 月 30 日というようになります。
- 請求サイクルの起点の日付が 6 月 3 日 (金) の週次サブスクリプションの場合、翌週から毎週金曜日に請求されます。
完全な請求期間は、全額が請求される最初の請求書の日付に開始されます。多くの場合、その日付は請求サイクルの起点と同じであり、必ずこれに合わせて期間が調整されます。
新しいサブスクリプションの請求サイクルの起点を指定する
注
サブスクリプションの作成時刻は、リクエストの時刻と一致します。サブスクリプションの開始日とは異なります。詳細は遡及適用と請求サイクルの起点をご覧ください。
新しいサブスクリプションの請求サイクルの起点を指定する方法として、以下の 2 つがあります。
billing_
を使用して、タイムスタンプを計算する (月次または年次のサブスクリプションのみ).cycle_ anchor_ config billing_
を使用して、タイムスタンプを直接受け付ける。cycle_ anchor
月次または年次のサブスクリプションを作成している場合、短い月とうるう年が自動的に考慮される billing_
パラメーターの使用をお勧めします。日次または週次のサブスクリプションを作成している場合、またはタイムスタンプを使用してサブスクリプションのサイクル日時を設定したいと考えている場合、billing_
パラメーターを直接使用します。
billing_cycle_anchor_config を使用する
月次と年次のサブスクリプションを組み合わせて作成する場合は、サブスクリプションの作成の billing_
を使用して、起点となる日付を指定します。
day_
を 31
に設定すると、日数が 31 日未満の月であっても月末を起点とする月次サブスクリプションを作成することができます。日数が 31 日未満の月には、その月の最終日が起点となります。
month
を指定して、複数月および年次のサブスクリプションで起点となる月を管理することもできます。
年次サブスクリプションの開始を 7 月 1 日とするには、month
を 7
、day_
を 1
に指定して年次サブスクリプションを作成します。
billing_
を使用して請求サイクルの起点の正確な月、日、時、分、秒を指定できます。時、分、秒を指定しない場合、デフォルトはサブスクリプションの作成時刻の値になります。
請求サイクルの起点には協定世界時 (UTC) が用いられています。たとえば、時間を指定せずに午後 5 時 (東部標準時) に billing_
を使用してサブスクリプションを作成した場合、時刻は午後 10 時 (UTC) としてシステムに記録されます。
billing_
は、起点を過去の日付に設定する機能には対応していません。
たとえば、既存の月次サブスクリプションにおいて、日、時、分、秒 として 15、12、30、0 を含む billing_
タイムスタンプが指定されている場合、新しい月次サブスクリプションをこれに合わせることができます。そのためには、day_
、hour
、minute
、second
を既存のサブスクリプションと同じ値に設定します。
billing_
を使用すると、結果的に billing_
が将来の 1 請求期間を超える場合がありますが、全額が請求される最初の請求書の日付は常に、サブスクリプションの作成または無料トライアルの終了から 1 請求期間以内になります。
たとえば、請求期間が 2 カ月のサブスクリプションを 2 月に作成し、day_
を 31
に設定して請求サイクルを各月の最終日にするとします。2 カ月の請求期間を 2 月に開始した場合、31 日がある次の月は 8 月であるため、請求サイクルの起点は 8 月 31 日となります。ただし、全額が請求される最初の請求書の日付は、2 月のままです。サブスクリプションの作成から 2 月 28 日 (うるう年の場合は 29 日) までは最初の比例配分の期間であり、その後に通常の 2 カ月ごとの請求サイクルが開始されます。
billing_cycle_anchor を使用する
Subscriptions API または Checkout を使用して、明示的な請求サイクルの起点を指定したサブスクリプションを作成できます。
既存サブスクリプションの請求サイクル変更
Subscriptions API またはダッシュボードを使用し、既存のサブスクリプションの請求日を以下のいずれかのオプションの中から変更します。
- 請求サイクルの起点を現在時刻にリセットします。
- 無料トライアルを追加して、起点の日付がトライアルの終了日に自動的に設定されるようにします。トライアルは通常、サブスクリプションの作成時に開始しますが、既存のサブスクリプションに適用することもできます。これにより、顧客がすでに支払った前のサイクルの残り日数分について顧客にクレジットすることができます。
請求サイクルの日付は、このようなシナリオで変わります。ただし、billing_
を指定してサブスクリプションを作成または更新した場合、請求サイクルの起点は変更されません。詳しくは、柔軟な請求モードの設定とその制限事項をご覧ください。
- すべての価格がゼロ金額の場合、1 つ以上の有料価格を追加すると、請求期間が即座にリセットされます。詳細については、サブスクリプション価格の変更ガイド をご覧ください。
cancel_
をサブスクリプションの次回サイクルより前の日付に設定してサブスクリプションを作成する場合、またはat billing_
が設定されたサブスクリプションの既存のcycle_ anchor cancel_
の日付を新しいat cancel_
の将来の日付に変更する場合、at billing_
は cancel_at の日付にリセットされます。cycle_ anchor - 異なる recurring.interval の料金に切り替えると、
billing_
が現在の時刻にリセットされます。cycle_ anchor
請求サイクルを現在時刻にリセットする
To reset the billing cycle anchor to the current time, make an update request with billing_
set to now
. This sets the billing cycle anchor to the time of the update request. After you reset the billing cycle anchor, Stripe immediately sends an invoice. Enable proration to credit the customer for any days already paid in the previous period. Disabling proration might result in overcharging your customer.
トライアル期間を使用した請求サイクル変更
You can change the billing cycle anchor by using a free trial to automatically set the billing cycle anchor date to the trial_
date.
例えば、顧客が 7 月 23 日に次回請求予定のアクティブなサブスクリプションを持っており、7 月 15 日に 8 月 1 日終了のトライアル期間を導入したとします。
- 顧客は 7 月 15 日に 0 USD の請求書を受け取ります。顧客は前回のサイクルで 7 月 23 日まで既に支払い済みのため、「無料」期間は 7 月 24 日から 7 月 31 日までのみ適用されます。
- 顧客は 7 月 23 日には請求されません。
- 8 月 1 日に請求される新しいサイクルは通常料金での完全なサイクルとなり、その後は毎月 1 日に継続されます。
オプションとして、proration_
を使用することで、サブスクリプションをアップデートしてトライアルを開始する際の日割り計算を防止できます。多くの場合、日割り請求書を発行せずにトライアル期間を使用して請求サイクルを変更する際は、トライアル期間の長さが前回の請求サイクルで既に支払い済みの部分を考慮しているため、日割り計算を無効にします。
従量課金ベース
従量課金を適用すると、顧客が支払う料金は請求書サイクル中の使用量に基づいて変動します。請求書サイクルを変えると、サブスクリプション期間の終了が早まり、短縮された請求書サイクル中に発生した使用量に対して顧客に支払うことになります。
しきい値
通常のサイクルに加えて、請求金額がしきい値に達したときに請求するようにサブスクリプションを設定できます。
この方法で請求するようにサブスクリプションを設定している場合、しきい値に達したときにサブスクリプションのサイクルをリセットするように設定することができます。