The Death of SCORM and the Rise of the Experience API
For over two decades, SCORM (Shareable Content Object Reference Model) has been the undisputed standard for e-learning interoperability. However, SCORM was designed for a desktop-bound era. It relies on a highly rigid JavaScript API that only functions while the learner is actively logged into the LMS via a web browser. It can track completions, time spent, and quiz scores, but it completely fails to capture the reality of modern learning: mobile apps, virtual reality (VR) simulations, serious games, and offline on-the-job training.
Enter the Experience API (xAPI, formerly known as Tin Can). Moodle xAPI integration decouples the learning content from the LMS platform itself. It unlocks the ability to track any learning experience, anywhere, across any device, and funnel that rich behavioral data back into a centralized analytics engine.
Deconstructing xAPI: Statements, JSON, and the LRS
Unlike SCORM's complex communication model, the architectural elegance of xAPI lies in its simplicity. It relies on generating simple JSON-based statements structured as "Actor-Verb-Object" (e.g., "Jane Doe - completed - CPR Training VR Simulation"). These statements are sent securely via a standard RESTful HTTP POST request to a Learning Record Store (LRS).
// Example of a basic xAPI JSON statement payload
{
"actor": {
"mbox": "mailto:jane.doe@enterprise.com",
"name": "Jane Doe",
"objectType": "Agent"
},
"verb": {
"id": "http://adlnet.gov/expapi/verbs/completed",
"display": { "en-US": "completed" }
},
"object": {
"id": "http://enterprise.com/training/cpr-vr",
"definition": { "name": { "en-US": "CPR Training VR Simulation" } },
"objectType": "Activity"
},
"result": { "score": { "raw": 95, "min": 0, "max": 100 }, "success": true }
}While Moodle 3.9+ includes a basic internal logstore (logstore_xapi), enterprise deployments require an external, high-performance LRS (such as Learning Locker or Watershed). The LRS acts as a specialized NoSQL database, optimized exclusively for receiving, validating, and querying millions of xAPI JSON statements concurrently.
Bridging the Gap: Integrating an External LRS with Moodle
If the data is being sent from a mobile app directly to an external LRS, how does Moodle know the student completed the course? This is where custom Moodle integration development comes into play. Developers must build a custom Moodle plugin (often an Enrolment or Local plugin) that establishes a secure OAuth 2.0 or Basic Auth connection to the external LRS.
This integration script acts as a bridge. It periodically queries the LRS REST API (e.g., GET /xAPI/statements?agent=jane.doe&verb=completed). When it detects a valid completion statement from the VR headset, the plugin programmatically updates the corresponding Moodle Gradebook and marks the Moodle course activity as complete. This creates a unified, single source of truth for the learner's transcript within Moodle, despite the learning occurring entirely off-platform.
Transform Your Publishing Workflow
Our experts can help you build scalable, API-driven publishing systems tailored to your business.
Solving the Offline Mobile Learning Challenge
One of the most powerful architectural advantages of xAPI is its native support for disconnected environments. Imagine a field technician completing a safety checklist on an iPad deep within a mining facility with zero Wi-Fi connectivity. SCORM would instantly fail and lose the data.
With xAPI, the custom mobile application caches the generated JSON statements locally using SQLite or IndexedDB. The app listens for the device's network state to change. Once the iPad reconnects to a 4G or Wi-Fi network, a background worker process bulk-pushes the queued xAPI statements to the LRS. Crucially, because each xAPI statement contains an immutable timestamp attribute generated at the exact moment the action occurred offline, the LRS and Moodle record the completion accurately, ensuring strict compliance reporting.
Ready to Modernize Your Learning Analytics?
Moving from SCORM to xAPI requires specialized knowledge of REST APIs, JSON data structures, and LRS architecture. MetaDesign Solutions offers advanced Moodle development and xAPI integration services. We help enterprises build custom xAPI emitters for mobile apps, deploy scalable Learning Locker LRS clusters, and integrate off-platform analytics seamlessly back into the Moodle Gradebook. Contact our learning analytics team today to discuss your technical requirements.

