# 3. License Renewal & Expiry

User Type: **Training Institute**
Source: *Mi Digital Academy - Education CRM Features Document*

---

## 3. License Renewal & Expiry

### 3.1 License Renewal
**What it does:** Lets the Training Institute renew licenses before they expire: the Institute selects the licenses to renew, the renewal term, and completes the payment. The licenses' expiry is extended on successful payment. This keeps the Institute's students' access continuous.

**Sub-features:**
- License renewal flow
- Select licenses to renew
- Renewal term selection
- Expiry extended on payment
- Renewal confirmation shown
- Bulk renewal supported
- Renewal available on web and mobile
- Renewal event logging (initiated, completed)
- Audit logging of the license renewal

**Training Institute User Journey:**
1. Training Institute opens the license renewal.
2. Training Institute selects the licenses to renew.
3. Training Institute selects the renewal term.
4. The expiry is extended on payment.
5. The renewal confirmation is shown.
6. Training Institute performs a bulk renewal.
7. Training Institute opens Profile → "Activity" and confirms the renewal events are recorded.

**Rules & Edge Cases:**
- The expiry is extended from the current expiry date.
- A bulk renewal applies to all selected licenses.
- Renewal events (initiated, completed) are logged with the account and the timestamp.
- The license renewal is audit-logged with the account and the timestamp.

### 3.2 Auto-Renewal
**What it does:** Lets the Training Institute enable auto-renewal for its licenses: the platform renews the licenses automatically before expiry using the payment method on file. The Institute can enable or disable auto-renewal and see the next auto-renewal date. This prevents lapses from missed renewals.

**Sub-features:**
- Enable auto-renewal
- Disable auto-renewal
- Next auto-renewal date shown
- Renewal via the payment method on file
- Notification before auto-renewal
- Auto-renewal available on web and mobile
- Auto-renewal event logging (enabled, disabled, renewed)
- Audit logging of the auto-renewal

**Training Institute User Journey:**
1. Training Institute opens the auto-renewal settings.
2. Training Institute enables auto-renewal.
3. The next auto-renewal date is shown.
4. The renewal is via the payment method on file.
5. The notification is sent before auto-renewal.
6. Training Institute disables auto-renewal.
7. Training Institute opens Profile → "Activity" and confirms the auto-renewal events are recorded.

**Rules & Edge Cases:**
- The auto-renewal uses the payment method on file.
- A notification is sent before the auto-renewal charge.
- Auto-renewal events (enabled, disabled, renewed) are logged with the account and the timestamp.
- The auto-renewal is audit-logged with the account and the timestamp.

### 3.3 Expiry Management
**What it does:** Shows the Training Institute the license expiry management: the licenses sorted by expiry date, the grace period status, and the action needed for each. The Institute can renew, reallocate, or let a license lapse from this view. This gives the Institute a single place to manage all expiries.

**Sub-features:**
- Licenses sorted by expiry date
- Grace period status shown
- Action needed per license
- Renew from the expiry view
- Reallocate from the expiry view
- Expiry view available on web and mobile
- Expiry event logging (viewed, action taken)
- Audit logging of the expiry management

**Training Institute User Journey:**
1. Training Institute opens the expiry management.
2. The licenses are sorted by expiry date.
3. The grace period status is shown.
4. The action needed per license is shown.
5. Training Institute renews from the expiry view.
6. Training Institute reallocates from the expiry view.
7. Training Institute opens Profile → "Activity" and confirms the expiry events are recorded.

**Rules & Edge Cases:**
- The grace period is shown for recently expired licenses.
- A lapsed license revokes the affected students' access.
- Expiry events (viewed, action taken) are logged with the account and the timestamp.
- The expiry management is audit-logged with the account and the timestamp.
