コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
売上
プラットフォームおよびマーケットプレイス
資金管理
開発者向けリソース
概要
Billing
概要Billing API について
サブスクリプション
    概要
    サブスクリプションの仕組み
    始める
    クイックスタート
    連携の計画を立てる
    連携機能の構築
    ユースケース
    サブスクリプションについて
    請求モードを有効にする
    サブスクリプションイベントの定義
    エンタイトルメント
    サブスクリプションの請求書
    サブスクリプションのスケジュール
    継続的な料金体系モデル
    強力な顧客認証 (SCA)
    サブスクリプションを設定する
    請求回収方法の設定
    料金表を埋め込む
    請求サイクルの設定
    サブスクリプションを管理
    サブスクリプションを Stripe に移行する
    製品またはサブスクリプション数量の設定
    複数のサブスクリプション期間
    サブスクリプションの遡及適用
    トライアル期間を設定
    後払い支払いによるサブスクリプションの処理
    クーポンを適用
    サブスクリプションの修正
      料金を変更する
      サブスクリプションをキャンセル
      支払いの回収を一時停止する
      比例配分の管理
      保留中の更新の管理
    サブスクリプションの決済方法の管理
    アナリティクス
    iOS でサブスクリプションを管理する
Invoicing
従量課金
見積もり
顧客管理
Billing と他のプロダクトの連携
売上回収
オートメーション
実装内容をテストする
税金
概要
Stripe tax を使用
法規制の遵守・対応管理
レポート機能
概要
レポートの選択
レポートを設定
Reports API
複数のアカウントのレポート
収益認識
データ
概要スキーマ
カスタムレポート
Data Pipeline
データ管理
ホーム売上SubscriptionsModify subscriptions

既存のサブスクリプションの料金を変更する

価格を変更してサブスクリプションをアップグレードおよびダウングレードする方法をご紹介します。

カスタマーポータル

このガイドでは、Subscriptions API を使用した顧客のサブスクリプションの管理について詳しく説明しています。

また、カスタマーポータルを導入して、Stripe がホストするダッシュボードを顧客に提供することもできます。このダッシュボードでサブスクリプションと請求の詳細を管理できます。

顧客がサブスクリプションを変更すると、お客様は新しい選択を反映させるために、サブスクリプションアイテムを変更する必要があります。たとえば、顧客がプレミアム段階にアップグレードするか、またはベーシック段階にダウングレードする場合、サブスクリプションアイテムの基本価格を入れ替えるよう求められることがあります。これを実行するには、いくつかの方法があります。

識別子を取得する

どの方法を選択した場合でも、更新するオブジェクトの ID を指定する必要があります。list subscriptions メソッドと該当するフィルター (顧客 ID など) を使用して、更新するサブスクリプションと項目を見つけます。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl -G https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer={{CUSTOMER_ID}}

これにより、特定の顧客に関するサブスクリプションが返され、サブスクリプション ID (id) 、サブスクリプションアイテム ID (items.data.id)、サブスクリプションアイテムの価格 ID (items.data.price.id)を取得することができます。

Retrieve subscriptions response sample
{ "object": "list", "url": "/v1/subscriptions", "has_more": false, "data": [ { "id": "su_1NXPiE2eZvKYlo2COk9fohqA", "object": "subscription", "application": null, "application_fee_percent": null, "automatic_tax": { "enabled": false }, "items": { "object": "list", "data": [ { "id": "si_OK3pbS1dvdQYJP", "object": "subscription_item", "billing_thresholds": null, "created": 1690208774, "metadata": {}, "price": { "id": "price_1NOhvg2eZvKYlo2CqkpQDVRT", "object": "price" } } ] } } ] }

サブスクリプションを更新する

次のパラメーターを含むサブスクリプションを更新します。

  • item ID: 現在の料金を新しい料金に置き換えるには、サブスクリプションアイテムを指定する必要があります。指定せずに新しい料金でサブスクリプションを更新すると、新しいサブスクリプションアイテムが「追加」され、サブスクリプションで両方の料金が有効化されることになります。
  • item price: 置き換える料金の ID を指定します。
  • item quantity: サブスクリプションの料金を更新すると、数量がデフォルト値の 1 に自動的に戻されます。既存のサブスクリプションの数量が 1 以外で、その値を保持する場合は、その値を更新内容に含める必要があります。
Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions/sub_xxxxxxxxx \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "items[0][id]"={{SUB_ITEM_ID}} \ -d "items[0][price]"={{NEW_PRICE_ID}}

よくある間違い

現在の価格を新しい価格に変えるには、サブスクリプションアイテムを指定する必要があります。これを行わないと、新しい価格が「追加」され、サブスクリプションの両方の価格が有効化されることになります。

別の方法として、現在のサブスクリプションアイテムを削除し、更新された価格で新しいサブスクリプションアイテムを作成することもできます。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions/sub_xxxxxxxxx \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "items[0][id]"={{SUB_ITEM_ID}} \ -d "items[0][deleted]"=true \ -d "items[1][price]"={{NEW_PRICE_ID}}

サブスクリプションアイテムを更新する

次のパラメーターを使用してサブスクリプション項目を更新します。

  • price:置き換える料金の ID を指定します。
  • quantity:サブスクリプション価格を更新すると、数量は自動的にデフォルト値の1に戻ります。既存のサブスクリプション数量が 1 以外であり、その値を保存する場合は、更新に含める必要があります。

サブスクリプション単位で他に変更を行う必要がない場合は、このオプションを使用します。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/subscription_items/si_xxxxxxxxx \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d price={{NEW_PRICE_ID}}

請求期間

どちらの価格にも、同じ請求期間が設定されている場合 (interval と interval_count の組み合わせ)、サブスクリプションでは同じ請求日が維持されます。価格ごとの請求期間が異なる場合、新しい価格には変更日に開始される新しい期間で請求されます。たとえば、顧客を 1 つの月次サブスクリプションから別の月次サブスクリプションに切り替えても、請求日は変わりません。それに対して、顧客を月次支払いから年次サブスクリプションに切り替えると、請求日はその切り替え日に移行します。顧客を 1 つの月次サブスクリプションから別の月次サブスクリプションに切り替え、それに伴ってトライアル期間を設ける場合にも、請求日は (トライアル期間の終わりに) 移行します。

サブスクリプションのスケジュール

請求期間の終了時にサブスクリプションを変更する場合は、サブスクリプションスケジュールを使用して移行を管理することを検討してください。サブスクリプションスケジュールを使用する場合は、ベストプラクティスに従って、予期しないサブスクリプションの上書きを防ぎます。

請求書ーターを使用した従量課金

請求メーターに関連付けられた料金をサイクル途中で更新する場合については、料金モデルセクションに詳しい説明があります。請求メーターで料金を更新する際に clear_usage を渡しても効果はありません。

使用状況レコードを使用した従量課金 Legacy

レガシーの使用量記録を基盤とする従量制価格と、新しい使用量記録の価格への更新がある場合、使用量は新しい価格に移行されます。

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/subscriptions/sub_xxxxxxxxx \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "items[0][id]"={{SUB_ITEM_ID}} \ -d "items[0][price]"={{NEW_PRICE_ID}} \ -d "items[0][clear_usage]"=true

比例配分 (日割り / 秒割り計算)

サブスクリプションを変更すると、多くの場合、比例配分が発生します。顧客が料金の変更に伴う追加費用を把握できるようにするには、比例配分をプレビューします。また、比例配分を無効にすることもできます。

即時の支払い

Stripe は、サブスクリプションの請求サイクルアンカーがリセットされると、即座に決済を試みます。サブスクリプションの請求サイクルアンカーのリセット についてはこちらをご覧ください。

すぐに請求が行われたものの、要求された支払いに失敗した場合、サブスクリプションの変更リクエストが成功し、サブスクリプションが past_due に変わります。

同じ請求期間でサブスクリプションの変更があった際に顧客にただちに請求するには、proration_behavior を always_invoice に設定します。これにより、比例配分が行われ、すぐに切り替え後請求書が生成されます。この設定を保留の更新と組み合わせると、新しい請求書で決済が成功した場合にのみ、サブスクリプションが更新されます。

クレジット比例配分

クレジット比例配分は、顧客が請求期間終了前にサブスクリプションをダウングレードするか、サブスクリプションアイテムをキャンセルしたときに発行されます。Stripe は、サブスクリプションのbilling_mode の設定に応じて、クレジット比例配分の計算に 2 つ異なる方式でクレジット比例配分を計算します。詳細については、クレジット比例配分 をご覧ください。

価格と数量がゼロを処理する

顧客を金額がゼロのサブスクリプション (トライアルなど) に登録した場合、ゼロ以外の金額に変更すると、請求期間は変更日にリセットされます。

顧客をゼロ以外の金額でゼロ数量のサブスクリプションに登録した場合、数量をゼロ以外に変更しても請求書は生成されず、請求期間もリセットされません。

参照情報

  • 請求期間(サイクル)
  • キャンセルと一時停止
  • Update Subscription API
このページはお役に立ちましたか。
はいいいえ
  • お困りのことがございましたら 、サポートにお問い合わせください。
  • 早期アクセスプログラムにご参加ください。
  • 変更ログをご覧ください。
  • ご不明な点がございましたら、お問い合わせください。
  • LLM ですか?llms.txt を読んでください。
  • Powered by Markdoc