Course Registration Service
Component Detail
Service Layer
medium complexity
backend
0
Dependencies
0
Dependents
0
Entities
0
Integrations
Description
Backend service that orchestrates course discovery, enrollment, and registration lifecycle management for peer mentors. Enforces organization scope, prerequisites, capacity rules, and persists status transitions feeding downstream certificate and reminder flows.
course-registration-service
Sources & reasoning
Source explicitly lists Course Registration as a feature under certification-training (line 363) and HLF unique needs describe in-app course sign-up (line 72). Phase 3 roadmap (line 320) places course administration in Growth & Engagement.
-
docs/source/likeperson.md · line 363certification-training | Certification & Training | Course Registration, Digital Peer Mentor Certificate, Certificate Renewal Reminder
-
docs/source/likeperson.md · line 72Kursadministrasjon og sertifisering: Påmelding til kurs i appen, automatisk påminnelse ved utløp, digitale sertifikater.
-
docs/source/likeperson.md · line 320Kursadministrasjon / sertifisering
Responsibilities
- Return the list of courses available to a mentor based on organization and module toggle
- Validate prerequisites and remaining capacity before accepting an enrollment
- Persist registrations and transition status across registered, attended, cancelled, completed
- Emit registration events consumed by certificate issuance and renewal reminders
- Enforce role-based access so only authorized mentors can register or cancel
Interfaces
listAvailableCourses(mentorId, organizationId): Course[]
enrollMentor(mentorId, courseId): Registration
cancelRegistration(registrationId, mentorId): Registration
updateRegistrationStatus(registrationId, status): Registration
getRegistrationsForMentor(mentorId): Registration[]