to select ↑↓ to navigate
Smooth LMS

Smooth LMS

Programs Overview

LMS Program groups multiple LMS Course documents into a curated learning path with optional Enforce Course Order. Members enrolled in a program see unified progress across courses—ideal for role-based academies, leadership tracks, and multi-course certifications beyond single cohort events.

Help URL: smoothhiring.com/help/lms/programs/overview


Table of Contents

  1. Programs vs cohorts vs courses
  2. LMS Program structure
  3. Program courses table
  4. Program members
  5. Enforce course order
  6. Publishing and portal
  7. Permissions
  8. Desk paths
  9. Step-by-step
  10. Tips
  11. Troubleshooting
  12. Related guides
  13. HRMS integration

Programs vs cohorts vs courses

Construct record Best for
Course LMS Course Single subject, self-paced
Cohort LMS Batch Scheduled group experience
Program LMS Program Multi-course path spanning weeks/months

Programs do not include live timetable—pair with cohorts when you need facilitators plus structured path.


LMS Program structure

Fields on /app/lms-program:

  • Title (unique, autoname)
  • Published — visible on /lms/programs
  • Enforce Course Order — sequential unlock
  • Program Courses child (LMS Program Course)
  • Program Members child (LMS Program Member)
  • Read-only Course Count / Member Count

Custom has_permission ensures members see only programs they belong to (plus moderators).


Program courses table

Each row links a published LMS Course with ordering index. When Enforce Course Order is enabled, portal prevents starting course N+1 until course N completion criteria met (progress 100% / certificate).

Include prerequisite skills early in sequence—e.g., "Data Privacy Basics" before "Advanced PHI Handling".


Program members

Program Members lists Users enrolled in the path. Adding member should create underlying LMS Enrollment rows per course—verify after bulk add.

Members hold LMS Student role; program admins need Moderator.

Removal from program does not auto-delete completed course history—archive thoughtfully.


Enforce course order

Checkbox Enforce Course Order (default off):

  • On: sequential gating for compliance paths.
  • Off: buffet-style libraries where motivated learners skip ahead.

Communicate policy to employees when enforcement is on to reduce support tickets.


Publishing and portal

Published programs surface on portal when LMS Settings sidebar includes programs. Marketing fields are minimal—rely on course cards inside program detail view.

Statistics counters update on save—use desk list filters for reporting.


Permissions

Role Access
System Manager Full
Moderator Create/edit/publish
Course Creator Create/edit own programs (import enabled)
LMS Student Read published programs where member

API checks program membership before showing course content bundle.


Desk paths

Item Path
Program list /app/lms-program
New program /app/lms-program/new
Portal programs /lms/programs
Underlying courses /app/lms-course
Learning workspace /desk/learning

Step-by-step

Build a leadership program

  1. Publish courses: Communication, Coaching, Finance for Managers.
  2. New program "First-Line Leader Academy".
  3. Add courses in order; enable enforce order.
  4. Publish program.
  5. Add program members (User emails) for promoted supervisors.
  6. Learners open /lms/programs → start first course.
  7. Monitor enrollments until all courses 100%.

Combine with HR compliance

  1. Map program completion to manual Employee Compliance update.
  2. Attach consolidated certificate PDFs to employee file.

Tips

  • Keep programs under six courses for completion rates.
  • Refresh program yearly by duplicating record and swapping course links.
  • Use programs for role changes, cohorts for time-bound events.
  • Display program progress in 1:1 meetings alongside HR appraisals.

Troubleshooting

Issue What to do
Member cannot start course 2 Enforce order on—complete course 1
Program not on portal Publish program; enable sidebar
Course count zero Add Program Courses rows
Permission denied Add user to Program Members
Enrollment missing Re-save member row; check API logs


HRMS integration

Programs operationalize career paths tied to Employee records job changes. Align program completion with Employee Onboarding for manager tracks. Store regulated program certificates in Employee Compliance when required by law—not only LMS progress widgets.

Program analytics

Track Member Count vs active learners completing course 1—large drop-off indicates length or ordering issues. For enforced order programs, report average days between course completions to leadership. Integrate program completion into performance conversations—not automatic in HR appraisal unless configured separately.

Publish programs to /lms/programs only after all child courses tested on mobile portal.

Governance, auditing, and data retention

Training data in Smooth LMS is standard Frappe JSON in MariaDB plus files in public/files and public/scorm. HR audits typically require evidence of who completed what by when. Export desk lists (LMS Enrollment, LMS Quiz Submission, LMS Training Assignment, LMS Certificate) to CSV for sampling. Quiz submission print formats provide question-level detail suitable for safety investigations or harassment prevention audits.

Retention policy should align with HR document retention: keep LMS submissions at least as long as related Employee Compliance records. When employees depart, disable User accounts but retain enrollment history unless legal counsel approves purging. Version course content via amended records or annual duplicated courses so historical completions still reference the correct curriculum year.

System Managers should restrict Moderator role membership and enable login activity review on sensitive cohorts (executive leadership programs). Pair LMS reports with HR onboarding status from Employee Onboarding overview to prove training preceded start date when required.

Frequently asked questions

Do employees need desk access? No. LMS Student is portal-only by default; send {site}/lms/courses links.

Can one user be both Course Creator and Moderator? Yes on small teams; larger orgs should separate author vs publish duties.

How do we handle contractors? Create User + optional HR employee record; assign training like employees via Employee records linkage or direct enrollment.

What breaks if HRMS is down? LMS continues serving published content; new hire auto-enrollment pauses until Employee/Onboarding APIs succeed.

Are certificates legally equivalent to HR compliance rows? Not automatically—store PDFs on compliance or document types when statute requires.

Performance and scale notes

Large enrollments (5,000+ users) should batch assign overnight via assign_mandatory_training rather than manual enrollment rows. Rebuild website cache after bulk publish. Monitor background workers if email notifications queue heavily. SCORM packages should be optimized zip exports to reduce disk usage during large uploads.

Additional troubleshooting

Issue What to do
Slow portal after publish Hard-refresh browser; contact Smooth support if portal styling is broken
Wrong user on certificate Certificate issued to enrollment member—fix User linkage in HR
Bulk import partial failure Check error log; validate Course Instructor rows exist
Cohort vs course progress mismatch Learner must open each course inside cohort; enrollments are per course
Timezone confusion on due dates Training assignment due dates are date-only—communicate timezone in email
Cadence Action Where
Weekly Review overdue LMS Training Assignment /app/lms-training-assignment
Monthly Publish content changelog to employees Email + /lms/courses
Quarterly Role audit (Moderator/Creator) /app/user
Annually Recertify mandatory courses Re-assign with new due dates
After upgrade Sign out/in; smoke-test /lms portal /desk/learning

Integration smoke tests with HRMS

  1. Create test Employee with user — confirm LMS Student role.
  2. Submit test Employee Onboarding — confirm enrollments when courses mandatory.
  3. Complete course — attach quiz PDF to test Employee Compliance row.
  4. Archive evidence in document compliance SOP.

Support runbook (L1)

Collect: user email, course/cohort name, screenshot of error, timestamp. Check enrollment exists, course published, role present. Escalate to System Manager if SCORM extract failed or permission hooks deny batch access. Reference Employee records to fix missing user_id before reassigning training.

Document history and change control

When updating this process, record the Smooth LMS app version, platform update date, and whether HRMS onboarding templates changed. Authors should note breaking changes in course release notes (quiz question changes may require reattempts). For regulated customers, maintain a binder linking LMS course ID to compliance control ID in Employee Compliance.

Desk administrators use /desk/learning for cross-course metrics; portal users rely on /lms/courses for consumption—both URLs should appear in internal SOP PDFs so auditors can reproduce learner steps without admin credentials.

Quick reference card

Item Value
Admin workspace /desk/learning
Employee catalog /lms/courses
HR employee link Employee records
Onboarding hook Employee Onboarding overview
Compliance ledger Employee Compliance

Keep this table in your L&D onboarding packet for new coordinators.

Closing notes for administrators

Schedule annual review of this guide with HR compliance and L&D. Confirm your organization's backups include public/scorm and file attachments for quiz uploads. After major HR reorgs, rebuild cohort rosters from Employee records exports rather than stale distribution lists.


Last updated: May 2026

Last updated 1 week ago
Was this helpful?
Thanks!