Credentium® Integration - Moodle Plugin Overview
This article provides an overview of the Credentium® Integration plugin for Moodle, its features, and how it integrates with your Moodle learning management system.
What is the Credentium® Integration Plugin?
The Credentium® Integration plugin (displayed as "Credentium® Integration" in Moodle) is a local plugin that integrates Moodle with the Credentium digital credential platform. It automatically issues verifiable digital credentials to students when they complete courses.
Key Benefits:
- Automatic Issuance - Credentials are issued automatically when students complete courses
- Grade Integration - Optional inclusion of course grades in credentials
- Multi-Tenant Support - Separate API credentials for different course categories (v2.0+)
- European Standards - Issues credentials compatible with European Digital Credentials (EDC)
Requirements
Moodle Version
- Minimum: Moodle 4.5
- Supported: Moodle 4.5 and 5.0
PHP Version
- Minimum: PHP 7.4
- Recommended: PHP 8.0+
Moodle Features Required
- Course completion tracking enabled
- Scheduled tasks (cron) running regularly
- Outbound HTTPS connectivity to Credentium API
Credentium Requirements
- Active Credentium organization account
- API credentials (API URL and API key)
- At least one active credential template
Current Version
Version: 2.0.4 Build: 2026012700 Maturity: Stable Latest Releases: GitHub Releases
Key Features
Automatic Credential Issuance
When a student completes a course:
- Moodle triggers a course completion event
- The plugin creates an issuance request
- A background task processes the request
- The credential is issued via Credentium API
- The student receives their credential in their Credentium Wallet
Grade Integration
Optionally include the student's final course grade with the credential:
- Grade is captured after completion event
- Sophisticated freshness validation ensures accurate grades
- Supports waiting for gradebook aggregation
Multi-Tenant Support (v2.0+)
For organizations with multiple departments or programs:
- Configure separate API credentials per course category
- Each category can connect to a different Credentium organization
- Categories inherit settings from parent categories
- Rate limiting per category
Template Caching
The plugin caches credential templates from Credentium:
- Reduces API calls
- 1-hour cache duration
- Per-category cache isolation in multi-tenant mode
How It Works
High-Level Flow
Student Completes Course
↓
Moodle fires course_completed event
↓
Plugin creates issuance record (status: pending)
↓
Background task processes the request
↓
API call to Credentium issues credential
↓
Student receives credential in Credentium Wallet
Processing Details
- Event Detection: The plugin listens for Moodle's
course_completedevent - Validation: Checks if the course is configured for credential issuance
- Queuing: Creates a pending issuance record and queues a background task
- Grade Handling: If grade sending is enabled, waits for grade aggregation
- API Call: Sends user data and grade to Credentium API
- Status Update: Updates the issuance record with success or failure
Plugin Architecture
File Structure
local/credentium/
├── classes/
│ ├── api/client.php # API integration
│ ├── observer.php # Event handlers
│ └── task/ # Background tasks
├── db/
│ ├── install.xml # Database schema
│ ├── events.php # Event registrations
│ └── tasks.php # Scheduled tasks
├── lang/
│ ├── en/ # English strings
│ └── pl/ # Polish strings
├── settings.php # Global configuration
├── course_settings.php # Course configuration
├── category_settings.php # Category configuration
├── index.php # Admin report
└── version.php # Plugin metadata
Database Tables
| Table | Purpose |
|---|---|
local_credentium_issuances | Tracks all credential issuance attempts |
local_credentium_course_config | Course-level settings |
local_credentium_category_config | Category-level API credentials (multi-tenant) |
local_credentium_templates_cache | Cached credential templates |
User Roles and Permissions
Capabilities
| Capability | Who Has It | Purpose |
|---|---|---|
local/credentium:manage | Site managers | Manage global plugin settings |
local/credentium:managecourse | Managers, editing teachers | Configure course credential settings |
local/credentium:managecategory | Category managers | Configure category API credentials |
local/credentium:viewreports | Site managers | View issuance reports |
local/credentium:viewowncredentials | All users | View own credentials |
Supported Languages
- English (en)
- Polish (pl)
What's New in Version 2.0
Multi-Tenant Support
- Configure separate API credentials per course category
- Courses inherit settings from parent categories
- Per-category rate limiting
- Pause/resume issuances per category
Improved Grade Handling
- Sophisticated grade freshness validation
- Retry logic for grade aggregation delays
- Stores completion timestamp for grade validation
Security Enhancements
- API keys encrypted at rest
- Lock mechanism prevents duplicate issuances
- Improved error handling and logging
Getting Started
- Install the plugin - See Installation Guide
- Configure global settings - Enter API URL and key
- Configure courses - Select credential templates per course
- Enable completion tracking - Ensure courses have completion criteria
- Test - Complete a course to verify credential issuance
Related Documentation
- Installation Guide
- Configuration Guide
- Privacy and GDPR Compliance
- Troubleshooting
Need Help?
If you have questions about the Credentium® Integration plugin for Moodle, please contact:
Credentium Support Email: support@credentium.com
Last updated: January 2026
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article