
Checkout Sessions
ホストされたチェックアウト中に、
discount_codesとUIコントロールを使用して、1つ以上のスタックコードを適用します。Validate Discount
割引がその ID で有効かどうかを確認します。
Get Discount by Code
コード名(例: “SAVE20”)を使用して割引を検索し、検証します。
Create Discount (API)
プログラムで新しい割引コードを作成します。
List & Update Discounts
既存の割引を閲覧および管理し、必要に応じて更新または削除します。
Plan Change Discounts
サブスクリプションプランをアップグレードまたはダウングレードする際に、割引コードを適用します。
割引コードとは?
割引コードは、チェックアウト時に注文合計を減少させるプロモーショントークンです。次のような場面で理想的です:- 季節キャンペーン: ブラックフライデー、製品発売、または周年記念
- 獲得オファー: 初回購入インセンティブや紹介報酬
- 保持: 既存顧客に対する再獲得またはロイヤルティ報酬
- B2Bディール: プライベートコードを通じた契約または交渉による価格設定
主な利点
- 柔軟なディスカウント: パーセンテージまたは固定金額の割引
- スタック可能なコード: チェックアウト、支払い、またはサブスクリプションごとに最大20コードを適用 — 特別なコードを作成せずにキャンペーンを組み合わせる(例:
WELCOME10+BLACKFRIDAY20) - ターゲットされたコントロール: 製品とサブスクリプションサイクルによる制限
- キャンペーン管理: 有効期限と使用制限
- シームレスなチェックアウト: チェックアウトセッションを通じたUIフィールドとAPIサポート
割引コードの作成
Dodo Paymentsダッシュボードで割引コードを作成し、ホストされたチェックアウトまたはAPI経由で適用します。ダッシュボード設定
- 割引名(必須):内部およびダッシュボードに表示される名前
- コード(必須):顧客がチェックアウト時に入力する文字列
- タイプと金額(必須):パーセンテージまたは固定金額を設定するか、提供されたボタンでランダムコードを生成
- 有効期限(オプション):コードが無効になる日付
- 使用制限(オプション):全顧客にわたる最大引換回数
- 製品制限(オプション):選択された製品に適用範囲を限定
- サブスクリプションサイクル制限(オプション):割引が適用される請求サイクル数
- メタデータ(オプション):内部追跡や統合のためのカスタムキー–値ペアを添付
チェックアウトの体験
- 購入者がチェックアウトフィールドにコードを入力します。
- 適用可能な割引が適用され、合計金額が即座に更新されます。
Checkout Sessionsで、1つ以上のコードを事前適用するために
discount_codes(配列)を渡し、入力フィールドを表示するためにfeature_flags.allow_discount_codeを設定します。コードは配列の順序で適用され、最大20までです。ディスカウントコードのスタッキング
チェックアウトセッション、支払い、サブスクリプションは、配列discount_codes(最大20エントリー)を通じて最大20のスタックコードを受け入れます。コードは配列順に適用され、最初の適格なコードが基準価格を最初に減らし、次のコードがすでに割引された価格を減らします。この割引の全セットは、レスポンスでdiscount_ids(支払い/サブスクリプション上)およびdiscounts(位置および残りのサブスクリプションサイクルを含む、個別の割引詳細)に返されます。
単一の
discount_codeフィールドは非推奨ですが、後方互換性のために完全にサポートされています。既存の統合は変更なしで動作し続けます。同じリクエストでdiscount_codesと組み合わせることはできません。スタッキングとより豊かなレスポンス形状を活用するために、単一コードの場合でも、便利なときにdiscount_codes(配列形式)への移行をお勧めします。API管理
Create discounts
Create discounts
タイプと量でディスカウントコードをプログラム的に作成します。
API Reference
ディスカウント作成APIを表示します。
List and retrieve
List and retrieve
すべてのディスカウントをリストし、管理と監査のために詳細を取得します。
API Reference
リストと取得APIを閲覧します。
Get discount by code
Get discount by code
内部IDの代わりに、人間が読めるコード(例:「SAVE20」)を使用してディスカウントを検索します。
API Reference
コード名でディスカウントを取得します。
Update discounts
Update discounts
量、有効期限、制限などのディスカウント設定を変更します。
API Reference
ディスカウント詳細を更新する方法を学びます。
Validate discounts
Validate discounts
適用する前にディスカウントが有効で適用可能かどうかを確認します。
API Reference
ディスカウント使用の妥当性を確認します。
Delete discounts
Delete discounts
不要になったディスカウントを無効にするか削除します。
API Reference
ディスカウントを削除します。
よくあるユースケース
- イントロオファー: 新製品のための期間限定のローンチプロモーション
- 大量またはB2B: 特定の製品セットの契約ディスカウント
- リテンション施策: 離脱防止ワークフローの再獲得コード
- 季節キャンペーン: 休日またはイベントベースのプロモーション
インテグレーション例
メタデータ付きでディスカウントを作成する
内部トラッキングのためにカスタムのキー–バリューペアを添付します。チェックアウトセッションでディスカウントを適用する
事前適用されたスタックディスカウントを1つ以上適用し、コード入力UIを表示します。プラン変更時のディスカウント適用
顧客がサブスクリプションをアップグレードまたはダウングレードするときにプロモーション価格を提供します。discount_codes 値 | プラン変更時の挙動 |
|---|---|
undefined / null(提供されていない) | 新しい製品に適用できる場合、preserve_on_plan_change=trueと共に既存のディスカウントが保持されます。 |
[](空の配列) | すべての既存のディスカウントがサブスクリプションから削除されます。 |
['CODE_A', 'CODE_B', ...] | このスタックセットで既存のディスカウントを入れ替え、配列順に適用します。 |
サブスクリプションのレスポンスで新しい
discounts配列を介して適用されたすべてのディスカウントを読み取ります。各エントリーにはdiscount_id、position、cycles_remaining(サブスクリプション用)、および元のコードが含まれます。事前適用せずにディスカウントエントリーを有効にする
顧客にコードを事前に渡さずにチェックアウトで入力させます。ベストプラクティス
- 明確に名前をつける: キャンペーン名に合った認識しやすいコードを使用
- 時間を制限する: 緊急性を促し、不正使用を防ぐために有効期限を追加
- 賢く範囲を設定する: 特定の製品に限定し、利益率の漏れを防ぐ
- 早期に検証する: チェックアウトを確定する前にコードの適用可能性を確認
- 影響を監視する: キャンペーンごとの使用状況とコンバージョンを追跡
ディスカウントコードは取得と保持のための強力なレバーです。単純で分かりやすいオファーから始め、徹底的に検証し、パフォーマンスに基づいてイテレーションを行います。