コンテンツにスキップ
アカウント作成/サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成サインイン
導入方法
決済管理
売上管理
プラットフォームとマーケットプレイス
資金管理
開発者向けリソース
API & SDKヘルプ
概要
Billing
概要Billing API について
サブスクリプション
Invoicing
従量課金
高度な従量課金型請求
    概要
    導入方法
    アドバンス従量課金の仕組み
見積もり
顧客管理
Billing と他のプロダクトの連携
売上回収
オートメーション
実装内容をテストする
税金
概要
Stripe tax を使用
法規制の遵守・対応管理
レポート機能
概要
レポートの選択
レポートを設定
複数のアカウントのレポート
Reports API
収益認識
データ
概要
ビジネスデータのクエリ
Sigma
Data Pipeline
外部データをインポート
アメリカ
日本語
ホーム売上管理Advanced usage-based billing

メモ

このページはまだ日本語ではご利用いただけません。より多くの言語で文書が閲覧できるように現在取り組んでいます。準備が整い次第、翻訳版を提供いたしますので、もう少しお待ちください。

料金プランによる高度な従量課金を導入非公開プレビュー

使用状況と継続課金に基づいて顧客に請求します。

さまざまな料金コンポーネントを 1 つの料金プランにグループ化できます。例えば、 従量課金のレートカード、継続支払いのライセンス手数料、継続クレジット付与の割り当てのサービスアクションが含まれます。 顧客が料金プランに登録すると、すべての継続コンポーネントが自動的に登録され、設定した頻度に従って請求されます。

サポートされる価格モデルは以下のとおりです:

  • 従量課金
  • トップアップによるリアルタイムのクレジットバーンダウンモデル (初期金額を使用量に応じて段階的に消費)
  • 定額手数料と超過料金

プライベートプレビュー

現在、料金プランは プライベートプレビュー 段階にあり、すべての Stripe ユーザーに一般提供される前に、機能と導入パスが変更される可能性があります。アクセスをリクエストするには、こちらからアクセスしてください からお問い合わせください。

はじめに

このガイドの ガイド付き API (ブループリント) バージョンをダッシュボードで使用することもできます。

料金プランは /v2 API エンドポイントを使用しています。/v2 および /v1 ネームスペースの詳細をご確認ください。

サンドボックスを使用して料金プランの導入をテストします。/v2 API でテスト環境を使用することはできません。

料金プランを作成

Stripe ダッシュボードまたは API を使用して、料金体系モデルの関連するすべての請求コンポーネントを含む料金プランを作成します。

料金プランごとに、以下を設定できます。

  • 通貨: 料金プランのすべてのコンポーネントの通貨を指定します。
  • 価格に税金を含める: 価格に税金を含めるか (内税)、請求書の小計に税金を含めるか (外税) するかを指定します。詳細は Billing の内税と外税をご覧ください。
  • メタデータ: オプションで料金プランに独自のメタデータを追加します。

通貨と税金のパラメーターを設定したら、プランの関連コンポーネントを定義します。どのコンポーネントを含めるかは、料金体系モデルによって異なります。このガイドでは、3 つのコンポーネント ((レートカード、ライセンス手数料、サービスアクション) をすべて使用しますが、使用するコンポーネントは料金体系モデルによって異なります。たとえば、従量課金制料金体系とチャージによるリアルタイムクレジットバーンダウンでは、レートカードとサービスアクションのみが必要です。定額手数料と超過料金では、レートカードとライセンス手数料、継続クレジットにはレートカードとライセンス手数料が必要です。また、継続クレジットと超過料金にはレートカードとサービスアクションが必要です。

料金プランを作成する

  1. 料金プランページで、料金プランを作成 をクリックします。
  2. 料金プランエディタで以下を実行します。
    • 表示名、通貨、および税金の動作を指定します。
    • (オプション) Advanced settings (詳細設定) で、説明、固有の検索キー、メタデータを指定します。
  3. 続行をクリックします。

レートカードを追加

  1. 料金プランエディターで、 と 料金表 (Rate card) をクリックします。
  2. レートカードエディタで以下を実行します。
    • 表示名を指定します。
    • サービス期間を指定します。
    • (オプション) Advanced settings (詳細設定) で、検索キーとメタデータを指定します。
  3. 続行をクリックします。

レートカードにレートを関連付ける

  1. レートエディターで以下を実行します。
    • 従量制項目の表示名を指定します (Hypernian tokens など)。
    • 既存の メーター を選択するか、 をクリックして新しいメーターを作成します。
    • 価格タイプ: 固定レート、従量制、または段階制を選択します。たとえば、Hypernian は固定レートを使用します。
      • Sell as (販売方法) で、個人ユニットまたはユニットのパッケージグループを選択します。たとえば、AI 企業がトークンを 100 ユニットのパッケージとして、パッケージあたり 0.04 USD で販売する場合があります。
      • パッケージの場合は、 パッケージあたりのユニット数 を入力します。
      • パッケージの端数 を切り上げるか切り捨てるかを選択します。切り上げた場合、110 ユニットを使用するユーザーには 0.08 USD が請求されます。
      • パッケージ価格を入力します。
    • (オプション) 詳細設定 で、 商品の税コード (税コードの詳細)、 ユニットラベル 、 ルックアップキー 、 メタデータ の指定などの、従量課金アイテムのオプション設定をしてください。料金にメタデータを追加することもできます。
  2. 完了をクリックします。
  3. (オプション) 料金の追加 をクリックして、料金表 (課金ルールセット) に料金を追加します。

ライセンス料金を追加

  1. 料金プランエディターで、 と ライセンス料 をクリックします。
  2. ライセンス手数料エディターで以下を実行します。
    • ライセンス項目の表示名を指定します。
    • サービス期間を指定します。
    • 価格タイプ: Fixed rate (固定レート)、Volume(使用量)、またはGraduated(段階的)を選択します。たとえば、ユニットあたり 50.00 USD です。
    • (オプション) 詳細設定 で、 商品の税コード (税コードの詳細)、 ユニットラベル 、 ルックアップキー 、 メタデータ の指定などの、ライセンスアイテムのオプション設定をしてください。料金にメタデータを追加することもできます。
  3. 完了をクリックします。

サービスアクションを追加する

  1. 料金プランエディターで、 と クレジット付与 をクリックします。
  2. 継続クレジット付与エディターで以下を実行します。
    • クレジット付与の表示名を指定します。
    • サービス期間を指定します。
    • クレジット額を指定します。
    • (オプション) 詳細設定 で、 アプリケーション や ルックアップキー の指定など、定期的なクレジット付与を設定してください。
  3. 完了をクリックします。

料金プランの設定が完了したら 料金プランの作成 をクリックします。

顧客を料金プランに登録する

料金プランを設定後、顧客をサブスクライブできます。Stripe がホストするページまたは組み込みコンポーネントを決済 UI として、Checkout セッション API を使用して、サブスクリプションを作成できます (Checkout セッションでは顧客も作成されます)。API を使用して、料金プランのサブスクリプションを直接作成することもできます。ダイレクト API 方式を使用する場合は、顧客、回収設定、請求ケイデンス、請求インテント を作成して、料金プランのサブスクリプションを作成する必要があります。

Checkout Sessions API を使用して、顧客の決済ページを作成します。顧客が 登録 をクリックすると、Checkout Session は Customer オブジェクト (セッションに顧客 ID を指定しなかった場合) と料金プランサブスクリプションを作成します。checkout_items に複数のアイテムがある場合、各アイテムに料金プランサブスクリプションが作成されます。

ここでは、決済における料金プラン全体の例をご紹介します。

料金プラン例

Stripe Checkout に表示される料金プラン

非公開ベータ期間中の Checkout セッションの制限

プライベートプレビュー中:

  • 最大 5 つの checkout_itemsをまで指定することができます。
  • カード、Link、Apple Pay、Google Pay のみ受け付けられます。
  • 請求サイクルの起点を指定して渡すことはできません。
  • 税率は適用できず、代わりに自動税額計算のみ使用できます。
  • 割引は使用できません。
  • 顧客のサブスクリプションを 1 つに制限することはできません。
  • Connect は使用できません。
  • オプション項目やクロスセルは追加できません。

advanced-ubb-private-preview@stripe.com までご連絡いただければ、早期にアクセスし、製品に関するフィードバックやリクエストを共有することができます。

料金プランで Checkout セッションを作成するには、checkout_items 配列にtype を pricing_plan_subscription_item に設定し、pricing_plan_subscription_item 設定を含むオブジェクトを含めます。ではなく checkout_items を line_itemsの代わりに使用する場合は、mode を指定する必要はありません。

Command Line
cURL
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Version: 2025-09-30.preview;checkout_product_catalog_preview=v1" \ -d customer={{CUSTOMER_ID}} \ -d "checkout_items[0][type]"=pricing_plan_subscription_item \ -d "checkout_items[0][pricing_plan_subscription_item][pricing_plan]"={{PRICING_PLAN_ID}} \ -d success_url={{SUCCESS_URL}}

料金プランにライセンス料が含まれている場合は、ライセンス料の数量を含める必要があります。

ライセンス手数料コンポーネント ID を取得します。

Command Line
cURL
No results
curl https://api.stripe.com/v2/billing/pricing_plans/{{PRICING_PLAN_ID}}/components \ -H "Authorization: Bearer
sk_test_BQokikJOvBiI2HlWgH4olfQ2
"
\ -H "Stripe-Version: 2025-09-30.preview"

ライセンス手数料コンポーネント ID を使用して Checkout Session を作成します。

Command Line
cURL
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Version: 2025-09-30.preview;checkout_product_catalog_preview=v1" \ -d customer={{CUSTOMER_ID}} \ -d "checkout_items[0][type]"=pricing_plan_subscription_item \ -d "checkout_items[0][pricing_plan_subscription_item][pricing_plan]"={{PRICING_PLAN_ID}} \ -d "checkout_items[0][pricing_plan_subscription_item][component_configurations][{{LICENSE_COMPONENT_ID}}][type]"=license_fee_component \ -d "checkout_items[0][pricing_plan_subscription_item][component_configurations][{{LICENSE_COMPONENT_ID}}][license_fee_component][quantity]"=1

このページには料金プランの詳細が表示され、顧客の支払い情報が収集されます。顧客がセッションを完了すると、料金プランのサブスクリプションが作成され、顧客は success_url に指定した URL にリダイレクトされます。Checkout でのリダイレクト動作のカスタマイズの詳細をご確認ください。

顧客の使用状況を記録する

顧客をレートカードで構成される料金プランに登録した後は、従量制イベントを送信し、顧客のサービス利用状況を記録します。

  1. 料金プランのサブスクリプションタブに移動します。
  2. 使用量を記録するサブスクリプションをクリックします。
  3. 表示を選択して基本料金プランコンポーネントを表示し、使用状況を追加するレートカードに移動します。
  4. 使用量を記録する項目の行にあるオーバーフローメニュー () をクリックし、メーターの詳細を表示をクリックします。
  5. メーターの詳細ページで、+ 使用量を追加をクリックし、使用量を手動で入力を選択します。
  6. 使用量の追加ダイアログで、次の操作を行います。
    • 顧客を選択します。
    • 使用量の値を入力します。
    • タイムスタンプの日付を選択します。
  7. 送信をクリックします。

請求書プレビューを作成する

プレビュー請求書を作成して、顧客の請求書のプレビューを確認します。プレビューには、さまざまな料金プランのコンポーネントに対応する該当の明細項目が含まれます。

  1. 料金プランのサブスクリプションタブに移動します。
  2. 請求書をプレビューするサブスクリプションをクリックします。
  3. 下にスクロールして次回の請求書セクションを確認します。プレビュー請求書には、指定された日に顧客に請求されるサブスクリプション金額が表示され、対応するメーター項目、ライセンス項目、クレジットが反映されています。

サービスイベントを監視する

料金プランサブスクリプションは、サービスと回収の状態が変わるたびにイベント通知を送信します。

これらのイベントをリッスンし、それらを使用してビジネスロジックを構築します。

v2.billing.pricing_plan_subscription.servicing_activatedユーザーはサブスクリプションを支払い、サービスを有効にします。
v2.billing.pricing_plan_subscription.servicing_pausedユーザーはサブスクリプションを一時停止します。
v2.billing.pricing_plan_subscription.servicing_canceledユーザーがサービスをキャンセルしました。
v2.billing.pricing_plan_subscription.collection_currentサブスクリプションの回収が進行中です。
v2.billing.pricing_plan_subscription.collection_awaiting_customer_actionこの請求は、顧客の対応待ちの状態です。
v2.billing.pricing_plan_subscription.collection_paused回収は一時停止されています。
v2.billing.rate_card_subscription.collection_past_due回収の期日経過。
v2.billing.rate_card_subscription.collection_unpaid回収は未払いと見なされます。

これらの v2 イベントを処理するには、Event Destination を設定し、Webhook エンドポイントを指定します。次のいずれかを実行できます。

  • Workbench で Event Destination を作成します。
  • Stripe API を使用してイベント送信先を作成します。

送信先を作成したら、次のイベントを処理するように Webhook エンドポイントを設定します。

server.rb
require 'stripe' post '/v2_webhook_endpoint' do payload = request.body.read sig_header = request.env['HTTP_STRIPE_SIGNATURE'] event = nil begin event = Stripe::Webhook.construct_event( payload, sig_header, endpoint_secret ) rescue JSON::ParserError => e status 400 return rescue Stripe::SignatureVerificationError => e status 400 return end client = Stripe::StripeClient(
"sk_test_BQokikJOvBiI2HlWgH4olfQ2"
) case event.type when 'v2.billing.pricing_plan_subscription.servicing_activated' # The customer clicked Pay on Stripe Checkout, which activates the service. subscription_id = event.related_object.id subscription = client.v2.billing.pricing_plan_subscriptions .retrieve(subscription_id) # Look up your user in the database using the metadata passed into # Checkout Session create user_id = subscription.metadata["my_user_id"] user = User.find_by_id(user_id) # Fill in your logic here: mark_subscription_active(user, subscription) when 'v2.billing.pricing_plan_subscription.servicing_paused' # The customer paused the subscription. subscription_id = event.related_object.id subscription = client.v2.billing.pricing_plan_subscriptions .retrieve(subscription_id) # Look up your user in the database using the metadata passed into # Checkout Session create user_id = subscription.metadata["my_user_id"] user = User.find_by_id(user_id) # Fill in your logic here: mark_subscription_paused(user, subscription) when 'v2.billing.pricing_plan_subscription.servicing_canceled' # The customer canceled the subscription. subscription_id = event.related_object.id subscription = client.v2.billing.pricing_plan_subscriptions .retrieve(subscription_id) # Look up your user in the database using the metadata passed into # Checkout Session create user_id = subscription.metadata["my_user_id"] user = User.find_by_id(user_id) # Fill in your logic here: mark_subscription_canceled(user, subscription) end status 200 end

組み込みをテストする

以下の手順に従って、実装をテストします。

  • サンドボックスを作成するを参照してください。
  • サンドボックスに、テスト用の料金プランと少なくとも 1 つの基礎となる料金構成要素を作成してください。
  • テストカードを使用して、成功した支払いと失敗した支払いをシミュレートします。
  • 使用状況をシミュレーションするテストメーターイベントを作成します。
  • テストクロックを使用して請求をシミュレートします。

過去の時点にテストクロックを作成しない

料金プランのサブスクリプション用にテストクロックを作成する場合は、必ず未来の日付でクロックを作成してください。過去の日付でクロックを作成すると、請求金額が正しく表示されません。

UNIX タイムスタンプでテストクロックを作成します。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/test_helpers/test_clocks \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d frozen_time=1577836800

テストクロックの ID をメモします。次に、クロックを使用してテスト顧客を作成します。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ --data-urlencode email="test@example.com" \ -d test_clock={{TEST_CLOCK_ID}}

請求プロファイルの作成

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl -X POST https://api.stripe.com/v2/billing/profiles \ -H "Authorization: Bearer
sk_test_BQokikJOvBiI2HlWgH4olfQ2
"
\ -H "Stripe-Version: {{STRIPE_API_VERSION}}" \ --json '{ "customer": "{{CUSTOMER_ID}}" }'

請求期間を作成して、顧客に請求書を発行するタイミングを定義します。ID を保存します。

Command Line
cURL
No results
curl -X POST https://api.stripe.com/v2/billing/cadences \ -H "Authorization: Bearer
sk_test_BQokikJOvBiI2HlWgH4olfQ2
"
\ -H "Stripe-Version: {{STRIPE_API_VERSION}}" \ --json '{ "payer": { "billing_profile": "{{BILLING_PROFILE_ID}}" }, "billing_cycle": { "type": "month", "interval_count": 3 }, "settings": { "collection": { "id": "{{COLLECTION_SETTINGS_ID}}" } } }'

テスト顧客の料金プランサブスクリプションを作成します。

請求インテント を作成し、料金プランサブスクリプションのステータスを追跡します。まず、請求インテントのドラフトを作成します。インテントの ID を保存します。

Command Line
cURL
No results
curl -X POST https://api.stripe.com/v2/billing/intents \ -H "Authorization: Bearer
sk_test_BQokikJOvBiI2HlWgH4olfQ2
"
\ -H "Stripe-Version: {{STRIPE_API_VERSION}}" \ --json '{ "currency": "usd", "cadence": "{{CADENCE_ID}}", "actions": { "type": "subscribe", "subscribe": { "type": "pricing_plan_subscription_details", "pricing_plan_subscription_details": { "pricing_plan": "{{PRICING_PLAN_ID}}", "pricing_plan_version": "{{PRICING_PLAN_VERSION}}" } } } }'

次に、請求インテントを予約します。

Command Line
cURL
No results
curl -X POST https://api.stripe.com/v2/billing/intents/{{BILLING_INTENT_ID}}/reserve \ -H "Authorization: Bearer
sk_test_BQokikJOvBiI2HlWgH4olfQ2
"
\ -H "Stripe-Version: {{STRIPE_API_VERSION}}"

次に、その請求インテントを確定して料金プランのサブスクリプションを有効にし、プランと請求頻度に従って顧客に請求を行います(コレクション設定を automatic に設定している場合、インテントを確定するには成功した PaymentIntent が必要です。コレクション設定を send_invoice に設定している場合は、Payment Intent を渡す必要はありません)。

Command Line
cURL
No results
curl https://api.stripe.com/payment_intent \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount={{AMOUNT}} \ -d currency={{CURRENCY}} \ -d customer={{CUSTOMER_ID}} \ -d payment_method={{PM_ID}} \ -d return_url="example.com" \ -d confirm=true

テスト用に、payment_method を「pm_card_visa」に設定してみましょう。

Command Line
cURL
No results
curl -X POST https://api.stripe.com/v2/billing/intents/{{BILLING_INTENT_ID}}/commit \ -H "Authorization: Bearer
sk_test_BQokikJOvBiI2HlWgH4olfQ2
"
\ -H "Stripe-Version: {{STRIPE_API_VERSION}}" \ --json '{ "payment_intent": "{{PAYMENT_INTENT_ID}}" }'

サブスクリプションによって生成された請求書を支払います。請求書の支払い後、使用量をシミュレートしてクロックを進めると、翌月の請求がトリガーされます。Checkout を使用している場合は、返された Checkout セッションの url をブラウザーで開き、テストカードを使用して支払いを完了します。

テスト用の使用量を記録します。

Command Line
cURL
No results
curl -X POST https://api.stripe.com/v2/billing/meter_events \ -H "Authorization: Bearer
sk_test_BQokikJOvBiI2HlWgH4olfQ2
"
\ -H "Stripe-Version: {{STRIPE_API_VERSION}}" \ --json '{ "event_name": "hypernian_tokens", "payload": { "stripe_customer_id": "{{CUSTOMER_ID}}", "value": 100 } }'

テストクロックの凍結時間を 1 か月進めます。この例では、テストクロックの現在のタイムスタンプは 1577836800 です。月を追加するには、30 * 24 * 60 * 60、または 2592000 秒を追加します。今から 1 か月後の新しいタイムスタンプは 1580428800 です。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/test_helpers/test_clocks/{{TEST_CLOCK_ID}}/advance \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d frozen_time=1580428800

オプション税金を徴収する

税金を自動的に徴収するには、checkout_items を含む Checkout セッションを作成し、automatic_tax.enabled を true に設定します。

Command Line
cURL
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Version: 2025-09-30.preview;checkout_product_catalog_preview=v1" \ -d customer={{CUSTOMER_ID}} \ -d "checkout_items[0][type]"=pricing_plan_subscription_item \ -d "checkout_items[0][pricing_plan_subscription_item][pricing_plan]"={{PRICING_PLAN_ID}} \ -d success_url={{SUCCESS_URL}}

このページには料金プランの詳細が表示され、顧客の支払い情報が収集されます。顧客はセッションを完了すると、success_urlに指定された URL にリダイレクトされます。

オプションカスタマーポータルを設定します

カスタマーポータル を設定することで、顧客にセルフサービス機能を提供できます。

現在、カスタマーポータルを料金プランのサブスクリプションで使用することは読み取り専用です。顧客は、料金プランの請求サブスクリプションのキャンセル、プランの変更、決済手段の更新を行うことはできません。現時点では、ダッシュボードからのみカスタマーポータルセッションを設定できます。

料金プランのサブスクリプションでカスタマーポータルを使用すると、顧客は以下を確認できます。

  • サブスクリプションプラン (提供しているハイブリッドプランの詳細を含む)。
  • 月末に請求される金額を把握するのに役立つ次回の請求書。
  • 対象のサブスクリプションに登録されている決済手段。
  • 請求された過去の請求書。
  • 請求情報。
このページはお役に立ちましたか。
はいいいえ
  • お困りのことがございましたら 、サポートにお問い合わせください。
  • 変更ログをご覧ください。
  • ご不明な点がございましたら、お問い合わせください。
  • LLM ですか?llms.txt を読んでください。
  • Powered by Markdoc