WordPress Plugin
Install the Verifycate plugin and issue certificates from WordPress LMS completions
The Verifycate plugin for WordPress issues certificates when a learner completes a course, lesson, quiz or custom hook. It works with LearnDash, Tutor LMS, LearnPress, LifterLMS and Sensei, and exposes a custom hook for other plugins.
Full integration page: verifycate.dev/integrations/wordpress
Source code: github.com/verifycate/wp-plugin
Requirements
- WordPress 6.2 or newer.
- PHP 7.4 or newer.
- A Verifycate workspace with an API key that has
certificates:readandcertificates:write.
Install
- In WordPress, open Plugins → Add New.
- Search for Verifycate.
- Choose Install Now, then Activate.
- If your host blocks directory installs, upload the release zip from wordpress.org/plugins/verifycate.
Connect
- In Verifycate, open Workspace → API Keys and create a key with
certificates:readandcertificates:write. - In WordPress, open Verifycate → Get started.
- Paste the key and run the connection test.
- The plugin resolves the workspace and lists the active LMS.
The key identifies the workspace. There is no workspace slug to enter.
Map a completion
- Open Verifycate → Mappings.
- Choose the LMS and the trigger: course, lesson or quiz completion.
- Select the published certificate to issue.
- Save the mapping and complete a test lesson or quiz.
A learner who completes the mapped item is added to the certificate and receives the delivery email configured in Verifycate. Re-completing the same item does not create a second issue.
Supported LMS
| LMS | Completion sources |
|---|---|
| LearnDash | Course, lesson, topic, quiz |
| Tutor LMS | Course, lesson, quiz |
| LearnPress | Course, lesson, quiz |
| LifterLMS | Course, lesson, quiz |
| Sensei | Course, lesson, quiz |
| Custom | verifycate_course_completed action |
For a custom LMS, fire do_action( 'verifycate_course_completed', $user_id, $course_id ).
An optional third argument sets the event name and a fourth passes extra
attributes. See the plugin readme for the exact signature.
Troubleshooting
| Symptom | Check |
|---|---|
| Connection test fails | The key may be revoked or missing certificates:read and certificates:write. |
| No certificate after completion | The mapping may be disabled, the certificate may be a draft, or the LMS trigger may not fire for that activity type. |
| Learner receives the wrong certificate | Check the mapping's certificate and the completion source; re-run with a test learner. |
| Plugin cannot reach Verifycate | Confirm the site can make outbound HTTPS requests and that no security plugin blocks the API host. |