プロダクトとプラン

AppCotton における プロダクトプラン は、ライセンス販売の基本単位です。
プロダクトは「販売したい製品そのもの」を表し、プランは「その製品の価格帯や利用可能数の違い」を表します。

例えば、ある WordPress プラグインを販売したい場合:

プロダクトプラン説明
CombPass1サイト版1サイトのみ利用可能
CombPass3サイト版複数サイトで利用可能
CombPass無制限版開発者向け・利用制限なし

このように、1つのプロダクトに対して複数のプランを持つことができます。


プロダクトとは

プロダクトは 「何のライセンスか」 を決める最上位の単位です。

例:

  • WordPressプラグイン
  • 案内アプリ
  • SaaSサービスアクセス権
  • PDF教材ダウンロード権

プロダクト作成時に設定できる項目

項目説明
プロダクト名管理画面に表示される名前
スラッグ (product_slug)プラグイン等で認証時に使用する識別子
説明文内部用メモ。顧客には表示されない
アイコン・タグ・カテゴリ運用時の整理用(任意)

プランとは

プランは 価格・制限・課金方法を決める単位 です。

項目説明
プラン名(例:Basic / Pro / Unlimited)顧客に表示されるプラン名
価格一括買い切り or サブスクリプション
アクティベーション上限 (activation_limit)利用可能なサイト数の制限
Stripe Price IDStripe の価格と連携させるためのID
並び順 (sort_order)表示順位を制御

プロダクトとプランの関係図

[プロダクト]
   ├─ [プランA - 1サイト版]
   ├─ [プランB - 3サイト版]
   └─ [プランC - 無制限版]
combpass_premium (product_slug)
   │
   ├─ plan_id: 12 → 価格:¥4,980 / 1サイト
   ├─ plan_id: 13 → 価格:¥9,800 / 3サイト
   └─ plan_id: 14 → 価格:¥29,800 / 無制限

なぜ「product_slug」が重要なのか

認証時、配布したプラグインは次のように AppCotton に問い合わせます:

license_key = ユーザーが入力したキー
product_slug = 製品の識別子
domain = 使用中のサイトのURL

もし product_slug が一致しない場合、
ライセンスは有効でも「この製品のものではありません」となるため注意が必要です。


スムーズな開発のための命名のコツ

ターゲット推奨命名例避けたい例
WordPress プラグインpluginname_premiumpremium / pro だけ
SaaS / Webアプリservice_accessplan1
複数ブランドを扱う場合brand_feature_name汎用的すぎる一語

運用のベストプラクティス

  • プランに 「無制限版」 を必ず用意する(開発者・代理店向け)
  • プランは 価格とアクティベーション上限 で差別化する
  • 値上げ時は 新プランを追加し、旧プランを非表示に する(既存ユーザーは維持される)
  • 認証コード中では product_slug をハードコード する