Migrate from TalentLMS to Moodle: what moves cleanly and what does not
If your renewal or per-active-user pricing is pushing you toward self-hosting, the core answer is this: standard SCORM, xAPI and cmi5 packages can be reloaded into Moodle, but completion history, course structure, groups and single sign-on all need separate work. The packages are the easy part. The learner records, the way courses were assembled inside TalentLMS and the identity setup are where migrations go wrong, so plan those as their own workstreams from the start. Data residency and lock-in are common reasons to make this move, and they also mean the export of learner data needs to be handled with the same care as the content. Most teams run this migration with an internal platform or learning operations team that already administers a server, supported by a Moodle Partner or an implementation partner for the parts they have not done before. Moodle's hosted options through MoodleCloud or Moodle Partners are a separate decision from self-hosting and should be compared on the same scope. Before you ask anyone for a quote, confirm with your own administrators how many courses are built inside TalentLMS rather than uploaded as packages, which identity provider will sign learners in, and whether your reporting depends on completion dates. Those three answers drive most of the effort and risk.
Reloading packages is the step most teams underestimate in the other direction: it usually works, but you still need to test each package in Moodle, check that its completion and score data reports back to the gradebook, and confirm that any package using a launch method outside the standard set behaves as expected. Courses authored inside TalentLMS are not packages, so they must be rebuilt in Moodle's course editor, which means the structure, quizzes and assessments are recreated by hand or with scripts. Branches and groups in TalentLMS map to Moodle categories and cohorts, but that mapping is a design decision, not an export. Decide whether permissions, reporting audiences and enrollments follow categories or cohorts before anything is moved. Single sign-on is a separate project. Moodle core includes authentication plugins such as LDAP, OAuth 2 and Shibboleth, and the SAML2 plugin is available from the Moodle marketplace if your identity provider speaks SAML. Confirm which protocol your identity provider supports and test sign-in with a pilot group before cutover. Ask any partner to show a written plan for package testing, record export and identity configuration, with the test evidence each step produces.
Which TalentLMS capabilities map to Moodle, and where rework is needed
This table maps the TalentLMS capabilities most employee training teams rely on to their Moodle equivalents, labeled clean, needs rework or gap. Use it to scope the migration, then confirm each row against your own TalentLMS export and the Moodle version you plan to run.
| Capability | Moodle equivalent and status | What to confirm or rebuild |
|---|---|---|
| Course delivery and enrollment | Clean: courses, enrolments and roles map to Moodle courses, enrolment methods and roles | Export user and enrolment lists from TalentLMS, then test enrolment methods such as manual, cohort sync or self-enrolment in staging |
| SCORM package playback | Clean: original SCORM packages can be re-uploaded as activities; Moodle core supports SCORM playback | Test each package in the target Moodle version, since player behavior and completion settings can differ from TalentLMS |
| xAPI and cmi5 playback | Needs rework: content must be reloaded and checked against the xAPI and cmi5 support in your Moodle version and plugins | Confirm the statement endpoint, actor identifiers and completion logic for each package before cutover |
| Courses authored inside TalentLMS | Gap: TalentLMS-native course builder content is not a standard package and must be rebuilt in Moodle | Inventory native courses, then rebuild them as Moodle activities or export them as packages where the authoring tool allows |
| Branches and groups | Needs rework: map branches to Moodle categories and groups to cohorts or group membership | Decide whether branch admins need delegated roles, and confirm category permissions before loading users |
| Completion and learner records | Needs rework: completion history must be exported and loaded separately from course packages | Ask TalentLMS for an export that includes completion dates and scores, then confirm how Moodle imports or displays historical records |
| Reporting | Needs rework: Moodle provides course and activity reports, but custom dashboards depend on your reporting setup | List every TalentLMS report your managers use and check that each has a Moodle report or a planned custom build |
| Single sign-on | Clean for LDAP, OAuth 2, Shibboleth, LTI and external database. SAML2 requires the SAML2 plugin from the Moodle marketplace | Confirm your identity provider protocol, then test login and account matching in staging before switching users |
| Certificates | Needs rework: certificates are available through a Moodle activity or plugin, with templates rebuilt from your originals | Confirm certificate wording, expiry rules and any compliance evidence that depends on the TalentLMS format |
| Notifications | Needs rework: Moodle sends messages and reminders, but schedules and templates must be recreated | Recreate each automated reminder and confirm delivery through your own mail server |
Which packages, records and identities to export and rebuild
A TalentLMS move breaks into four groups with different owners and different failure modes: course packages, courses built inside TalentLMS, learner records and user identities. Work through them separately, because a package can load cleanly while its completion history or login path still breaks. Ask TalentLMS for the export formats and field lists for each group, and test every one on a copy of the Moodle site before cutover.
Original SCORM, xAPI and cmi5 packages
The most reliable starting point is the original package file from the authoring tool, not a copy extracted from TalentLMS. Collect the source ZIPs from the course authors and check which standard each one declares, whether SCORM 1.2, SCORM 2004, xAPI or cmi5. Reload each package into a Moodle test course and launch it as a learner, checking that the player starts, bookmarks resume and the final status is recorded. Packages that open but report no completion are the most common failure and need a separate fix before the course goes live.
Courses built inside TalentLMS
Courses authored directly in TalentLMS's own editor usually do not exist as standalone packages, so they must be rebuilt in Moodle or exported in whatever format TalentLMS offers. Ask TalentLMS in writing whether course structure, lesson order, quizzes and attached files can be exported, and in which format. Expect to recreate quiz banks, certificates and completion rules by hand for any course that cannot be exported. Rebuilding is effort that scales with the number of courses and their interactivity, so inventory the catalog before estimating it.
Completion and learner records
Completion history, scores, attempt dates and certificate records are not carried inside a SCORM package, so they need their own export and mapping. Request the learner report export from TalentLMS with its field list, then map each field to a Moodle course, user and completion record. Keep the original export as an archive, since auditors and HR teams may ask for historical records that Moodle does not reproduce exactly. Confirm how past attempts and in-progress enrollments are represented before loading them.
User accounts, groups and SSO
Branches and groups in TalentLMS should map to Moodle categories for course placement and to cohorts for enrollment, so decide that structure before importing users. Export the user list with email, username, group and branch fields, then confirm which identifier will be unique in Moodle. Moodle core includes LDAP, OAuth 2 and Shibboleth authentication, and the SAML2 plugin covers SAML identity providers. Test sign-in with a pilot group before switching the identity provider, and plan how password resets and enrollments are handled during the cutover window.
How to sequence the Moodle migration from inventory to decommission
This sequence moves TalentLMS content, enrollments and completion history into Moodle in controlled stages, so each step produces a checked artifact before the next one starts. Teams end with a verified cutover and an archived TalentLMS record set that can be retained for audit.
Inventory courses, packages and groups
Export a list of every TalentLMS course, branch, group, user role and enrollment, and tag each course by how it was built: an uploaded SCORM, xAPI or cmi5 package, or content authored inside TalentLMS. Owners of training programs and the LMS administrator do this together, because only the program owner can say which courses are still required. The output is a package register that records the original file for each uploaded package, its version, its owner and its status (active, retired or to be rebuilt). The step is done when every course in TalentLMS appears in the register with a decision attached.
Map branches and groups to Moodle structure
Decide how TalentLMS branches become Moodle categories and how groups become cohorts or group memberships, then record the mapping for each one. Compliance and audit owners should review this mapping, since it determines who sees which reports and who is enrolled in mandatory training. The output is a mapping sheet that lists each TalentLMS branch and group, its Moodle category or cohort, the role assignments that carry over, and any groups that will be merged or split. The step is done when the program owners have signed the sheet.
Pilot with representative courses and test SSO
Install Moodle on a non-production environment, following the requirements for the chosen release, and load a small set of representative courses. Include at least one SCORM package, one xAPI or cmi5 package if you use them, and one course that was authored inside TalentLMS and must be rebuilt. Configure the identity provider in a test tenant and confirm that a sample of learners can sign in, are provisioned with the right cohorts, and launch each package. The output is a pilot test record listing each package, the result of launch and completion tracking, and the SSO test results. The step is done when every representative case passes or has a documented fix.
Migrate content and reconcile completion records
Load the full set of original packages into Moodle, rebuild the courses that were authored inside TalentLMS, and export completion history, scores and certificate dates from TalentLMS in a machine-readable form. Import these records into a staging table and reconcile each learner's status against the source export, flagging any mismatches in attempt counts, scores or dates. The output is a reconciled completion table with a count of matched and unmatched records and a short list of exceptions that the training owner has accepted or corrected. Compliance teams should confirm which completion fields are required as evidence, because the TalentLMS export may not contain every field the audit needs.
Run both platforms in parallel
Keep TalentLMS and Moodle live at the same time for a defined period agreed with the program owners, with new enrollments going to Moodle for courses that have already been reconciled. Compare progress and completion records between the two platforms each week and resolve differences before they grow. Help desk staff need a short guide that explains which platform to use for each course. The output is a parallel run log showing each discrepancy, its cause and its resolution, and a go or no-go decision that the program owners sign. The step is done when the log shows no open discrepancies in mandatory courses.
Cut over enrollments and sign the plan
Freeze new enrollments in TalentLMS, run a final delta export of completions and enrollments, and load the delta into Moodle. Switch the SSO entry point and the links that learners use to Moodle, and confirm that in-progress learners can resume their courses. The owner of the cutover signs a cutover plan that lists the time of the freeze, the final reconciliation totals, the rollback steps and the named person who can approve a rollback. The step is done when the final reconciliation matches the source and the signed plan is filed.
Archive TalentLMS and decommission
Export a complete archive of the TalentLMS data that your records and retention policies require, including course packages, completion history, user records and audit logs, and store it in a location your compliance team approves. Confirm the retention period with your legal and compliance owners, because it is set by your policies and regulations, not by this migration. Then remove user access, cancel the subscription when the contract allows, and close the integrations. The output is an archive manifest with checksums and a decommission record signed by the data owner. The step is done when the archive can be restored for a sample learner record and the subscription is closed.
How to run TalentLMS and Moodle in parallel and cut over safely
Run both platforms side by side, but keep one system of record for enrollments until the pilot passes. Until cutover, new enrollments and assessments stay in TalentLMS, and the Moodle pilot uses a copy of the same courses and a small test group of learners. Each pilot course should be launched from Moodle, completed, and then checked against the TalentLMS record for the same learner. Decide in writing who signs off the pilot, which courses are in scope, and what counts as a pass, such as matching completion status, score and completion date for every sampled learner. Do not let administrators enroll the same person in both systems for production training, because duplicate records are the most common source of reconciliation errors.
Carry completions across with a reconciliation check rather than trusting a single export. Export completion and score data from TalentLMS, then compare it against the Moodle course completion data for the same learners and courses, and record every mismatch with an owner and a decision: re-issue the completion in Moodle, accept the TalentLMS value as historical, or correct it at source. Keep the TalentLMS export as evidence of what was migrated. At cutover, freeze the source by disabling new enrollments and course edits in TalentLMS, announcing the freeze date to learners, and running a final delta export. Before you go live on Moodle, verify two install-time points: the Moodle 5.1 web server document root must point to the new public directory, otherwise the site may show directory listings or errors, and a site must already be on Moodle 4.2.3 or later to upgrade. Confirm the exact PHP and database versions for your target release in the Moodle release notes before provisioning.
Keep TalentLMS readable after cutover for audit access rather than deleting the tenant. Retain at least one administrator account with read-only access, confirm with your compliance owner how long historical records must be available, and check with TalentLMS how exports and account access work under your contract, since these terms are not covered by the facts supplied for this page. Record the export files, the reconciliation log and the sign-off in your own evidence store, so auditors can trace a learner's record from the old platform to Moodle. Finally, schedule the TalentLMS subscription review so that billing does not continue for seats no one uses, and set a retirement date only after the audit window you have confirmed.
What drives migration cost and duration, and how to keep each down
This table lists the main factors that raise or lower the effort of moving from TalentLMS to Moodle, with why each matters and how to reduce it. Read each row as a lever: the drivers you can control earliest, such as inventory and mapping decisions, usually have the largest effect on the total internal and services effort.
| Driver | Why it changes cost or effort | How to keep it down |
|---|---|---|
| Courses authored inside TalentLMS | Content built in the TalentLMS editor has no portable package, so each course must be rebuilt in Moodle's activities and resources, which is staff time for instructional designers. | Export or rebuild only courses still in use, retire outdated ones, and ask whether TalentLMS can export your content before you commit to a rebuild plan. |
| Reloaded SCORM, xAPI and cmi5 packages | Original packages from authoring tools are usually reloadable, but each one still needs a test launch, a check of completion and score reporting, and fixes for tracking mismatches. | Inventory every package with its version, keep the original source files, and test a representative sample per package type before bulk upload. |
| Completion records and learner history | Completion history and attempt data must be exported and mapped to Moodle's course completion and grade records, which is often the most error-prone step. | Agree a retention scope with compliance owners, export only what regulators or auditors need, and validate totals against a reconciliation report. |
| Branches and groups mapped to categories and cohorts | Each TalentLMS branch and group needs a decision on whether it becomes a course category, a cohort, a group or a role, and the mapping drives enrollment logic. | Draw the mapping on one page with business owners before any import, and limit the number of categories and cohorts to what reporting requires. |
| Single sign-on setup | Switching identity providers means configuring authentication plugins, testing login flows, and mapping attributes, and each additional identity source adds testing. | Confirm which identity provider you use, test the chosen Moodle authentication plugin in a staging site, and migrate users in one identity source first. |
| Custom reports and dashboards | Reports built in TalentLMS must be rebuilt with Moodle's reporting tools or custom reports, and each unique report adds build and validation time. | List reports by business use, keep only those tied to a decision or audit requirement, and rebuild the rest after go-live. |
| Certificate templates | Certificates are configured per course or per certificate activity, so each template must be recreated and checked for layout and issue rules. | Consolidate templates to a small set of shared designs, and confirm which legacy certificates must be reissued or simply recognized. |
| Hosting, PHP and database version choices | Moodle 5.1 requires 64-bit PHP 8.2 or later and specific database versions, and the web root must point to /public, so the platform baseline affects setup and testing time. | Pick a supported Moodle release and its listed PHP and database versions up front, and confirm the requirements for your chosen release on the Moodle release notes before provisioning. |
| Testing, training and administrator onboarding | Learners, managers and administrators need validation and training on new navigation and reports, and gaps found late cause rework. | Plan user acceptance testing with a fixed set of scenarios, and train administrators on Moodle's categories, cohorts and roles before the cutover date. |
| Cost components over time | Internal staff time, implementation services, hosting, plugins and ongoing administration are paid by different parties, and some recur after go-live. | Ask any provider to separate one-time migration work from recurring hosting, plugin maintenance and administration in a written quote. |
What usually goes wrong when moving from TalentLMS to Moodle
Most failed LMS cutovers trace back to a few predictable gaps: records that do not satisfy certification rules, packages that behave differently after reload, and identity data that does not line up. The cards below pair each risk with a check to run before the cutover date, so the team can confirm the move in a test site first.
Completion records that fail certification rules
TalentLMS completion history may not map cleanly to what your certification or compliance program requires, such as completion dates, attempt counts, scores and the course version a learner passed. Export a sample of records and compare them field by field with the audit requirement. Agree in writing with your compliance owner which fields are the system of record before you import anything into Moodle.
Package tracking that changes after reload
A SCORM, xAPI or cmi5 package can report progress differently once it runs in Moodle than it did in TalentLMS, for example when suspend data, bookmarks or completion thresholds are read differently. Load a representative package from each standard into a Moodle test site and launch it as a learner. Confirm that status, score and resume behavior match the original before you rely on the reloaded course.
Learners losing progress at cutover
If learners are mid-course when you switch platforms, their in-progress attempts may not carry over, and they can restart required modules. Choose a cutover window when few courses are active, freeze new enrollments in TalentLMS for that period, and decide in advance whether open attempts are migrated or closed. Tell learners in writing how to resume after the switch.
SSO attribute mismatches
Moodle matches an account to a login through the identity attributes your provider sends, so a different email format, a missing department attribute or a changed username can create duplicate accounts or block sign-in. Check which attributes TalentLMS currently receives from your identity provider and map them to Moodle authentication fields. Test SAML or OAuth 2 sign-in with a pilot group before opening the site to everyone.
Missing or inconsistent user identifiers
Completion records are only useful if they can be tied to the right person, and TalentLMS accounts may use employee IDs, emails or internal usernames inconsistently. Build a single mapping file keyed on a stable identifier before import, and flag accounts with no match or with duplicate emails. Resolve these exceptions with HR or the business owner, since a wrong match transfers one person's history to another.
Misconfigured web roots after upgrade
Moodle 5.1 requires the web server document root to point to the /public directory rather than the main Moodle folder. Teams that carry an older web server configuration forward can expose directory listings or show errors on day one. Add the document root change to the deployment runbook, verify it on the test site, and confirm PHP and database versions meet the release notes before any upgrade.
Underestimated rebuild effort for in-platform courses
Courses built directly in TalentLMS do not come across as packages, so each one needs to be recreated in Moodle, including quizzes, media, enrollment rules and certificates. Inventory every course by how it was built, then estimate rebuild effort per course rather than per platform. Ask the implementation partner for a written breakdown of that work so it is not discovered during the cutover sprint.
How the migration changes by organization size and starting point
A small internal training team usually has a short course list, a handful of audiences and few reporting obligations. Most of the content was built outside TalentLMS in an authoring tool and uploaded as a package, so the migration is mainly a reload and a check. Courses built directly in the TalentLMS editor are the exception and need to be rebuilt in Moodle, which is usually the bigger piece of work for a team this size.
- Package inventory: List every uploaded SCORM, xAPI and cmi5 package with its version, source tool and whether the original file is still on hand.
- Authored-in-platform courses: Identify courses built inside TalentLMS, since their structure must be recreated in Moodle rather than reloaded.
- Simple grouping: A few audiences usually map to Moodle cohorts or a single category structure, which keeps the design light.
- Completion history: Decide whether past completions need to carry over or whether a clean start with a dated archive is acceptable for auditors.
- Login method: Confirm whether learners sign in with TalentLMS passwords or through a company identity provider, because that decides the SSO work.
Confirm with your team which packages still exist as source files, since a missing original is the main reason a small migration takes longer than expected.
A larger employee programme usually runs many branches, role-based paths and compliance tracking that someone must be able to show to an auditor. The content is more varied, the reporting history matters more, and the number of people who must be trained in the new system during cutover is higher. The migration scope grows mainly in mapping and records, not in package reloading.
- Branch mapping: Translate each TalentLMS branch and group into a Moodle category, cohort or enrolment rule, and document which structure is the source of truth.
- Compliance records: Export certificate and completion history with dates, scores and attempt counts, then decide how those records will be held and retrieved after cutover.
- Parallel running: Plan a period in which both systems are available so that due dates and renewals do not lapse during the move.
- Identity and roles: Map TalentLMS administrator, manager and instructor roles to Moodle roles, and confirm the SAML2 or LDAP setup that replaces existing SSO.
- Reporting rebuild: Recreate every scheduled report the business relies on, because Moodle reports are configured again rather than carried across.
Ask for the count of active branches, certificate types and the reports that leadership or compliance read each month before any scope is agreed.
A partner or customer academy differs because its learners are outside the company, its catalogue is often sold or shared, and branding and multi-site use may matter more than internal compliance. Moodle can serve these audiences, but some teams find that Open edX fits the external catalogue and authoring model better. The decision should be made before any packages are reloaded.
- Audience and access model: Confirm whether external learners need self-registration, invitation-only access or sign-in through a partner's identity provider.
- Catalogue and branding: Document how courses are sold, grouped and branded for each partner, since these are often TalentLMS branches with separate look and feel.
- Platform choice: Compare Moodle with Open edX on authoring in Studio, course catalogue and certificates, and the operational load each one adds.
- Content rights: Check licences for partner-supplied material before reloading it into a new self-hosted system.
- Support obligations: Confirm who answers learner questions and how issues are escalated, because external academies carry service expectations that internal programmes often do not.
Before committing to Moodle for this group, confirm the expected learner volume and whether a dedicated Open edX evaluation is needed, since the answer changes both the build and the hosting.
What buyers ask before moving from TalentLMS to Moodle
How much effort and cost does a TalentLMS to Moodle migration involve?
The cost is driven mostly by labor, not software, because Moodle is free under the GNU General Public License version 3. Expect one-time costs for planning, hosting setup, course reloading or rebuilding, data export and testing, SSO configuration, and staff training. Recurring costs cover hosting, database and backup operation, patching, plugin maintenance and administration. The main variables are how many courses are authored inside TalentLMS versus packaged elsewhere, how much completion history must move, and how many branches and groups need mapping. Ask any provider for a quote built from a written scope that lists each of these components separately, with the Moodle version and hosting model named.
How long does a migration from TalentLMS to Moodle typically take?
No published duration applies to every organization, so treat any single number with caution. The timeline is set by the number of courses, how many were built inside TalentLMS and must be rebuilt, the volume of completion records to reconcile, the complexity of branch and group structures, and how many SSO and reporting integrations must be tested. Your Moodle version also matters: Moodle 5.1 requires sites to be on Moodle 4.2.3 or later to upgrade, and Moodle 5.3 requires Moodle 4.4 or later, so an older install may need an extra upgrade step first. Ask for a phased plan with a pilot course set and a cutover window agreed in writing.
Can our team migrate from TalentLMS to Moodle without outside help?
A team with Linux, PHP and database administration experience and an instructional design lead can do it internally, especially for a small course catalog. Most teams underestimate the operational side: web server configuration, database sizing, backups, upgrades on the April and October major release cycle, and plugin compatibility. Moodle publishes a six-month release cadence, so someone must own upgrades every year. Outside help is most useful for hardening, moving completion data, validating reports and setting up SSO, or for ongoing support through a retainer. Decide which parts stay in-house and which go to an implementation partner before you agree a scope.
What does our staff need to contribute during the migration?
Your staff must supply knowledge that no vendor has. Training and compliance owners need to confirm which courses are mandatory, what passing criteria apply, and which completion records are audit evidence. Instructional designers must identify courses built in TalentLMS's own authoring features, since those are not simply reloaded. IT must provide identity provider access, DNS, certificates, and a backup target. HR or operations must validate the branch and group structure that will become Moodle categories and cohorts. Plan time for reviewing sample learner accounts and reports before cutover, because errors in assignments tend to surface after go-live.
Can completion history and learner records move from TalentLMS to Moodle?
Completion history usually has to be exported and migrated separately from the course packages. Standard SCORM, AICC and xAPI packages can be reloaded, but the learner progress and completion records stored in the source LMS do not travel inside those files. Request an export of user, enrollment, completion and score data from TalentLMS, then confirm with the migration provider how each field maps to Moodle's completion and grade records. Keep the original export as an archive for audit purposes, and check with your compliance team how long records must be retained. Validate a sample of learners against the source before you retire TalentLMS.
Will our SCORM and xAPI content still play in Moodle?
Usually yes for standard packages. Moodle supports SCORM and xAPI through its activity modules, and the original packages from authoring tools can be reloaded without rebuilding. Problems tend to appear with packages that rely on vendor-specific player features, unusual launch methods, or content hosted on external servers. Test every package in a Moodle staging site and record which ones fail. Confirm with your content owners whether cmi5 packages are in use, and check the Moodle plugin and activity documentation for your target version before you promise coverage. Packages that fail often need a republish from the original authoring tool.
What happens to single sign-on when we move from TalentLMS to Moodle?
SSO has to be rebuilt for Moodle, not carried over. Moodle core includes authentication plugins for manual accounts, email self-registration, external database, LDAP, LTI, OAuth 2, Shibboleth and web services. If your identity provider speaks SAML 2.0, the community SAML2 Single sign on plugin from the Moodle plugin marketplace is the usual route, and it adds maintenance to your upgrade plan. Plan for a parallel test period, user matching by a stable identifier, and a fallback login path for administrators. Ask any provider to confirm the protocol, plugin version and test cases in writing before cutover.
Does DeployOpen handle the TalentLMS to Moodle migration?
DeployOpen plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside your own infrastructure, including Moodle. Most engagements are fixed-scope, with scope, deliverables and timelines agreed in writing before work starts. Ongoing support and upgrades are available as retainers. DeployOpen does not publish a price list, so a quote follows from the written scope. DeployOpen prepares systems and evidence for compliance assessments but does not issue audit reports or certifications.
How DeployOpen scopes, runs and supports a TalentLMS to Moodle migration
DeployOpen plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside your own infrastructure, so a TalentLMS to Moodle move is handled as a fixed-scope engagement with written deliverables. The work covers the Moodle environment, the course and completion migration, the SSO switch and the handover your administrators need to run the platform afterward.
How we scope
- Inventory every TalentLMS course, package type (SCORM, xAPI or cmi5) and branch to decide what reloads and what gets rebuilt.
- Agree the target Moodle version and hosting location in writing, checked against the Moodle 5.1 or 5.3 database and PHP requirements.
- Define how branches and groups map to Moodle categories and cohorts, and which completion records must carry over.
How we build
- Stand up Moodle in your cloud account, data center or air-gapped network, with the web root set to the /public directory.
- Reload original packages, rebuild courses authored inside TalentLMS, and test each SCORM, xAPI and cmi5 launch and completion record.
- Configure SSO against your identity provider, using Moodle's core authentication plugins or the SAML2 plugin where your setup needs it.
How we hand over
- Document the Moodle configuration, category and cohort structure, enrollment rules and the migration steps actually performed.
- Provide a reconciliation report comparing learner counts, completions and course lists between TalentLMS and Moodle before cutover.
- Train administrators on course creation, reporting, backups and upgrades so your team can run the platform after the engagement ends.
How we support
- Ongoing support, upgrades and continuous testing are available as retainers after handover.
- Plan Moodle point releases and major upgrades against the published release schedule, with each upgrade scoped in writing.
- Confirm with your team which support level, testing cadence and backup retention you need before the retainer is agreed.

