従量課金をモデル化するレガシー
Stripe で使用される各種従量課金モデルについてご紹介します。
注
従量課金の仕組みを更新しました。改訂後の従量課金のドキュメント をご覧ください。
移行の方法をご確認ください。
従量課金のモデルでは、ユーザー数単位や定額制の料金体系モデルのように明示的に数量を設定するのではなく、請求サイクル内に使用したサービスの数量に応じて顧客に請求します (ユーザー数単位や定額制のモデルとのもう 1 つの相違点は、これらのモデルでは請求サイクルの支払いを必要に応じて事前に回収できることです。使用量に基づく請求では事後に請求することになります)。また、使用量を記録して報告する必要もあります。
Togethere では、新しい会議サービスの使用に対して分単位で請求し、使用時間が長いほど顧客の 1 分あたりの料金を下げたいと考えています。
これを Stripe で表すと、次のようなモデルになります。

従量課金の料金体系モデル
利用タイプ
継続購入の場合、licensed または metered のいずれかの usage_
を使用して、顧客への請求額を定義します。
ライセンスに基づく利用
従量利用
パッケージと標準の料金体系
ダッシュボードで、料金体系モデルとして標準の料金体系またはパッケージ料金体系を選択できます。これらのモデルはどちらもライセンス型 (recurring[usage_
) の使用量タイプにマッピングされます。どちらのモデルでも、サブスクリプションの作成または更新時に単位数を指定できます。以下に両モデルの相違点を示します。
- 標準の料金体系では、数量はデフォルトで 1 になります。
- パッケージ料金体系では、単価に 2 以上の値を設定します。
Stripe で従量課金の料金体系をモデル化する
次の例は、使用量に基づく料金体系モデルを作成する方法を示しています。この例の場合、Togethere は 1 分あたり 0.07 USD を請求します。
サブスクリプションの導入ガイドでは、実装全体に合わせて料金体系モデルを調整する方法を説明しています。
- Stripe Checkout を使用している場合、次のステップはサイトの Checkout セッションの作成になります。Stripe の設定が完了していることを確認してください。
- Stripe Elements を使用している場合、次のステップは Customer の作成になります。Stripe とサンプルアプリケーションの設定が完了していることを確認してください。
従量課金のその他のバージョンについては、高度なモデルのセクションをご覧ください。また、従量課金の無料トライアルやその他の機能の導入方法についてもご覧いただけます。
高度な料金モデル
定額料金とユーザー数単位の料金
2 つの別々の商品に顧客を登録することで、基本料金とユーザー数単位の追加料金の両方が含まれる料金体系をモデル化できます。一方の商品で定額の基本料金を表し、もう一方の商品で変動するユーザー数単位の料金を表します。
Togethere は、サービスに対する定額の月額料金と、50 人を超えるユーザー向けの段階制料金を請求します。
Stripe で定額料金とユーザー数単位の料金体系をモデル化する
Stripe でこの構造をモデル化するため、Togethere は基本料金の商品と料金を作成します。
次に、1 ユーザーあたり 15 USD を請求する月額料金を作成します。
以下は、3 人のユーザーを持つ顧客に対して、基本料金と、ユーザー単位の料金のサブスクリプションを設定する方法を示しています。
これにより、5 USD の基本月額料金と、3 人のユーザーそれぞれに対する 15 USD の請求で、毎月 50 USD の請求が発生します。
定額料金と使用量に基づく料金
定額料金と使用量に基づく料金を組み合わせて、請求サイクル中の使用量に対する請求に加えて、定額の月額料金を請求することもできます。
Product (商品) と Price (価格) API を使用して、Stripe で定額 + 使用量に基づく料金体系モデルを作成するには、以下のようにします。
Flat monthly fee
商品を作成します。Flat monthly fee
商品の料金を作成します。Meeting per minute usage
料金を作成します。
サブスクリプションを作成する際に、両方の料金 ID を指定します。
小数を使用する金額
小数を使用する料金は、整数ではない料金の金額を作成する必要がある場合に利用できます。たとえば、クラウドストレージの SaaS ビジネスを運営している場合、1 カ月につき、1 MB あたり 0.05 セントを請求する料金を作成できます。使用量を基準にして MB の数量に 0.05 セントを乗じて、最も近い整数のセントに端数処理します。
小数を使用するオブジェクトを作成する
小数を持つ価格を作成するには、unit_
ではなく、unit_
を指定します。unit_
を使用すると、請求通貨の補助単位を使用して金額を設定できます。たとえば、USD で unit_
と設定すると、105.5 セント (1.055 USD) と表すことができます。unit_
では、小数点以下最大 12 桁まで使用できます。
段階制料金の使用を予定している場合は、unit_
ではなく unit_
を使用します。また、unit_
の代わりに unit_
を使用して請求書アイテムを作成することもできます。
API レスポンスでは、オブジェクトが小数点付きの値で作成されると、整数 unit_
フィールドには入力されません。たとえば、unit_
で価格を作成すると、レスポンスには unit_
と unit_
が含まれます。unit_
には整数値を渡すこともでき、その場合はレスポンスの unit_
に入力されます。たとえば、unit_
で価格を作成すると、レスポンスには unit_
と unit_
が含まれます。
注
システムに unit_
値を使用するイベント処理が存在し、小数を使用する価格の使用を開始する場合は、代わりに unit_
を使用する必要があります。これは非常に重要です。unit_
では小数を整数に変換できない場合に null
が返されることになり、システムでエラーが発生する可能性があるためです。