# 1. Student Enrollment

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

---

## 1. Student Enrollment

### 1.1 Bulk Student Import
**What it does:** Lets the Training Institute import students in bulk: the Institute uploads a file with the student details, the platform validates the rows, and the valid students are created with their licenses assigned. The Institute sees a summary of the imported, skipped, and failed rows. This is the fastest way to onboard a large cohort.

**Sub-features:**
- Bulk student import upload
- File format validation
- Row-level validation
- Valid students created with licenses
- Import summary (imported, skipped, failed)
- Error report for failed rows
- Import available on web and mobile
- Import event logging (uploaded, completed)
- Audit logging of the bulk student import

**Training Institute User Journey:**
1. Training Institute opens the bulk student import.
2. Training Institute uploads the file with the student details.
3. The file format is validated.
4. The rows are validated.
5. The valid students are created with licenses.
6. The import summary is shown.
7. Training Institute opens Profile → "Activity" and confirms the import events are recorded.

**Rules & Edge Cases:**
- The failed rows are reported with the reason.
- A duplicate student is skipped, not duplicated.
- Import events (uploaded, completed) are logged with the account and the timestamp.
- The bulk student import is audit-logged with the account and the timestamp.

### 1.2 Individual Student Registration
**What it does:** Lets the Training Institute register a student individually: the Institute enters the student's name, email, and details, assigns a license, and the student is created with access. The Institute sees the confirmation and the student's profile. This is used for ad-hoc enrollments.

**Sub-features:**
- Individual student registration form
- Student name, email, and details
- License assignment on registration
- Student created with access
- Registration confirmation shown
- Student profile viewable
- Registration available on web and mobile
- Registration event logging (created)
- Audit logging of the individual student registration

**Training Institute User Journey:**
1. Training Institute opens the individual student registration.
2. Training Institute enters the student's name, email, and details.
3. Training Institute assigns a license.
4. The student is created with access.
5. The registration confirmation is shown.
6. The student profile is viewable.
7. Training Institute opens Profile → "Activity" and confirms the registration events are recorded.

**Rules & Edge Cases:**
- The student email must be unique.
- A license is required for access.
- Registration events (created) are logged with the account and the timestamp.
- The individual student registration is audit-logged with the account and the timestamp.

### 1.3 Student Profile Management
**What it does:** Lets the Training Institute manage a student's profile: the Institute views and edits the student's details, assigns or changes the student's license, and views the student's activity. The changes are reflected in the student's experience. This keeps the student records accurate.

**Sub-features:**
- Student profile view
- Edit student details
- Assign or change the student's license
- View the student's activity
- Changes reflected in the student's experience
- Profile available on web and mobile
- Profile event logging (updated)
- Audit logging of the student profile management

**Training Institute User Journey:**
1. Training Institute opens the student profile.
2. The student profile is shown.
3. Training Institute edits the student details.
4. Training Institute assigns or changes the student's license.
5. Training Institute views the student's activity.
6. The changes are reflected in the student's experience.
7. Training Institute opens Profile → "Activity" and confirms the profile events are recorded.

**Rules & Edge Cases:**
- The changes are reflected in the student's experience.
- A license change revokes and grants access accordingly.
- Profile events (updated) are logged with the account and the timestamp.
- The student profile management is audit-logged with the account and the timestamp.
