ライセンスとサブスクリプション管理 — 中央メンバーシップ&SSOハブ
1. ドキュメントの目的
このドキュメントは、システムがメンバーのライセンスとサブスクリプションを管理する方法を説明します。ライセンスIDの作成、ライセンスのライフサイクル、メンバーにライセンス情報を表示する方法を含みます。
2. ライセンスIDの概念
2.1 定義
ライセンスIDは、システムがメンバーの各サブスクリプションに一意のコードを生成するために使用されるものです。
2.2 フォーマット
[PREFIX_PRODUK]-[XXXX]-[XXXX]-[XXXX]
- PREFIX_PRODUK: SaaS製品の短縮コード (2–4文字、大文字)
- [XXXX]: 4文字のアルファ数字のランダムな値
例:
NTO-A1B2-C3D4-E5F6 → NOTO製品のライセンスID
APP-X9Y8-Z7W6-V5U4 → Aplikasi B製品のライセンスID
2.3 ライセンスIDの性質
- 一意の値で、全システムで使用可能
- 作成後は変更できません
- 一つのメンバーと一つの製品にのみ使用可能
- 値を転送できません
- メンバーのダッシュボードに表示され、メールに送信されます
3. ライセンスのライフサイクル
アクティブ
│
▼
[active]
│
├── (フリープラン)
│ 永久に有効 → いつまでもアクティブ/フリープラン
│
└── (有料プラン)
│
▼ (expired_at達成)
[grace_period]
│
├── メンバーが延長 → 再びアクティブ
│
└── Grace Period終了
│
▼
[suspended]
│
├── メンバーが支払う → 再びアクティブ
│
└── メンバーが戻らない → データは保存される
3.1 ライセンスのステータス
| ステータス | コード | 説明 |
|---|---|---|
| アクティブ | active |
ライセンスが有効、フルアクセス |
| フリープラン | active_free |
フリープラン、有効期限なし |
| Grace Period | grace_period |
有効期限、まだ延長可能 |
| 休止 | suspended |
Grace Period終了、アクセスブロック |
| キャンセル | cancelled |
メンバーまたは管理者によってキャンセル |
4. ライセンスIDの作成
4.1 ライセンスIDが作成されるタイミング
- メンバーがフリープランを初めて有効化するとき
- ある製品に対して初めて支払いが成功したとき
4.2 作成ルール
- システムはライセンスIDの一意性を確認する
- メンバーがすでに同じ製品のライセンスを持っている場合 (延長)、既存のライセンスIDは変更されない
- 既存のライセンスがキャンセルされた場合、ライセンスIDは再生成される
5. メンバーに表示されるライセンス情報
メンバーのダッシュボードでは、各ライセンスは以下の情報を表示します。
| 情報 | 例 |
|---|---|
| 製品名 | NOTO |
| ライセンスID | NTO-A1B2-C3D4-E5F6 |
| プラン | フリープラン |
| ステータス | アクティブ |
| 有効期間 | 無期限 |
| 有効化日 | 2026年7月12日 |
| アクションボタン | アプリを開く |
有料プランの場合、以下の追加情報も表示されます。
| 情報 | 例 |
|---|---|
| 有効期限 | 2026年8月12日 |
| 残り日数 | 30日 |
| アクションボタン | 延長/アップグレード |
6. ライセンスの通知
6.1 システムが送信するメール通知
| イベント | メール |
|---|---|
| ライセンスの有効化 | 有効化の確認 + ライセンスID |
| 支払いの成功 | ใบ状 + 有効化の確認 |
| 有効期限の7日前 | 有効期限の警告 |
| 有効期限の3日前 | 有効期限の警告 |
| 有効期限の1日前 | 有効期限の警告 |
| Grace Periodの開始 | 通知 + 延長の指示 |
| Grace Periodの3日後 | Grace Periodの警告 |
| Grace Periodの6日後 | Grace Period終了の警告 |
| アクセスのブロック | アクセスのブロックの通知 |
| アクセスの復活 | アクセスの復活の確認 |
7. マルチ製品ダッシュボード
複数製品のサブスクリプションを持つメンバーは、以下のようないくつかの製品のライセンスを表示できます。
Langganan Saya
│
├── NOTO
│ ライセンスID : NTO-A1B2-C3D4-E5F6
│ ステータス : アクティブ (フリープラン)
│ アクション : [アプリを開く]
│
├── Aplikasi B
│ ライセンスID : APB-X9Y8-Z7W6-V5U4
│ ステータス : アクティブ · 有効期限 2026年8月31日
│ アクション : [アプリを開く] [延長]
│
└── Aplikasi C
ライセンスID : APC-Q5R4-S3T2-P1O0
ステータス : Grace Period · 残り 3日
アクション : [延長]
8. ライセンスのルール
- 一つのメンバーは、一つの製品に対して一つのライセンスを有効にすることができます。
- ライセンスIDは一意で、転送できません。
- フリープランは有効期限なしです。
- Grace Periodは有料プランにのみ適用されます。
- メンバーのデータは、ライセンスがブロックされた場合も保存されます。
- 既存のライセンスが有効期限を過ぎた場合、延長の日数は有効期限の日数から計算されます。
- キャンセルされたライセンスは復活できません。新規購入の場合、ライセンスIDは新しく生成されます。
9. アクセプタンスクリテリア
- ライセンスIDは
[PREFIX_PRODUK]-[XXXX]-[XXXX]-[XXXX]の形式で一意で、全システムで使用可能です。 - ライセンスIDは有効化後、ダッシュボードに表示されます。
- 有効化後、ライセンスIDと共に確認メールが送信されます。
- ライセンスのステータスは自動的に変更されます (アクティブ → Grace Period → 休止)。
- メール通知は予定どおり送信されます。
- メンバーはすべてのライセンスを一つのダッシュボードで表示できます。
- ライセンスがブロックされた場合、メンバーはアプリにアクセスできません。