メインコンテンツへスキップ
Discount codes overview cover
割引コードを使用すると、ターゲットを絞ったプロモーションやインセンティブを実施できます。パーセンテージまたは固定金額の割引を作成し、制限や有効期限を設定し、製品に制限をかけ、チェックアウト時にシームレスに適用できます。

Checkout Sessions

ホストされたチェックアウト中に discount_code と UI コントロールを使用してコードを適用します。

Validate Discount

割引がその ID で有効かどうかを確認します。

Get Discount by Code

コード名(例: “SAVE20”)を使用して割引を検索し、検証します。

Create Discount (API)

プログラムで新しい割引コードを作成します。

List & Update Discounts

既存の割引を閲覧および管理し、必要に応じて更新または削除します。

Plan Change Discounts

サブスクリプションプランをアップグレードまたはダウングレードする際に、割引コードを適用します。

割引コードとは?

割引コードは、チェックアウト時に注文合計を減少させるプロモーショントークンです。次のような場面で理想的です:
  • 季節キャンペーン: ブラックフライデー、製品発売、または周年記念
  • 獲得オファー: 初回購入インセンティブや紹介報酬
  • 保持: 既存顧客に対する再獲得またはロイヤルティ報酬
  • B2Bディール: プライベートコードを通じた契約または交渉による価格設定

主な利点

  • 柔軟な割引: 割合または一定額の割引
  • ターゲット制御: 製品およびサブスクリプションサイクルで制限
  • キャンペーンガバナンス: 有効期限と使用制限
  • シームレスなチェックアウト: UIフィールドとAPIサポートによるチェックアウトセッション

割引コードの作成

Dodo Paymentsダッシュボードで割引コードを作成し、ホストされたチェックアウトまたはAPI経由で適用します。

ダッシュボード設定

  • 割引名 (必須): 内部およびダッシュボード表示名
  • コード (必須): チェックアウト時に顧客が入力する文字列
  • タイプ & 金額 (必須): 割合または一定額の値を設定するか、提供されるボタンを使用してランダムコードを生成
  • 有効期限 (オプション): コードが無効になる日付
  • 使用制限 (オプション): すべての顧客にわたる最大の引き換え数
  • 製品制限 (オプション): 選択された製品に適用を制限
  • サブスクリプションサイクル制限 (オプション): 割引が適用される請求サイクル数
サブスクリプションのイントロダクトリ価格にサイクル制限を使用します(例、“3か月で50%オフ”)。

チェックアウトの体験

  1. 購入者がチェックアウトフィールドにコードを入力します。
  2. 適用可能な割引が適用され、合計金額が即座に更新されます。
チェックアウトセッションで、コードを事前適用するためにdiscount_codeを渡し、入力フィールドを表示するためにfeature_flags.allow_discount_codeを設定します。

API管理

タイプと金額を用いてプログラム的に割引コードを作成します。

API Reference

割引作成APIを表示します。
すべての割引を一覧化するか、管理および監査用に詳細を取得します。

API Reference

一覧表示および取得APIを閲覧します。
内部IDの代わりに人間が読みやすいコード(例、「SAVE20」)を使用して割引を検索します。

API Reference

コード名で割引を取得します。
金額、有効期限、または制限などの割引設定を修正します。

API Reference

割引詳細の更新方法を学びます。
適用する前に割引が有効で適用可能であるかどうかを確認します。

API Reference

割引使用を検証します。
不要になった割引を無効化または削除します。

API Reference

割引を削除します。

一般的な使用ケース

  • イントロオファー: 新製品の期間限定ローンチプロモーション
  • 一括またはB2B: 選ばれた製品セットに対する契約割引
  • 保持戦略: 解約防止ワークフローでの再獲得コード
  • 季節キャンペーン: 休日またはイベントベースのプロモーション

統合例

チェックアウトセッションでの割引適用

割引を事前適用し、コード入力UIを表示します。
const session = await client.checkoutSessions.create({
  product_cart: [
    { product_id: 'prod_abc', quantity: 1 }
  ],
  discount_code: 'BLACKFRIDAY2024',
  customer: { email: 'user@example.com', name: 'Jane Doe' },
  return_url: 'https://yoursite.com/return'
});

プラン変更時の割引適用

顧客がサブスクリプションをアップグレードまたはダウングレードする際にプロモーション価格を提供します。
await client.subscriptions.changePlan('sub_123', {
  product_id: 'prod_pro',
  quantity: 1,
  proration_billing_mode: 'prorated_immediately',
  discount_code: 'UPGRADE20'
});
サブスクリプションに既に割引がある場合、preserve_on_plan_change=trueを渡さない場合、既存の割引は新しい製品に適用されるときに自動的に保持されます。

事前適用せずに割引入力を有効化

顧客が事前にコードを渡さずにチェックアウト時にコードを入力できるようにします。
const session = await client.checkoutSessions.create({
  product_cart: [
    { product_id: 'prod_abc', quantity: 1 }
  ],
  feature_flags: {
    allow_discount_code: true
  },
  return_url: 'https://yoursite.com/return'
});

ベストプラクティス

  • 明確に名前付け: キャンペーン名と一致する認識可能なコードを使用
  • 時間制限を加える: 緊急性を高め、誤用を防ぐために有効期限を追加
  • 賢明に範囲を設定: マージン漏れを避けるために特定の製品に限定
  • 早期に検証: チェックアウトを確認する前にコードの適用性を確認
  • 影響を監視: キャンペーンごとに使用状況とコンバージョンを追跡
割引コードは、獲得および維持のための強力なレバーです。シンプルで分かりやすいオファーから始め、徹底的に検証し、パフォーマンスに基づいて反復します。
Last modified on March 24, 2026