コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
売上
プラットフォームおよびマーケットプレイス
資金管理
開発者向けのツール
概要
Billing
    概要
    Billing API について
    サブスクリプション
      サブスクリプションの仕組み
      クイックスタート
      ユースケース
      実装を構築
      サブスクリプション機能
        サブスクリプションの請求書
        サブスクリプションのスケジュール
        サブスクリプションの料金体系
        継続的な料金体系モデル
        料金表を埋め込む
        サブスクリプションを始める
        数量の設定
        請求サイクルの設定
        サブスクリプションの遡及適用
        複数のアイテムに登録
        トライアル期間を設定
        クーポンを適用
          割引スクリプトのカスタマイズ
        サブスクリプションを Stripe に移行する
        クレジットの比例分配の計算方法
        サブスクリプションの決済
        サブスクリプションの決済手段
        サードパーティーによる決済処理を導入
        回収方法
        強力な顧客認証 (SCA)
        サブスクリプションを管理
        サブスクリプションの修正
        保留中の更新の管理
      アナリティクス
    Invoicing
    従量課金
    Connect と Billing
    Tax と Billing
    見積もり
    売上回収
    オートメーション
    スクリプト
    収益認識
    顧客管理
    エンタイトルメント
    実装内容をテストする
税金
レポート機能
データ
スタートアップの企業設立
ホーム売上BillingSubscriptionsSubscription features

注

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

クーポンとプロモーションコード

クーポンとプロモーションコードを使用して、サブスクリプションとサブスクリプションアイテムに割引を追加します。

ページをコピー

クーポンを引き換えて、提供しているサブスクリプションに割引を適用します。また、クーポンを使用してプロモーションコードを作成して顧客に提供することもできます。顧客はこれらのプロモーションコードを引き換え.ることで、サブスクリプションに割引を適用できます。

  • クーポン:クーポンを作成・管理し、割引 (サブスクリプション料金から差し引く割引率や割引額など) を定義します。
  • プロモーションコード:クーポンの対象となる顧客向けのコードを作成します。たとえば、FALLPROMO と SPRINGPROMO は両方とも 1 つの 25% オフクーポンに割り当てることができます。プロモーションコードは顧客に直接知らせることが可能で、決済時にコードを入力すると引き換えが完了します。

クーポンとプロモーションコードは以下に使用できます。

  • 請求書、サブスクリプション、サブスクリプション項目に 1 つ以上の割引を適用する
  • 特定の期間に 1 つ以上の割引を適用する
  • 請求書金額を率または定額で減額する

顧客が特定の日付までに引き換える必要があるクーポンや、顧客全体の引き換え回数に制限があるクーポンを定義することもできます。

1 回限りの支払いで割引を適用する場合は、1 回限りの支払いに割引を追加するをご覧ください。

クーポン

顧客または顧客の支払いに割引を適用するには、クーポンを引き換えることで割り引きます。クーポンの作成と管理については、後続のセクションをご覧ください。

クーポンを作成する

クーポンは、ダッシュボードまたは API で作成します。

Command Line
cURL
curl https://api.stripe.com/v1/coupons \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d duration=once \ -d id=free-period \ -d percent_off=100

次の表には、クーポンのパラメーターが含まれています。

設定説明
idクーポンの一意の ID。
percent_off または amount_offクーポンの期間中に小計から割り引かれる金額。
currency (amount_off が設定されている場合)差し引かれる金額の通貨の 3 文字の ISO コード。
currency_options (amount_off が設定されている場合) オプション複数の通貨で販売している場合、異なる通貨の小計を差し引く金額。多通貨のクーポンは、多通貨の価格と同じルールに従います。
durationクーポンの有効期間を示します。値には、once、forever、または repeating があります。
max_redemptions オプション顧客全体での、クーポンの引き換えが可能な最大回数。
redeem_by オプションこのクーポンを顧客に適用できる最終日。
applies_to オプションクーポンを適用できる請求書のアイテムを限定します。

クーポン作成後は名前のみ編集できます。

対象の商品を設定する

割引対象の商品を設定するには、クーポンの applies_to ハッシュに対象の商品 ID を追加します。対象商品のリストは、そのクーポンに関連付けられたプロモーションコードにも適用されます。

特定の商品に適用されるクーポンを設定し、サブスクリプションに該当する商品が含まれない場合には、そのサブスクリプションにクーポン追加しても割引は適用されません。

サブスクリプションを変更すると、比例配分を行うときに既存の割引が適用されます。生成された請求書で比例配分のラインアイテムに対してさらに割引を適用することはできません。

サブスクリプションにクーポンを適用する

クーポンを作成したら、サブスクリプションにクーポンを適用して割引を作成します。サブスクリプションを作成する際、または顧客の既存のサブスクリプションを更新する際にクーポンを適用できます。

Command Line
cURL
curl https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}
\ -d "items[0][price]"=
{{PRICE_ID}}
\ -d "discounts[0][coupon]"=free-period

クーポンの適用直後の支払いが必要ない場合には、顧客に支払い方法が保存されていなくても、サブスクリプションを作成できます。

Checkout にクーポンを適用する

Checkout セッションでサブスクリプションにクーポンを適用する場合、API の discounts パラメーターを設定します。適用された割引でセッションを作成するには、discounts 配列の coupon パラメーターにクーポン ID を渡します。

Command Line
curl
curl https://api.stripe.com/v1/checkout/sessions \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "payment_method_types[]"=card \ -d "line_items[][price]"=
{{PRICE_ID}}
\ -d "line_items[][quantity]"=1 \ -d mode=subscription \ -d "discounts[][coupon]"="{{COUPON_ID}}" \ -d success_url="https://example.com/success" \ -d cancel_url="https://example.com/cancel"

クーポンを削除する

クーポンは、ダッシュボードまたは API で削除できます。

クーポンを削除すると、その後のサブスクリプションや請求書に適用できなくなりますが、そのクーポンがすでに設定されているサブスクリプションや請求書から割引が削除されることはありません。

Command Line
cURL
curl -X DELETE https://api.stripe.com/v1/coupons/free-period \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

クーポンの期間

クーポンの期間は、引き換え済みの割引の有効期間を示します。たとえば、期間が 4 カ月間の 50% オフのクーポンは、クーポンが初めて適用された日から 4 カ月の期間、すべての請求書に適用されます。クーポンの有効期限の 4 カ月間内に顧客がこのクーポンを年次サブスクリプションに適用すると、50% の割引は年次サブスクリプション全体に適用されます。月次のサブスクリプションの場合には、クーポンは最初の 4 カ月に適用されます。週次のサブスクリプションでは、4 カ月のクーポンは最初の 4 カ月の各請求書に適用されます。

API でクーポンの期間を設定する場合には、repeating 値を使用する際に、クーポンを繰り返し適用できる月数として duration_in_months を指定する必要があります。期間を once に設定した場合は、そのクーポンは最初の請求書にのみ適用されます。期間を forever に設定した場合は、そのクーポンはすべての請求書に無期限に適用されます。

引き換え回数制限

引き換え回数制限は、顧客全体についてクーポンに適用されます。たとえば、クーポンの引き換え回数を 50 回に制限した場合、そのクーポンは顧客に 50 回のみ適用できます。これは、50 人の異なる顧客に適用することも、1 人の顧客に 50 回適用することも、または最大回数の 50 回に達するまで複数の顧客に複数回ずつ適用することもできます。

顧客がクーポンを使用した場合に永続的に継続するように設定し、しかしそのクーポンに有効期限がある場合には、そのクーポンを受け取った顧客は永続的にその割引を受けることができます。新しい顧客は、有効期限後にクーポンを適用することはできません。

プロモーションコード

プロモーションコードは、クーポンに作成される顧客表示用のコードです。たとえば、FALLPROMO や SPRINGPROMO は両方とも 1 つの 25% オフクーポンに関連付けることができます。プロモーションコードは顧客に直接知らせることができ、顧客は決済時に使用できます。

カスタマーポータルを実装して、プロモーションコードを有効にした場合、顧客はポータル内で既存のサブスクリプションのアップグレード時またはダウングレード時に割引を適用できます。

注意

サブスクリプションでは、プロモーションコードと価格の更新が別々に適用されるため、予期しない更新が発生する場合があります。たとえば、支払いの失敗によって料金のアップグレードが失敗しても、料金のアップグレードに含まれたプロモーションコードが成功することがあります。

対象となる顧客、初回注文、最小注文値、有効期限、および引き換え回数制限を指定して、プロモーションコードの管理と制限をカスタマイズします。

制限

プロモーションコードには以下のような制限があります。

  • 以下の件数に制限があるプロモーションコードは適用できません。
    • Subscription Item オブジェクト
    • Invoice Item オブジェクト
    • 更新を行う際の Subscription オブジェクト
    • Subscription Schedule オブジェクトの将来のフェーズ

プロモーションコードを作成する

この code では大文字小文字が区別され、すべての顧客向けの有効なプロモーションコード内で一意です。以下に例を挙げます。

  • 同じ code を使用して対象の顧客が制限された複数のプロモーションコードを作成できますが、その code を再利用して、あらゆる顧客が引き換えできるプロモーションコードを作成することはできません。
  • あらゆる顧客が利用できるプロモーションコードを作成した場合、同じ code で別の有効なプロモーションコードを作成することはできません。
  • code: NEWUSER でプロモーションコードを作成し、active: false を渡してそれを無効化すると code: NEWUSER で新しいプロモーションコードを作成できます。

プロモーションコードを作成するには、既存の coupon と制限 (特定の customer への制限など) を指定します。顧客に提供したい特定のコード (FALL25OFF など) がある場合には、code を設定します。このフィールドを空白にすると、Stripe によってランダムな code が生成されます。

Command Line
cURL
curl https://api.stripe.com/v1/promotion_codes \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d coupon=ZQO00CcH \ -d code=ALICE20 \ -d customer=
{{CUSTOMER_ID}}

プロモーションコードを作成する際は、関連付けられたクーポンの設定が継承されます。

プロモーションコードの設定

プロモーションコードを設定することで、以下をカスタマイズできます。

  • プロモーションコードを使用できる顧客
  • 顧客がそのプロモーションコードを引き換えに使用できる回数
  • プロモーションコードの有効期限
  • プロモーションコードを適用できる最小金額を設定する

特定の顧客に限定する

プロモーションコードを特定の顧客に限定するには、プロモーションコードを作成する際に customer を指定します。顧客を指定しない場合、すべての顧客がそのプロモーションコードを引き換えることができます。

初回注文に限定する

restrictions 属性の first_time_transaction パラメーターを使用して、プロモーションコードを初回の顧客のみに制限できます。customer が定義されていない場合や定義された customer に以前の支払いや無効化されてない請求書がない場合は、初回の取引とみなされます。

最小金額を設定する

プロモーションコードでは、minimum_amount プロパティーおよび minimum_amount_currency プロパティーを設定して、割引対象の最低取引額を設定できます。プロモーションコードの制限は引き換え時に確認されるため、最低取引額はサブスクリプションの初回の支払いにのみ適用されます。複数の通貨で販売している場合は、currency_options プロパティーを設定して各通貨の最低取引額を設定します。

有効期限をカスタマイズする

expires_at を使用してプロモーションコードの有効期限日を設定します。そのベースとなるクーポンにすでに redeem_by が設定されている場合は、プロモーションコードの有効期限をその期日よりも後にすることはできません。promotion_code[expires_at] が指定されていない場合は、クーポンの redeem_by の値が自動的に expires_at となります。

  • たとえば、クーポンを 1 年間サポートするプランがあるとします。ただし、引き換え期間を顧客がクーポンを受け取ってから 1 週間以内にする場合は、coupon[redeem_by] を現在から 1 年後にし、各 promotion_code[expires_at] を作成後 1 週間に設定します。

引き換え回数を制限する

max_redemptions を使用して引き換え回数を制限します。これはクーポンと同様に機能します。ベースとなるクーポンにすでに max_redemptions が設定されている場合、プロモーションコードの max_redemptions は、そのクーポンの引き換え回数の上限を超えることはできません。

プロモーションコードを無効にする

active パラメータを使用してプロモーションコードが現在引き換え可能かどうかを設定します。ただし、プロモーションのべ―スとなるクーポンが無効になると、そのプロモーションコードはすべて永続的に無効になります。同様に、プロモーションコードが、max_redemptions や expires_at に達した場合も、永続的に無効になります。それらのプロモーションコードを再度有効にすることはできません。

サブスクリプションにプロモーションコードを適用する

プロモーションコードを作成したら、そのプロモーションコードをサブスクリプションに適用して割引を引き換えます。プロモーションコードは次の 2 つの方法で適用できます。

  • サブスクリプションを作成する場合
  • 顧客の既存のサブスクリプションを更新する場合
  1. プロモーションコードをリストし、顧客からのコードをフィルターとしてプロモーションコード ID の取得 に使用します。
  2. プロモーションコードを適用するには、次の API コールでプロモーションコード ID を使用します。
Command Line
cURL
curl https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}
\ -d "items[0][price]"=
{{PRICE_ID}}
\ -d "discounts[0][promotion_code]"=
{{PROMOTION_CODE_ID}}

Checkout にプロモーションコードを追加する

Checkout セッションで allow_promotion_codes パラメーターを設定することにより、API でプロモーションコードを有効にします。Checkout セッションで allow_promotion_codes が有効になっていると、顧客が利用するプロモーションコードの入力ボックスが Checkout に表示されます。

決済フロー時のプロモーションコードフィールド

決済フロー時のプロモーションコードフィールド

併用可能なクーポンとプロモーションコード

顧客の支払いのリストには、複数のクーポン、プロモーションコード、または引き換え済みの割引を追加できます。これは、サブスクリプションを作成する場合、または顧客の既存のサブスクリプションを更新する場合に実行できます。

Stripe はサブスクリプションとサブスクリプションアイテムの両方で、複数の割引をサポートしています。

併用可能な割引を含むサブスクリプションを作成すると、各割引がサブスクリプションのすべてのアイテムに適用されます。割引の順序は、amount_off と percent_off の両方を使用する場合に重要になります。たとえば、次の累積割引は異なる方法で適用されます。

  • 20% オフ その後 $5 オフ
  • $5 オフ その後 20% オフ
Command Line
cURL
curl https://api.stripe.com/v1/subscriptions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}
\ -d "items[0][price]"=
{{PRICE_ID}}
\ -d "items[0][discounts][0][coupon]"=item-coupon \ -d "items[0][discounts][1][promotion_code]"=item-promo \ -d "discounts[0][coupon]"=sub-coupon \ -d "discounts[1][promotion_code]"=sub-promo

制限

複数の割引の利用には、いくつかの制限があります。

  • discounts パラメーターには最大 20 件の項目を設定できます。
  • discounts の各エントリーは一意である必要があります。
  • 同じクーポンから作成されたクーポンとプロモーションコードを渡すことはできません。
  • 同じクーポンから生成されたクーポンと割引を渡すことはできません。
  • 引き換え済みの割引は、更新する顧客またはサブスクリプションにすでに関連付けられている必要があります。

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

既存の割引を変更しない場合、discounts を設定する必要はありません。

discounts を更新する際は、サブスクリプションで保持する、以前に設定した coupon、promotion_code、または discount を渡す必要があります。

discounts = "" を渡して、サブスクリプションからすべての割引をクリアします。サブスクリプションに割引がない場合、顧客レベルの割引があれば、その割引が請求書に適用されます。

新しい discounts パラメーターを使用して、すでにサブスクリプションに複数の割引を設定している場合、非推奨の coupon または promotion_code パラメーターを使用してサブスクリプションを更新することはできません。同様に、前のフェーズで複数の割引を設定した場合、非推奨の coupon または promotion_code パラメーターでスケジュールのフェーズを更新することはできません。

discounts の更新によって、比例配分 (日割り / 秒割り計算) が発生したり、請求書が生成されることはありません。新しい割引は、サブスクリプションで次回請求書が作成されたときに適用されます。

別の割引方法

クーポンはサブスクリプションに割引を適用する一般的な方法ですが、以下のようにすることもできます。

  • 顧客にマイナスの顧客残高を追加します。
  • マイナスの請求書アイテムを追加します。
  • 商品の通常価格よりも安価な、予備価格を追加します。

上記の方法のマイナスの請求書アイテムは、作成された割引、その時点と理由についてより詳細な情報を提供します。

参照情報

  • サブスクリプションの変更
  • 請求書の処理
  • Coupon API
  • Promotion Code API
このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc