How to Integrate SCORM with Moodle, Canvas, and Blackboard
AllureConnect currently integrates with third-party LMS platforms through SCORM 1.2 or SCORM 2004 dispatch packages and hosted launch URLs. Moodle, Canvas, and Blackboard can each import a dispatch ZIP as a normal SCORM activity.
Current availability: AllureConnect does not expose LTI 1.3 registration, login, JWKS, launch, Deep Linking, or grade passback endpoints today. The LTI details below explain the industry standard only; they are not AllureConnect configuration instructions.
Two Integration Approaches
Before diving into platform-specific steps, understand the two fundamental ways to connect SCORM content to an LMS:
- LTI 1.3— Learning Tools Interoperability is a standard for connecting external tools to an LMS. It requires a tool provider with real registration, OIDC, signing-key, launch, and optional grade-service endpoints. AllureConnect does not provide those endpoints today.
- Content Dispatch— AllureConnect generates a lightweight SCORM wrapper that you import into the LMS like any other SCORM package. When launched, the wrapper redirects to AllureConnect-hosted content. This works with any SCORM-compliant LMS, even those that do not support LTI.
Content dispatch is the supported AllureConnect approach today. If LTI is mandatory, treat it as a product gap and use an LTI-capable provider until AllureConnect publishes real endpoint documentation.
Moodle Integration
Moodle supports both SCORM imports and LTI tools. For AllureConnect, create a SCORM dispatch and add it as a SCORM package activity.
Step 1: Generate a SCORM Dispatch
Create a dispatch for the source package in AllureConnect, configure the intended access controls, and download its SCORM ZIP.
Step 2: Import the Dispatch into Moodle
In the destination Moodle course, click Add an activity or resource, select SCORM package, upload the dispatch ZIP, and save the activity. No External Tool or placeholder LTI configuration is required.
Step 3: Verify a Student Launch
Launch the Moodle activity as a student, complete the course, and confirm that the intended AllureConnect dispatch records the session and completion.
Canvas Integration
Canvas supports SCORM imports and LTI tools. AllureConnect currently uses the SCORM import path, not a Canvas LTI Developer Key.
Step 1: Generate a SCORM Dispatch
Create a dispatch for the source package in AllureConnect, set the intended access controls, and download its SCORM ZIP.
Step 2: Import the Package
Use Canvas's SCORM content workflow to import the dispatch ZIP:
- Import the ZIP as SCORM content.
- Choose inline or new-window launch based on institutional policy.
- Publish the activity only after a student-role launch succeeds.
AllureConnect does not provide a Canvas LTI client ID or settings page today. Do not create a Developer Key with placeholder values.
Step 3: Verify the Learner Launch
Open the imported activity as a learner. Confirm that the course opens and that session progress reaches the intended AllureConnect dispatch.
Canvas-Specific Notes
- SCORM completion and LTI AGS grade passback are different workflows. AllureConnect does not provide AGS today.
- Test the dispatch ZIP under the same account and course permissions learners will use.
- AllureConnect does not currently offer an LTI Deep Linking content picker.
Blackboard Integration
Blackboard supports SCORM package imports in its current course workflows. Use an AllureConnect dispatch ZIP rather than an LTI Tool Provider registration.
Step 1: Generate a SCORM Dispatch
Create a dispatch for the source package in AllureConnect, configure its access controls, and download the generated SCORM ZIP.
Step 2: Import the Package
Add the ZIP through Blackboard's SCORM content-package workflow:
- Use the package's SCORM version when prompted.
- Allow learner attempts according to the course policy.
- Test inline and new-window behavior before rollout.
There is no AllureConnect LTI deployment or JWKS configuration to copy today.
Step 3: Verify the Learner Launch
Open the imported SCORM activity with a learner account and confirm that progress reaches the intended AllureConnect dispatch.
Blackboard Ultra vs Original
Blackboard navigation varies by deployment. Use the SCORM package import flow exposed by your administrator rather than relying on an undocumented AllureConnect LTI placement.
- Confirm the exact import path with the Blackboard administrator.
- Keep the downloaded dispatch ZIP unchanged during import.
- Verify launch and completion with a learner-role account in the target experience.
Alternative: Content Dispatch
Content dispatch is the current AllureConnect integration path. It generates a lightweight SCORM package (a dispatch ZIP) that you import into the LMS like any other SCORM course.
The dispatch package contains a thin HTML wrapper that, when launched, redirects to AllureConnect-hosted content. From the learner’s perspective, the experience is identical: the course opens inside the LMS. From your perspective, all tracking data flows through AllureConnect rather than being siloed in the client’s LMS.
This approach works with any LMS that supports SCORM 1.2 or SCORM 2004 imports, including Moodle, Canvas, Blackboard, Cornerstone, SAP SuccessFactors, Docebo, TalentLMS, and dozens of others.
Common Troubleshooting
| Issue | Cause | Fix |
|---|---|---|
| Content does not load (blank iframe) | CORS or X-Frame-Options blocking | Ensure AllureConnect domains are in your LMS’s allowed frame sources. Check the browser console for CSP errors. |
| Popup blocker prevents launch | LMS opens content in a new window | Configure the SCORM activity to launch inline when supported. If inline is not possible, instruct learners to allow popups for the LMS domain. |
| Completion not appearing | SCORM commit did not reach the dispatch session | Check the learner session in AllureConnect and inspect the browser console and network log for failed commit requests. |
| Launch returns 401 | Incomplete or expired signed launch URL | Import a fresh dispatch ZIP and make sure the LMS opens the full launch URL generated by AllureConnect. |
| SCORM data not saving between sessions | Dispatch wrapper using wrong launch mode | Ensure the dispatch package is configured for normal launch mode (not review). Check that the LMS is not re-creating registrations on each launch. |
Next Steps
Once your LMS integration is working, consider these enhancements:
- Set up webhooks to receive real-time completion notifications instead of polling the AllureConnect API. See our webhook setup guide.
- Use content dispatch if you distribute content to multiple client LMSs. See our dispatch guide.
- Enable analytics in the AllureConnect dashboard to track learner engagement, completion rates, and score distributions across all your integrations.