サブスクリプションの請求書
サブスクリプション請求書を管理する方法をご紹介します。
請求書は Stripe のコアリソースであり、顧客への請求額が表示されています。Stripe は、サブスクリプションの請求サイクル期間において、期間ごとに請求書を生成します。また、ダッシュボードまたは API を使用して、オフサイクルまたは 1 回限りの支払いの請求書を手動で作成することもできます。スタンドアロンの請求書とサブスクリプションで生成された請求書のライフサイクルについてご紹介します。
サブスクリプション請求書のライフサイクル
以降のセクションでは、サブスクリプションのライフサイクルを通じ、Stripe が請求書を処理する方法を説明します。
新たなサブスクリプションの請求書
お客様が顧客をサブスクリプションに登録すると、Stripe は以下を行います。
- 請求書を生成する。
- 請求書を確定します。
サブスクリプションの最初の請求書で支払いを完了した場合、または支払いが不要だった場合、請求書のステータスが status=paid になり、サブスクリプションがアクティブになります。
支払いが完了するまで、請求書の status (ステータス) は open
のままで、auto_advance は false
のまま保持されます。サブスクリプションの status は incomplete
で保持されます。新しいサブスクリプションの請求書が支払いに失敗し、支払い方法を必要とする場合の解決方法についてご説明します。
場合により、サブスクリプションのアップグレードやダウングレードによって新しい請求書が作成されることもあります。このような請求書は、最初から auto_advance がオフになっています。
請求書が確定されると、 請求書アイテムの追加や請求額に影響するその他の修正はできなくなります。ただし、顧客に対する請求書アイテムの追加は可能で、追加されたアイテムは次回の請求書に適用されます。
サブスクリプション更新時の請求書
サブスクリプションが更新されると、Stripe は以下のことを行います。
請求書を生成する。
請求書を約 1 時間
draft
ステータスにしておく。デフォルトの支払い方法で請求書の確定と支払いを試みる。
支払い成功後、請求書のステータスを
paid
に変える。
Stripe が請求書を作成すると、設定済みの Webhook エンドポイントで invoice.
イベントを受信します。このときの請求書の属性ステータスは draft
であり、請求書の項目はまだ修正可能です。
支払いを回収する
請求書の期日になると、Stripe は登録されている支払い方法に自動請求するか、顧客にメールで請求書を送信して、支払いの回収を試みます。
支払いを再試行する
Stripe は、支払い失敗を処理するためのいくつかのオプションを用意しています。これには、機械学習を利用した Smart Retries の使用が含まれます。
サブスクリプションの請求書を管理する
サブスクリプションの最初の請求書を更新する
サブスクリプションの初回請求書を編集する方法は、顧客のサブスクリプションの支払い方法の設定に応じて異なります。不明な場合は、API またはダッシュボードを使用して支払い方法を確認できます。
API を使用してサブスクリプションの支払い方法を確認するには、顧客の Subscriptions
オブジェクトの collection_method の値を調べます。値が send_
の場合は、Stripe が請求書を顧客にメールで送信します。値が charge_
の場合は、Stripe はデフォルトの支払い方法を使用して、お客様の代理で顧客に請求します。
ダッシュボードでサブスクリプションの支払い方法を確認するには、サブスクリプションページを開きます。次に、確認するサブスクリプションをクリックして、詳細ビューを開きます。サブスクリプションの詳細セクションの請求方法フィールドの値に応じて、デフォルトの支払い方法に請求または請求書を送信するの支払い方法が定義されます。
請求書をカスタマイズする
請求書は次のようないくつかの方法でカスタマイズできます。
- 追加アイテムを将来の請求書に追加する
- 請求書の頻度を増やす
- アイテムを顧客の最初の請求書に追加する
- アイテムを下書きのサブスクリプション請求書に追加する
- サブスクリプションサイクル外の請求書を生成する
- 審査のためにサブスクリプションの請求書を一時停止する
- アイテムの価格を設定できるサブスクリプションの請求書を発行する
追加の請求書アイテムを将来の請求書に追加する
1 通の請求書には最大で 250 件の請求書アイテムを追加できます。サイクルの次回の請求書に追加の請求書アイテムを追加する方法は、以下のとおりです。
これらの単一の項目は、同じ顧客のために作成される次回の請求書に追加されます。 特定のサブスクリプションに追加されるようにするには、オプションの subscription
パラメータを使用して対象となるサブスクリプションに適用してください。
保留中のアイテムの請求頻度を増やす
請求サイクルを変更する以外に、通常のサブスクリプションサイクルを調整せずにこれらのアイテムを請求する方法はいくつかあります。
対象となる顧客向けに 1 回限りの請求書を作成します。
未払い額がしきい値に達するたびにサブスクリプションを請求します。
pending_invoice_item_interval を使用して、保留中の請求書アイテムに対して請求を行う頻度 (請求期間) を指定します。これは、Stripe がサブスクリプションの 1 回限りの請求書を継続的に作成するのと同じ結果になります。
サブスクリプションの最初の請求書に、追加の支払いを追加する
add_
を使用し、サブスクリプションの最初の請求書に 1 回限りの支払いを含めます。
注意
Checkout を使用してサブスクリプションを作成する場合、クライアント側およびサーバー側による導入で line_items を指定し、別途支払いを追加してください。
請求書アイテムを下書きのサブスクリプション請求書に追加する
サブスクリプションが更新され、インボイスが作成されると、Stripe は invoice.
Webhook イベントを送信します。Stripe は約 1 時間待機してからインボイスを確定し、決済を試みるか、またはメールを送信します。
この遅延の間、請求書は draft の状態で、編集可能です。その請求書に請求書項目を作成できます。これらの請求書項目を作成する際には、invoice パラメーターを必ず指定してください。それ以外の場合は、保留中の項目として追加され、次のサブスクリプション期間に含められます。
これらの請求書アイテムは、Stripe が自動的に生成する請求書アイテムとは以下の点でわずかに動作が異なります。
キャンセルされたサブスクリプションの請求期間が終わると、保留中の請求書アイテムは常に請求されます。顧客のサブスクリプションをキャンセルすることにより、「請求書アイテムが存在しない」場合は、顧客に対する請求がそれ以降行われなくなります。
顧客のサブスクリプションに変更が生じた場合、保留中の請求書アイテムは比例配分されません。
サブスクリプションのキャンセル後に保留中の請求書アイテムが残っている場合、Stripe は請求書を生成し、次回の請求期間の終わりにこれらのアイテムについて顧客に請求を試みます。サブスクリプションが変更された場合、これらの請求書アイテムも(同様に)比例配分されません。
保留中の請求書アイテムを管理する
顧客の保留中の請求書アイテムは、顧客ページに移動し、顧客名をクリックすると確認できます。顧客に保留中の請求書アイテムがある場合には、保留中の請求書アイテムに表示されます。請求書アイテムがどの請求書にも関連付けられていない場合は、保留中として表示されます。
保留中の請求書アイテムで、新しい請求書アイテムを作成したり、またはリストされているものすべてを直ちに請求したりすることもできます。今すぐ請求書を作成をクリックすると、ダイアログが表示され、デフォルトのソースに請求するか、顧客に請求書を送信するかを選択できます。さらにこのダイアログには、税金を自動的に計算するオプションもあります。
請求サイクル外のサブスクリプションアイテムの請求書を生成する
1 回限りの請求書を生成することにより、定期的な請求サイクルに含まれない保留中の請求書アイテムを請求できます。1 回限りの請求書を生成すると、定期スケジュールの請求書に追加されるはずだった保留中の請求書アイテムがすべて取り込まれます。
審査のためにサブスクリプションの請求書を一時停止する
請求期間の終わりに自動的に支払いを試みる代わりに、請求書を一時停止して審査や修正を行うことができます。請求書を一時停止するには、以下を行ってください。
invoice.
イベントを受信してから 1 時間以内に自動請求を停止してください。停止するには、API でcreated auto_
を設定するか、ダッシュボードのサブスクリプションとメール通知に移動します。 支払い回収の一時停止セクションを探して設定をクリックすると、変更を行うことができます。この機能を利用することで、Stripe による顧客からの請求書金額の回収の自動実行や、請求書のメール送信を停止することができます。advance=false 請求書を審査します。
顧客に請求する準備ができたら、自動請求を再開します。再開するには、auto_advance=true を設定するか、またはダッシュボードで支払いの一時停止のオプションを更新します。
アイテムの価格を設定できるサブスクリプションの請求書を発行する
内税が含まれないラインアイテムの価格で請求書を発行できます。税抜き価格は請求書の PDF にのみ表示されます。そのため、内税を使用する場合、オンライン請求書ページと請求書メールには税込み価格が表示されます。ダッシュボードまたは API で正味価格の設定を定義できます。
- 内税を含む: 請求書の PDF には、内税を含むラインアイテムの価格が表示されます (これがデフォルトです)。
- 税抜き: 請求書の PDF には、税抜きのラインアイテムの価格が表示されます。
注文の優先順位
ラインアイテムの価格のデフォルトを顧客レベルで設定する場合は、アカウントレベルの設定よりも優先されます。
サブスクリプションメタデータ
サブスクリプションによって請求書が作成されると、次のようにサブスクリプションの metadata
が含まれます。
- 請求書の subscription_details.metadata 属性は、サブスクリプションの
metadata
が後で変更された場合でも、請求書作成時に常にサブスクリプションのmetadata
を格納します。 - type=“subscription” になっている請求書のラインアイテムの metadata 属性は、請求書を取得した時点での最新のサブスクリプションの
metadata
を反映するため、請求書作成時のmetadata
とは異なる場合があります。 - type=“invoiceitem” になっている請求書のラインアイテムには、サブスクリプションの
metadata
は格納されません。
サブスクリプションの請求書のラインアイテムの metadata
を、直接、invoice line update (請求書のラインアイテムの更新) または bulk invoice line update (請求書のラインアイテムの一括更新) エンドポイントのいずれかを使用して変更する場合、更新リクエストは、請求書のラインアイテムの metadata
を宣言します。「継承された」サブスクリプションの metadata
が暗黙的に保持されることはありません。
Subscription item metadata (サブスクリプションアイテムのメタデータ) は、その他の Stripe オブジェクトには自動的に伝播しません。