Troubleshoot SCORM Errors

Fix common SCORM problems and get learners back to learning

Michael Hughes avatar
Written by Michael Hughes
Updated over a week ago

We've gathered the most common errors that users encounter when using SCORM files in Seismic Learning. Use this guide to fix the issue bedeviling you, and don't hesitate to get in touch if the error you're seeing isn't covered here.


Enable Third-Party Cookies

SCORM uses cookies to determine if learners are authorized to view course content. To enable cookies, select the link below that corresponds to your browser.

📝 Note: 'Prevent Cross-Site Tracking' and 'Enable Javascript' must be toggled.

Once third-party cookies have been enabled, the user will need to clear their cache and cookies.


"Missing key missing key-pair-id query parameter or cookie value"

If you see this message when trying to launch SCORM Cloud training you may need to enable pop-up windows. Select the link below that corresponds to your browser.


Completions in SCORM Cloud Aren't Reflected in Seismic Learning

How SCORM Files Communicate with Learning

SCORM files communicate with LMSs like Seismic Learning via API. Only SCORM files can initiate communication; the LMS is a passive entity that simply responds to API calls made by the content. The LMS launches content and responds to requests.

The initialize method, LMSInitialize, tells the LMS that SCORM content would like to begin a communication session. All SCORMs must call Initialize before performing any other communication. The LMS returns a boolean indicating the success or failure of the initialization. Typically, LMSs will return a “true” value.

The Terminate method, LMSFinish, tells the LMS that content is done communicating. All SCORMs must call LMSFinish. What action SCORM files use to call LMSFinish is up to the author. We recommend that LMSFinish be called in response to some learner action, preferably one that is natural and easy for the learner to do. For example, the LMSFinish call can be triggered when learners arrive at the final slide of a training. The boolean value returned by the LMS indicates whether or not SCORM data was successfully sent to the server.

If LMSFinish is not called when a SCORM file is completed, or if the call is interrupted, the completion may not be reflected in Seismic Learning.

Here Are Three Common Reasons this Happens

  1. The learner did not take the action that calls LMSFinish. For example, there may be an “exit” button at the end of the SCORM that sends this message back to the LMS, but the learner did not click the “exit” button to trigger the LMSFinish call. Instead, the learner might have closed the tab or navigated away from the SCORM file after meeting the standards for completion but without clicking “exit”. In this case, the learner can recover by going back into the SCORM and taking the required action (clicking the “exit” button to call LMSFinish and save their progress in Learning).

  2. The SCORM is not written to call LMSFinish. If the SCORM has no way to call LMSFinish, then the learner will never be able to officially complete the SCORM and update Learning. If this is the case, we recommend updating the SCORM file to call LMSFinish or enabling Show navbar with finish button when adding the SCORM file to a lesson.

  3. The SCORM file only calls LMSFinish when its window is closed. When the LMSFinish call is written this way, the SCORM file 'assumes' that it's being displayed in its own external window. If this file is then embedded in a Learning SCORM lesson, the LMSFinish call will never be triggered. When this happens, we recommend enabling Open in new window when adding the SCORM file to a lesson. This way, when a learner closes the SCORM window, it will call LMSFinish and update Learning.


Next Button in the Navbar

If the Next button in SCORM’s navigation bar is allowing users to complete SCORM lessons without taking the full lesson, we recommend updating the SCORM file to include a Finish or Exit button in the file itself. This button should call LMSFinish when selected.

If an LMSFinish call is included in the SCORM file, the lesson does not need to have "Show navbar with finish button" option enabled when creating the SCORM lesson. The user can select the Finish or Exit button in the file and it marks the user complete in Seismic Learning.


Users Receive 403 Errors When Accessing SCORM Lessons

You are not authenticated to access this content. Reason: {"code":403,"type":"unknown","message":"FORBIDDEN"}

This error can occur for users when connected to a VPN. Have the user disconnect from the VPN (if they are allowed) and re-launch the SCORM file.

If they are able to disconnect from the VPN and continue running into issues the user needs to check the following on their desktop:

  • Enable Third-Party Cookies

  • Enable Pop-ups (if the course launches in a new window)

If the issue continues to persist, the user needs to contact their IT team to see if they have allowlisted *scorm.com.

After all three items have been addressed, and the error persists and being connected to a VPN is mandatory, then the customer has two options for resolving it:

  1. Set the ipAddress=false in the LaunchAuth when using buildRegistrationLaunchLink.

  2. Set the ipAddress=false in the LaunchAuth at the application level. This saves from having to ser it at the launch link level.

For Customers Using Zscaler Cloud Security

Customers who use Zscaler's security service edge (SSE) platform may encounter the following error:

You are not authenticated to access this content. Reason: {“message”: ”Requester’s IP address does not match the address that was registered.”}

This issue is likely due to a misclassification in the Zscaler policy that performs SSL inspection. If the troubleshooting steps above fail to remedy the issue, follow these additional steps.

  1. Ask your Zscaler support team to bypass scorm.com from SSL inspection in the ZScaler tool.

  2. Instruct users to launch the Zscaler Client Connector app and manually update policies from app profiles, then restart the service.

  3. Open the SCORM lesson in Seismic Learning.

Additional Resources for Resolving 403 Errors


Users Can't Complete Articulate 360 SCORM Lessons

If you're using SCORM files from Articulate 360, follow the advice in this article on reporting and tracking. Along with including an exit option for each course calling Terminate/LMSFinish when selected.

If the recommendations above are being followed, an additional setting in the SCORM file may need adjusting.

  • Inside the SCORM's .zip file there is a file titled 'scormdriver.js.' This file is either going to live in the root of the package or inside a folder called 'lms'. Open this file in a text editor of your choice, search for:

    USE_2004_SUSPENDALL_NAVREQ=false;

    and update it to:

    USE_2004_SUSPENDALL_NAVREQ=true;

Save the file and re-zip the package, then re-upload the package into the SCORM lesson in Seismic Learning.


Articulate 360: "Activity ID 'xxxxxxxxxxx_course_id' is not an absolute URI"

Per our friends at Articulate, "When uploading Articulate Tin Can API content to SCORM Cloud, you may encounter the following message":

The given tincan.xml was incompatible with latest version of the Tin Can API specification. Error was: Activity ID 'xxxxxxxxxxx_course_id' is not an absolute URI

This is a parser warning related to the version of the xAPI (Tin Can API) spec being used. You're seeing the warning for one of two reasons.

  1. You need to update your content to the latest xAPI version, or

  2. Your course identifier (in the Tin Can publish settings) has a space or an illegal character in it. A list of illegal characters can be found here.


Questions? Contact the Support team at support@lessonly.com

Did this answer your question?