MemberPulse

UJ-M-013: Enroll in Course

Member enrolls in an online course to begin learning

Journey Overview

AttributeValue
Journey IDUJ-M-013
ActorMember
GoalEnroll in a course to start learning
TriggerMember finds course of interest
OutcomeMember has course access and can begin learning

Preconditions

  • Course exists and is published
  • Member meets any prerequisites
  • For paid courses: Member can make payment
  • For member-only courses: User has active membership

Journey Flow

flowchart TD
    A[Browse courses] --> B[View course details]
    B --> C{Meets prerequisites?}
    C -->|No| D[Show prerequisite requirements]
    C -->|Yes| E{Course pricing?}
    E -->|Free| F[Click Enroll]
    E -->|Paid| G[Add to cart / Checkout]
    E -->|Included in membership| F
    F --> H[Enrollment created]
    G --> I[Complete payment]
    I --> J{Payment successful?}
    J -->|Yes| H
    J -->|No| K[Payment retry]
    H --> L[Welcome email sent]
    L --> M[Course accessible]
    M --> N[Begin learning]

Detailed Steps

  1. Browse Courses

    Member discovers courses:

    Discovery Methods:

    • Learning menu → Course catalog
    • Dashboard recommendations
    • Email promotions
    • Event follow-up (related courses)
    • Search results

    Course Card Shows:

    • Course title and thumbnail
    • Duration and module count
    • Difficulty level
    • CPD points available
    • Price or "Included" badge
    • Rating/reviews (if enabled)
  2. View Course Details

    Course detail page includes:

    SectionContent
    OverviewDescription, learning objectives
    CurriculumModules and lessons outline
    InstructorBio and credentials
    ReviewsStudent feedback
    RequirementsPrerequisites, tech requirements
    CertificationCertificate details, CPD points
    PricingCost or membership inclusion
  3. Check Eligibility

    System validates enrollment eligibility:

    Checks:

    • Already enrolled? → Show "Continue Course"
    • Prerequisites completed? → Show requirements
    • Membership required? → Prompt to upgrade
    • Course available? → Check dates, capacity

    Prerequisite Display:

    ┌─────────────────────────────────────────┐
    │ Prerequisites Required                  │
    ├─────────────────────────────────────────┤
    │ Complete these courses first:           │
    │                                         │
    │ ☑ Introduction to Finance (Completed)  │
    │ ☐ Accounting Fundamentals (0% done)    │
    │                                         │
    │ [Go to Accounting Fundamentals]         │
    └─────────────────────────────────────────┘
  4. Enroll (Free/Included)

    For free courses or courses included in membership:

    1. Click "Enroll Now" or "Start Learning"
    2. Confirm enrollment (optional step)
    3. Enrollment record created
    4. Redirected to first lesson

    Instant Access:

    • No payment required
    • Immediate course access
    • Progress tracking begins
  5. Purchase (Paid Courses)

    For paid courses not included in membership:

    Purchase Flow:

    1. Click "Buy Course" or "Add to Cart"
    2. Review order (course, price, any discounts)
    3. Apply promo code (if available)
    4. Enter payment details (Stripe)
    5. Complete purchase

    Order Summary:

    ┌─────────────────────────────────────────┐
    │ Order Summary                           │
    ├─────────────────────────────────────────┤
    │ Advanced Leadership Course       $199   │
    │ Member Discount (20%)            -$40   │
    ├─────────────────────────────────────────┤
    │ Total                            $159   │
    └─────────────────────────────────────────┘
  6. Enrollment Confirmed

    On successful enrollment:

    Immediate:

    • Enrollment record created
    • Course appears in "My Courses"
    • First lesson unlocked
    • Welcome notification

    Email Sent:

    • Enrollment confirmation
    • Course access instructions
    • Getting started guide
    • Support contact

    Dashboard Update:

    • "Continue Learning" widget shows course
    • Progress initialized at 0%
  7. Begin Learning

    Member starts course:

    • Click "Start Course" or "Continue"
    • First lesson/module opens
    • Progress tracked automatically
    • Bookmark/resume functionality

Enrollment Types

TypeDescriptionPayment
FreeOpen to allNone
Member-IncludedPart of membership benefitsMembership covers
PremiumAdditional purchase requiredOne-time payment
SubscriptionAccess while subscribedRecurring fee

Course Access Levels

Membership TierCourse Access
Free/BasicFree courses only
StandardFree + Standard courses
PremiumAll courses included
Non-memberFree + can purchase others

Bulk Enrollment (Corporate)

For group/corporate memberships:

  • Admin enrolls team members
  • Bulk enrollment tool
  • Progress reporting per user
  • Separate journey: Client Portal

Acceptance Criteria

Frontend

  • Course catalog with filters
  • Course detail page with curriculum
  • Prerequisite check display
  • Enroll button (free/included)
  • Purchase flow (paid courses)
  • My Courses dashboard
  • Enrollment confirmation page
  • Mobile-responsive design

Backend

  • GET /api/courses - Course catalog
  • GET /api/courses/{id} - Course details
  • POST /api/courses/{id}/enroll - Create enrollment
  • GET /api/courses/{id}/eligibility - Check prerequisites
  • GET /api/member/courses - My enrolled courses

Permissions

  • Public courses visible to all
  • Member-only courses require auth
  • Course access requires enrollment

Business Rules

  • Prerequisites enforced before enrollment
  • Duplicate enrollment prevented
  • Member discounts auto-applied
  • Course capacity limits (if set)

Error Handling

  • Prerequisites not met message
  • Already enrolled notification
  • Payment failure handling
  • Course unavailable message

On this page