# HRMS + LMS Integration Overview

Smooth HR and Smooth LMS are designed to work together on **your Smooth HRMS account**. When both products are enabled for your company, HR workflows in the People desk and learning workflows in the Learning workspace share the same **User** records, **Employee** master data, and authentication. That shared foundation is what makes auto-provisioning, onboarding training, and compliance handoffs possible without custom scripts or nightly CSV imports.

This guide explains how the two products divide responsibility, where they connect automatically, and which HRMS processes you should configure first. For step-by-step setup of each integration point, use the child pages in this section—especially [Employee Auto-Provisioning](https://smoothhiring.com/help/lms/hrms-integration/employee-auto-provisioning), [Onboarding Mandatory Training](https://smoothhiring.com/help/lms/hrms-integration/onboarding-mandatory-training), and [Compliance vs LMS Certificates](https://smoothhiring.com/help/lms/hrms-integration/compliance-vs-lms-certificates).

> **Help URL:** [Overview](https://smoothhiring.com/help/lms/hrms-integration/overview)

> **Smooth HR docs:** [Getting Started Overview](https://smoothhiring.com/help/hrms/getting-started/overview)

---

## Table of Contents

1. [Why install both apps](/#why-install-both-apps)
2. [Capability map](/#capability-map)
3. [Shared identity model](/#shared-identity-model)
4. [Automatic integration hooks](/#automatic-integration-hooks)
5. [Where HR ends and LMS begins](/#where-hr-ends-and-lms-begins)
6. [Desk and portal navigation](/#desk-and-portal-navigation)
7. [Recommended rollout sequence](/#recommended-rollout-sequence)
8. [Roles and permissions](/#roles-and-permissions)
9. [Reporting across HR and learning](/#reporting-across-hr-and-learning)
10. [Troubleshooting](/#troubleshooting)
11. [Related guides](/#related-guides)

---

## Why install both apps

Most organizations need **two different kinds of employee records**:

| Need | Best home | Why |
|------|-----------|-----|
| Hiring pipeline, offers, background checks | **Smooth HR** | [Recruitment](https://smoothhiring.com/help/hrms/recruitment/overview) tracks Job Opening → Applicant → Interview → Offer |
| Pre-boarding tasks, I-9, policy signatures | **Smooth HR** | [Onboarding](https://smoothhiring.com/help/hrms/onboarding/overview) templates drive [Employee Onboarding](https://smoothhiring.com/help/hrms/onboarding/employee-onboarding) and the [Onboarding Portal](https://smoothhiring.com/help/hrms/onboarding/onboarding-portal) |
| Regulatory compliance ledger with renewals | **Smooth HR** | [Employee Compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance) + **Compliance Type** track expiry and scheduled alerts |
| Course library, video lessons, quizzes, SCORM | **Smooth LMS** | **LMS Course** with chapters, assessments, and progress tracking |
| Assign training, cohorts, live sessions | **Smooth LMS** | **LMS Enrollment**, **LMS Batch**, [Live Classes](https://smoothhiring.com/help/lms/live-classes/overview) |
| Performance history | **Smooth HR** | [Performance](https://smoothhiring.com/help/hrms/performance/overview) appraisal cycles and feedback |

Smooth LMS excels at **delivery and measurement of learning**. Smooth HR excels at **people records, compliance status, and lifecycle events**. Installing both on one site lets HR create an employee once and immediately grant LMS access, enroll mandatory courses at onboarding, and later attach completion certificates to the HR file.

Without integration, HR would export employee emails, import them into a separate LMS, and manually reconcile completions against [Employee Compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance)—error-prone and slow. The built-in hooks described in [Employee Auto Provisioning](https://smoothhiring.com/help/lms/hrms-integration/employee-auto-provisioning) and [Onboarding Mandatory Training](https://smoothhiring.com/help/lms/hrms-integration/onboarding-mandatory-training) remove that friction.

---

## Capability map

The following table summarizes the official capability split (see also your internal `hr-lms-capabilities.md` reference):

| Business need | Primary app | How |
|---------------|-------------|-----|
| Employee certifications + renewal dates | Smooth HR | **Employee Compliance** + **Compliance Type** (renewal period, expiry, scheduled alerts) |
| Applicants through hiring | Smooth HR | [Recruitment pipeline](https://smoothhiring.com/help/hrms/recruitment/overview) with resume attach and scoring |
| Onboarding steps & documents → employee | Smooth HR | [Onboarding Templates](https://smoothhiring.com/help/hrms/onboarding/onboarding-templates) → **Employee Onboarding** → **Create Employee** |
| Online training content library | Smooth LMS | **LMS Course** (chapters, lessons, video/PDF/SCORM, quizzes) |
| Assign training + track progress | Smooth LMS | **LMS Enrollment** or **LMS Batch**; **LMS Course Progress** dashboards |
| Performance reviews + history | Smooth HR | **Appraisal Cycle** → **Appraisal** + feedback records |
| Print completed tests as PDF | Smooth LMS | **LMS Quiz Submission** → Print / Download PDF |

**Important distinction:** course completion certificates from LMS are **separate** from HR compliance records until HR explicitly links them. Read [Compliance Vs Lms Certificates](https://smoothhiring.com/help/lms/hrms-integration/compliance-vs-lms-certificates) for the recommended handoff workflow using [Employee Documents](https://smoothhiring.com/help/hrms/documents-compliance/employee-documents) and [Employee Compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance).

---

## Shared identity model

Integration assumes a **1:1 link** between **Employee** and **User**:

1. HR creates or converts a person into an **Employee** record in Smooth HR ([People overview](https://smoothhiring.com/help/hrms/people/overview)).
2. The **Employee** must have a **User ID** (`user_id` field) pointing to a **user account** with login credentials.
3. When the Employee is saved, Smooth LMS automatically adds the **LMS Student** role to that User (see [Employee Auto Provisioning](https://smoothhiring.com/help/lms/hrms-integration/employee-auto-provisioning)).
4. All LMS enrollments, assignments, quiz submissions, and certificates reference the **User** email—not the Employee ID directly.

If you create Employees without linked Users—common during data migration—you will not see auto-provisioning until HR completes user creation. The [User Roles & Permissions](https://smoothhiring.com/help/hrms/getting-started/user-roles-permissions) guide explains how **HR Manager**, **HR User**, and **LMS Student** roles interact.

Applicants in [Recruitment](https://smoothhiring.com/help/hrms/recruitment/overview) typically become Users only after offer acceptance and [Employee Onboarding](https://smoothhiring.com/help/hrms/onboarding/employee-onboarding). Plan your hiring-to-learning timeline accordingly: learning assignments should start **after** the Employee record exists with `user_id` populated.

---

## Automatic integration hooks

Smooth LMS connects to HR records automatically (no custom scripts required on your site):

| HR record | When | LMS action |
|------------|-------|------------|
| **Employee** | after_insert | Grant **LMS Student** role on linked User |
| **Employee Onboarding** | after_insert | Enroll linked employee in all published **mandatory** courses; create **LMS Training Assignment** rows with 30-day due dates |

These hooks live in `lms.lms.hrms_integration` and run with elevated permissions so HR users do not need LMS Moderator access for provisioning.

**Manual complements:** HR and L&D staff can still assign courses anytime via [Assign Training from HR](https://smoothhiring.com/help/lms/hrms-integration/assign-training-from-hr) using **LMS Training Assignment** or desk enrollment tools. Automatic onboarding enrollment does not replace department-specific assignments—it establishes a baseline.

---

## Where HR ends and LMS begins

Think of HR as the **system of record for employment** and LMS as the **system of record for learning activity**:

### Smooth HR owns

- Organization structure, job history, and tenure ([Tenure & Lifecycle](https://smoothhiring.com/help/hrms/tenure/overview))
- Signed policies via [Signature Templates](https://smoothhiring.com/help/hrms/documents-compliance/signature-templates) and [Signing Portal](https://smoothhiring.com/help/hrms/documents-compliance/signing-portal)
- Compliance **status**, renewal dates, I-9/EEO structured fields on [Employee Compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance)
- Payroll, leave, attendance ([Payroll](https://smoothhiring.com/help/hrms/payroll/overview), [Leaves](https://smoothhiring.com/help/hrms/leaves/overview), [Shift & Attendance](https://smoothhiring.com/help/hrms/attendance/overview))

### Smooth LMS owns

- Course authoring, publishing, and SCORM packaging
- Learner progress percentages on **LMS Enrollment**
- Quiz scores on **LMS Quiz Submission** (printable via Quiz Submission Report)
- **LMS Certificate** PDFs for course completion
- Cohort schedules, [live class](https://smoothhiring.com/help/lms/live-classes/overview) Zoom/Google Meet links, and batch dashboards

When auditors ask "Is this employee compliant with annual harassment training?", answer from **Employee Compliance** in HR—with the LMS certificate attached as verification. When instructional designers ask "Did the learner pass the quiz?", answer from LMS.

---

## Desk and portal navigation

| Surface | URL | Primary users |
|---------|-----|---------------|
| Smooth HR People desk | `/desk/people` | HR, managers |
| Documents & Compliance | `/app/documents-compliance` (when enabled) | HR compliance |
| Onboarding workspace | `/app/employee-onboarding` | HR onboarding coordinators |
| Smooth LMS Learning desk | `/desk/learning` | L&D, moderators |
| LMS portal (learner UI) | `/lms` | Employees / LMS Students |
| LMS Settings | `/app/lms-settings/LMS Settings` | Admins — see [LMS Settings — General](https://smoothhiring.com/help/lms/settings/lms-settings-general) |

Learners hired through [Onboarding Portal](https://smoothhiring.com/help/hrms/onboarding/onboarding-portal) may complete HR paperwork and LMS courses in parallel once provisioned. Communicate clearly which tasks live in which portal to reduce "I can't find my training" support tickets.

Optional: enable **Make LMS the default home** in [LMS Settings](https://smoothhiring.com/help/lms/settings/lms-settings-general) so frontline workers land on `/lms` after login while HR staff bookmark `/desk/people`.

---

## Recommended rollout sequence

Follow this sequence on a staging site before production:

1. **Company and roles** — [Company Setup](https://smoothhiring.com/help/hrms/getting-started/company-setup) and [User Roles & Permissions](https://smoothhiring.com/help/hrms/getting-started/user-roles-permissions).
2. **Compliance types** — Define renewal rules in Employee Compliance ([Documents & Compliance Overview](https://smoothhiring.com/help/hrms/documents-compliance/overview)).
3. **Onboarding templates** — [Onboarding Templates](https://smoothhiring.com/help/hrms/onboarding/onboarding-templates) with required documents and tasks.
4. **LMS settings** — [General LMS Settings](https://smoothhiring.com/help/lms/settings/lms-settings-general): notifications, guest access, employee tab visibility.
5. **Publish mandatory courses** — Mark **Is Mandatory** on core courses (harassment, safety, IT policy).
6. **Test hire path** — Create a test Employee Onboarding, verify LMS role + enrollments ([Onboarding Mandatory Training](https://smoothhiring.com/help/lms/hrms-integration/onboarding-mandatory-training)).
7. **Compliance handoff** — Document how L&D attaches certificates to HR ([Compliance Vs Lms Certificates](https://smoothhiring.com/help/lms/hrms-integration/compliance-vs-lms-certificates)).
8. **Manager assignments** — Train HR on [bulk assignment](https://smoothhiring.com/help/lms/hrms-integration/assign-training-from-hr) for role changes.

---

## Roles and permissions

| Role | HR access | LMS access | Integration notes |
|------|-----------|------------|-------------------|
| **HR Manager** | Full People + Compliance | Read team training via APIs | Can use `get_team_training_status` |
| **HR User** | Create onboarding, documents | Usually none | Triggers auto-enrollment on onboarding insert |
| **Moderator** | Optional | Create courses, assign training | Uses `assign_mandatory_training` |
| **LMS Student** | ESS only | Take courses | Auto-granted on Employee insert |
| **System Manager** | All | All | Configure hooks indirectly via app install |

Align HR and L&D on who may mark [Employee Compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance) **Complete** versus who publishes LMS courses. Separation of duties prevents learners from self-certifying regulatory items.

---

## Integration with Employee master data

The Employee record in Smooth HR carries fields—**Department**, **Designation**, **Branch**, **Reports To**—that downstream HR processes use for approvals, payroll, and org charts ([People Overview](https://smoothhiring.com/help/hrms/people/overview)). Auto-provisioning intentionally does **not** copy those attributes into LMS on insert; LMS enrollments key only on **User** email. That keeps the hook fast and avoids stale copies when HR later transfers an employee.

If L&D needs department-scoped reporting, use LMS batch cohorts named by department or schedule [manual assignments](https://smoothhiring.com/help/lms/hrms-integration/assign-training-from-hr) after org placement is final. HR should update Employee master data before assigning compliance-specific training tied to [Employee Compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance) categories like safety or harassment.

When offboarding ([Tenure & Lifecycle](https://smoothhiring.com/help/hrms/tenure/overview)), disable the User rather than deleting Employee—LMS historical enrollments and quiz submissions remain for audits while active access stops immediately.

---

## Email and username alignment

**User** login email usually equals login email in most Smooth HR deployments. LMS **LMS Enrollment.member** and **LMS Training Assignment.employee** both link to **User**, not **Employee.name**. If HR creates Employees with a work email but the User record uses a personal email from applicant stage, provisioning still runs—but learners may log in with an unexpected address.

Standardize during [Recruitment](https://smoothhiring.com/help/hrms/recruitment/overview) → [Employee Onboarding](https://smoothhiring.com/help/hrms/onboarding/employee-onboarding): convert applicant email to corporate email **before** Create Employee, or update User email with HR approval. Document the rule in your [Onboarding Template](https://smoothhiring.com/help/hrms/onboarding/onboarding-templates) welcome task.

---

## Coordinating with IT and SSO

Sites using social login or SSO still require a user account linked on Employee. The LMS Student append runs regardless of password vs OAuth login method. Verify SSO JIT provisioning creates User **before** Employee insert, or insert Employee only after IdP first login—otherwise the hook skips until user_id is populated.

System Managers should exclude **Guest** and **Administrator** from bulk LMS Student backfills.

---

## Account health check (support)

If employee emails do not match LMS access, contact Smooth support for an account audit.

```
employees = frappe.get_all("Employee", filters={"status": "Active"}, fields=["name", "user_id"])
for e in employees:
    if not e.user_id: continue
    roles = frappe.get_roles(e.user_id)
    if "LMS Student" not in roles:
        print(e.name, e.user_id)
```

Fix by appending role or correcting user_id. This is not part of standard product UI—run during migration cutover weekends.

---

## Communication templates for HR

Include in new-hire packets (editable in your [template](https://smoothhiring.com/help/hrms/onboarding/onboarding-templates)):

- **LMS URL:** `https://your-site/lms`
- **Login:** same credentials as [Onboarding Portal](https://smoothhiring.com/help/hrms/onboarding/onboarding-portal)
- **Support contact:** L&D mailbox vs HR helpdesk boundaries
- **Mandatory timeline:** aligns with default 30-day assignment from [Onboarding Mandatory Training](https://smoothhiring.com/help/lms/hrms-integration/onboarding-mandatory-training)

Clear messaging reduces duplicate tickets to HR for training access that auto-provisioning already solved.

---

## Reporting across HR and learning

| Question | Where to look |
|----------|---------------|
| Overdue mandatory assignments | LMS **LMS Training Assignment** list; LMS Statistics dashboard |
| Compliance expiry in 30 days | HR **Employee Compliance** list filters |
| Onboarding task completion | HR **Employee Onboarding** + portal status |
| Course completion rate | LMS Enrollment progress ≥ 100% |
| Quiz evidence | LMS Quiz Submission PDF |

Future enhancement (optional custom hook): auto-create **Employee Compliance** when **LMS Certificate** is issued. Today this is a manual or scheduled reconciliation step—document your SOP in [Compliance Vs Lms Certificates](https://smoothhiring.com/help/lms/hrms-integration/compliance-vs-lms-certificates).

---

## Troubleshooting

| Issue | Likely cause | Resolution |
|-------|--------------|------------|
| New hire has no LMS access | Employee missing **User ID** | Link User on Employee; re-save or run role fix |
| No auto-enrollment at onboarding | No published mandatory courses | Publish courses with **Is Mandatory** checked |
| Duplicate enrollments | Hook ran twice / manual + auto | Safe to ignore duplicates; LMS skips existing enrollments |
| HR cannot assign training | Missing Moderator role | Update [roles](https://smoothhiring.com/help/hrms/getting-started/user-roles-permissions) |
| Certificate not on HR file | No handoff process | Attach PDF to [Employee Document](https://smoothhiring.com/help/hrms/documents-compliance/employee-documents) |

---

## Related guides

### LMS integration (this section)

- [Employee Auto-Provisioning](https://smoothhiring.com/help/lms/hrms-integration/employee-auto-provisioning)
- [Onboarding Mandatory Training](https://smoothhiring.com/help/lms/hrms-integration/onboarding-mandatory-training)
- [Compliance vs LMS Certificates](https://smoothhiring.com/help/lms/hrms-integration/compliance-vs-lms-certificates)
- [Assign Training from HR](https://smoothhiring.com/help/lms/hrms-integration/assign-training-from-hr)
- [LMS Settings — General](https://smoothhiring.com/help/lms/settings/lms-settings-general)
- [Live Classes Overview](https://smoothhiring.com/help/lms/live-classes/overview)

### Smooth HR

- [Getting Started](https://smoothhiring.com/help/hrms/getting-started/overview)
- [Onboarding Overview](https://smoothhiring.com/help/hrms/onboarding/overview)
- [Documents & Compliance Overview](https://smoothhiring.com/help/hrms/documents-compliance/overview)
- [Employee Compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance)
- [People Overview](https://smoothhiring.com/help/hrms/people/overview)
- [Recruitment Overview](https://smoothhiring.com/help/hrms/recruitment/overview)
- [Performance Overview](https://smoothhiring.com/help/hrms/performance/overview)

---

_Last updated: May 2026_

---

## Smooth HR (HRMS)

| Guide | Link |
|-------|------|
| HR help home | [smoothhiring.com/help/hrms](https://smoothhiring.com/help/hrms) |
| Employee records | [hrms/people/employee-records](https://smoothhiring.com/help/hrms/people/employee-records) |
| Onboarding overview | [hrms/onboarding/overview](https://smoothhiring.com/help/hrms/onboarding/overview) |
| Onboarding templates | [hrms/onboarding/onboarding-templates](https://smoothhiring.com/help/hrms/onboarding/onboarding-templates) |
| Employee onboarding | [hrms/onboarding/employee-onboarding](https://smoothhiring.com/help/hrms/onboarding/employee-onboarding) |
| Documents & compliance | [hrms/documents-compliance/overview](https://smoothhiring.com/help/hrms/documents-compliance/overview) |
| Employee compliance | [hrms/documents-compliance/employee-compliance](https://smoothhiring.com/help/hrms/documents-compliance/employee-compliance) |
| Signature templates | [hrms/documents-compliance/signature-templates](https://smoothhiring.com/help/hrms/documents-compliance/signature-templates) |
