Skip to content

The LMS built around how TVET actually works.

SIS, LMS and a COPTPA Edition II compliance engine in one system. Mark attendance once, and the JPK form underneath fills itself.

Running at Meteor Academy, 300+ students

AUDIT FILE
Ready before audit day
Audit visitFri 16. Nothing to prepare.
JPK-02Attendance record
Session
S14, 08:30
CU
CU-03
Present
28 / 28
Recorded by
PP, 08:34
VERIFIED

The record kept once

Who
PP
When
Mon 08:34
Rewritable
No

Attendance CU-03, Workshop 2. Sample

  • Student 012
  • Student 013
  • Student 014
Saved 08:34
  1. 1

    What the instructor does

  2. 2

    What HALEA keeps

  3. 3

    What it becomes

  4. 4

    Where it lands

Your institution shouldn't have to reconstruct academic truth from disconnected spreadsheets.

Three days before the JPK visit, the coordinator is rebuilding the semester from files that never agreed with each other.

  • attendance_v3_FINAL.xlsx

    MismatchNever agreed with the marks sheet

  • marks_sem2.xlsx

    Broken formula#REF! in CU-07

  • LI logbook · paper folder

    MissingNot in any system

  • eligibility_list.pdf

    OutdatedPrinted before two MCs were approved

One record. Attendance, marks, LI file and eligibility from the same source.

The auditor won't ask whether you have a gradebook. They'll ask and whether anyone Point at a question, or tap it, for HALEA's answer.

Two burdens, carried at once

Daily operations

  • Attendance
  • Marks
  • Timetables
  • Fees
  • Leave

Scattered across Excel, WhatsApp and physical files.

The same semester, written out again

JPK/CAAM compliance

  • JPK-01…08
  • RPK
  • Portfolios
  • PPPB minutes
  • TAC minutes

Rebuilt by hand every time an audit approaches.

A general LMS handles the first and has nothing for the second, so the academic team does the work twice: once in the system, again in the audit file.

One mark on the register. One JPK form filled.

When an instructor marks attendance, JPK-02 fills itself. When marks are verified, JPK-03 and the RPK are built. When the auditor arrives, the documents already exist — they were never prepared; they were produced by the day's work.

Student view

Attendance 96%

CU-03 Competent

Logbook 12 entries

Sample data

From enrolment to certificate

  1. Enrol

    Applicants apply online and track their own status. Offer letters come from your own templates.

  2. Deliver

    Instructors mark attendance per session. Students see their record straight away.

    • JPK-02
  3. Assess

    PP enters marks, PPD verifies, PB endorses — with a full audit trail.

    • JPK-03
    • RPK
  4. Verify eligibility

    Exam eligibility is calculated from attendance. Only a PPD can override it, and the override is logged.

  5. Industrial Training

    Placements move through PP verify → PPD endorse → PB approve, with file completeness tracked.

    • JPK-05
  6. Certify

    The PB manager verifies results before certificates are issued.

Administrators can read it; nobody can rewrite it.

Point at a role, or tap it, to see what it may do.

Instructor and assessor. Takes the class: marks attendance, grades the work and enters the marks.

There is no average of a CU.

A student is competent or not yet competent in each Competency Unit. Follow one record through the COPTPA Edition II rules: the verdict is calculated, and the reason is stored with it.

CU-07, SKM L1–3Sample record

  1. 1. CU assessed

    CU-07: PKK and PA components recordedVerified
  2. 2. Weighting applied (SKM L1–3)

    PKK
    70%
    PA
    30%
  3. 3. Attendance checked. Drag to try another value.

    88%
    Below 90%
  4. 4. Verdict

    EligibleAttendance 88% meets the 80% line. Reason stored with the verdict.
  5. 5. Audit log

    09:12:04 · eligibility.verdict · CU-07 · Eligible · attendance 88% ≥ 80%

Weighting by level

PKK70%

Knowledge 21% · Performance 49%

PA30%

Knowledge 9% · Performance 21%

Attendance lines

  • Below 90%Warning, adjustable by your institution
  • Below 85%Warning, adjustable by your institution
  • Below 80% · not eligibleFor the exam, fixed

Absent, or ill?

  1. Absent · 3 sessions
  2. MC submitted
  3. Leave approved by PP
  4. Excused

A system that knows the difference between absent and ill.

Priced by institution size, not by feature unlocks.

A small accredited centre needs the same audit trail as a college of a thousand. The only thing that changes between bands is size.

Active students plus staff with accounts.

180

Billed monthly, when set in your Order Form.

Your band

Foundation

151–200 active users

RM1,000/month

Base Platform Fee. Every module included.

Every band, monthly billing
BandActive usersBase Platform Fee
0–150RM650 /month
151–200RM1,000 /month
201–300RM1,200 /month
301–400RM1,500 /month
401–500RM2,000 /month
501–650RM2,400 /month
651–800RM3,000 /month
801–1,000RM3,700 /month
1,001+Quoted

The small print, in large print.

  • Every module in every band. Bands differ only in user limit, storage and AI quota.

  • No platform fee until go-live, so you never pay for two systems during migration.

  • Your band is locked for the billing period. Adding users within it costs nothing.

  • Active users are active students plus staff with accounts. Graduates, withdrawn students, external auditors and support accounts don't count.

  • All prices in RM, excluding Service Tax.

Activation

Registration and data migration are quoted after your scoping session, once we know how ready your data is.

Audit-format guarantee

If a JPK auditor rejects a document HALEA generated because of its format, we fix the format within 5 working days and credit one month of your Base Platform Fee.

It doesn't cover content, your institution's data, or the outcome of your audit.

Frequently asked questions

13 questions shown

  • Yes — a live demo on a demonstration tenant with sample data. We don't put real student data into a trial before a Data Processing Agreement exists. If you want proof before a multi-year commitment, there's a one-year paid pilot, and its activation fee is credited if you sign a three-year contract during it.

  • No. Every tier gets every module. Tiers differ only in user limit, storage and AI quota.

  • Active students and staff with an account. Graduates, withdrawn students, external auditors and support accounts don't count.

  • Nothing on your bill. Your band is locked for the billing period; changes are discussed at renewal, with 90 days' notice.

  • In your go-live month — not during onboarding.

  • Six to sixteen weeks, depending on size and data readiness. We do it; you don't need in-house technical staff.

  • If it's rejected for format, we fix the format within five working days and credit one month's fee. We can't guarantee the outcome of your audit — nobody honestly can.

  • We update HALEA as part of your subscription, at no extra charge.

  • No. Marks, attendance and moderation belong to assessors and their approval chain. Admins can see everything and change none of it.

  • You'll hear from a person first. If access is ever restricted, staff can still read records, students can still see theirs, and we never restrict during an exam period you've told us about.

  • You do. Structured exports are free up to four times a year; after the contract ends you get 60 days of read-only access and a free full export, then written confirmation of deletion.

  • Read-only access and a free export still apply, data is kept for at least 180 days, and source-code escrow is available as an option.

  • No. It's blocked completely during an active quiz or exam, and it works from your institution's own course material.

Ready to make academic truth traceable?

  1. Live demo

    60 minutes, on data that looks like your institution's.

  2. Scoping session

    We map your programmes, NOSS, CU and roles to HALEA.

  3. Quotation

    The band and add-ons you actually need, including your data-readiness level.

Try HALEA in a sandbox

A demonstration tenant with sample data, yours to click through. Leave your work email and we'll send you the link.

We use your email only to send the sandbox link and to follow up on this request.