AppCotton を使うときに登場する用語は、基本的に 3階層 で整理できます。
プロダクト
└─ プラン
└─ ライセンス(ユーザーに発行される実体)
プロダクト(Product)
あなたが販売したいソフトウェアそのもの を指します。
例:
- WordPressプラグイン
- テーマ
- SaaS
- デスクトップアプリ
プロダクトには product_slug が必ず設定されます。
例)combpass_premium
この slug が、アプリ側でライセンス判定を行う際の 共通の識別子 になります。
プラン(Pricing Plan)
同じプロダクトに対して、料金や利用上限を変えたバリエーション のことです。
例:
| プラン名 | 価格 | サイト数上限 |
|---|---|---|
| 1サイト版 | ¥9,800 | 1 |
| 3サイト版 | ¥24,800 | 3 |
| 無制限版 | ¥49,800 | 無制限 |
プランにより変化するものは以下の通りです:
- 価格
- サイト数上限(activation_limit)
- 買い切り / サブスクの種別
- Stripeの紐付け(任意)
ライセンス(License)
実際に ユーザーに割り当てられるライセンスキー のことです。
例)LIC-ABCD-1234-Z9K4-XY21
ライセンスは以下を保持します:
| 項目 | 説明 |
|---|---|
| product_id | どのプロダクトのライセンスか |
| plan_id | どのプランに基づくライセンスか |
| user_id | WordPressユーザーとの紐付け(任意/推奨) |
| activation_limit | 利用可能サイト数 |
| status | active / expired / revoked など |
アクティベーション(Activation)
ライセンスキーを 特定のドメイン / 端末で使用中であることを記録する行 のことです。
| 例 | 説明 |
|---|---|
example.com で使用中 | ライセンスが1枠消費されている状態 |
| 別サイトに移したい | 既存ドメインの「解除(deactivate)」が必要 |
サイト数上限(プランの設定)により、使用可能数が管理されます。
プランが「3サイト版」 → 最大3つまでアクティベーション可能
is_premium(有料判定)
アプリ側で、有料ユーザーかどうか を判定する最重要関数です。
if ( appcotton_is_premium('product_slug_here') ) {
// 有料機能
} else {
// 無料版の機能
}
- 判定は AppCotton の REST API を通じて行われます。
- 結果はキャッシュされるため、毎回通信は発生しません。
差額アップグレード(Upgrade)
ユーザーが 下位プラン → 上位プランに変更 したいとき、
既に支払った分を考慮して差額のみ請求できる 仕組みです。
例)1サイト版 → 3サイト版
支払済: 9,800
新価格: 24,800
差額: 24,800 - 9,800 = 15,000円
この章のまとめ
| 用語 | 覚えておくポイント |
|---|---|
| プロダクト | 販売対象のソフト本体 |
| プラン | 価格やサイト数のバリエーション |
| ライセンス | ユーザーに発行される個別のキー |
| アクティベーション | 利用中のサイトを記録する |
| is_premium | 有料機能を制御するための関数 |