Pellio

Compliance training

Updated October 1, 2026
On this page

For training people have to complete, Pellio can make sure videos are really watched, and keep a record of it.

Playback rules

In Settings → Player, open a preset and use its Compliance training card:

  • No skipping ahead: viewers can’t move past the furthest point they’ve watched.
  • Pause when the viewer switches tab or minimises the window: viewers see “Paused while you were away”.
  • Fastest playback speed: Normal speed only, Up to 1.25×, Up to 1.5× or Up to 2× (no limit).
  • Ask “Still watching?”: Never, or every 5, 10, 15 or 30 minutes of playback. The video pauses until the viewer clicks Continue.
  • Show the viewer’s email over the video: identified viewers see their own email address, faint, moving every few seconds, to discourage screen recording.

Then apply the preset to your training videos: in a video’s Organize card → Player preset, or for a whole folder with the folder’s options → Player preset…. Casting to a TV is turned off whenever any of these rules apply. On WordPress, Pellio → Settings → Viewer watermark can also show signed-in users their own name over the video.

On WordPress, lessons can also ask learners to sign an attestation after the video: Tick a box, Type their full name or Type their name and password. See LifterLMS or LearnDash, Tutor LMS and Sensei LMS.

What counts as watched

Pellio records which seconds each viewer actually watched. Seconds skipped over, rewatched or played while paused don’t add up, so percentages are unique seconds watched. When the file is replaced, the video’s Completion must be on the latest version setting (in its Privacy card) makes only the current version count.

Learner log

Learner log (in the sidebar, for owners and admins) is a tamper-evident record of what each identified learner watched and completed. A learner is a signed-in user on a connected WordPress site, or a viewer who gave their email. It records when a learner reaches 25%, 50%, 75% and 90% of a video, and “Watched to the end” at 95%, all in unique seconds (these start again for a new version of the video). From WordPress, it also records when a watch was verified, when a lesson was completed or reopened because its video was replaced, and attestations.

The learner log in the Pellio dashboard, verified
  • Search by Learner email, name or WordPress user id, and filter All events, Watching, Lessons or Attestations.
  • Entries can’t be changed or deleted, not even by Pellio’s own application. They’re only removed if the whole workspace is deleted.
  • Each entry includes a SHA-256 hash of the one before it, so any change, removal or reordering shows up. The page verifies the whole chain when you open it (“Verified: all N entries are intact”); Verify again re-checks it.
  • Export CSV for people, or JSONL with every hash. Exports follow the current search and filter, up to 100,000 entries; the CSV ends with a “Chain head” line. To check the chain, export JSONL without a filter.

An auditor can check the chain without Pellio. Each entry’s hash is SHA-256 of the previous entry’s hash, a newline, and these fields as JSON with keys sorted at every level and no spaces: seq, type, videoId, videoVersion, siteId, externalUserId, learnerEmail, learnerLabel, data and occurredAt (ISO 8601 with milliseconds). The first entry’s prevHash is the chain’s starting hash. Keep the latest hash somewhere else and you can prove later that nothing before it has changed.

SCORM or cmi5 package for any LMS

For an LMS without a Pellio integration (Moodle, TalentLMS, Docebo, Cornerstone, SCORM Cloud and others), open the video, go to the Share links card and click LMS package. Choose the Format: SCORM 1.2 works in almost every LMS; cmi5 (xAPI) is the newer standard, for LMSs that support it. Then choose Complete after watching (50, 75, 90, 95 or 100% of the video; 90% by default) and whether to turn on No skipping ahead, then click Download package and upload the zip to your LMS (as a SCORM 1.2 package, or as a cmi5 course). Packages are for videos hosted on Pellio, not linked YouTube or Vimeo videos. Step by step, with what learners see: Use Pellio videos in Moodle, Docebo or any LMS.

Share links → LMS package on a video
  • The lesson is reported completed once the learner has watched enough unique seconds: skipping ahead doesn’t count. SCORM packages send the percent watched as the score.
  • cmi5 packages send xAPI statements to your LMS’s learning record store: initialized when the lesson opens, progressed at 25, 50 and 75%, completed at your threshold (and passed, with the share watched as the score, if the LMS’s move-on rule asks for it), and terminated when the learner leaves or clicks Finish and return. Launched in browse or review mode, the video just plays.
  • What they’ve watched carries over between sessions, and they pick up where they left off (with No skipping ahead on, the video starts from the beginning each time, but earlier watching still counts).
  • When the LMS’s student id is an email address, the learner is named in the video’s Viewers tab in Pellio, and their milestones go into the learner log (and to your LRS).
  • The package contains no video: it plays through a share link made for it (listed as SCORM package or cmi5 package in the Share links card), so private videos play inside the LMS, and turning that link off stops the package everywhere. Replacing the video updates it too.

Send progress to your LRS (xAPI)

In Settings → Integrations → xAPI (LRS), add your Learning Record Store’s endpoint (https), key and secret (SCORM Cloud, Watershed, Veracity, Learning Locker and other xAPI 1.0.3 LRSs). Saving tests the connection. From then on, every new learner-log entry is sent as an xAPI statement within seconds: watch milestones as progressed and completed using the xAPI Video Profile, lesson completions with the lesson and course, verified watches, reopened lessons and attestations. Entries from before you connected aren’t sent. A failed send is retried 5 times, starting 30 seconds later. Each statement’s id comes from its learner-log entry, so nothing is sent twice, and it carries the entry’s number and hash so you can match it to the tamper-evident log.

Settings → Integrations in the Pellio dashboard

Evidence

  • A video’s Viewers tab shows a heatmap for every viewer, and Export CSV downloads first and last viewed, sessions, unique seconds and percent watched and the version watched, by viewer or by session.
  • On WordPress with LifterLMS, each course exports a CSV per student and lesson, including completion dates and quiz grades. See LifterLMS.
  • LearnDash, Tutor LMS and Sensei LMS can hold back lesson completion until the video is watched, and export the same evidence. See LearnDash, Tutor LMS and Sensei LMS.

Was this article helpful?

Still stuck?Send us a message and a person will get back to you.