Define exactly the fields and documents each program requires, let students upload from the portal, and keep a tamper-evident chain of custody on every file.
Trade and vocational schools live under regulations that other LMS vendors simply don't think about. State boards want the student's government photo ID on file. The VA wants a DD-214. WIOA wants household income paperwork. Accreditation wants a high school diploma or GED. And every one of those documents needs an audit trail showing who uploaded it, when, and from what IP.
Custom Fields & Student Documents handles both halves of that compliance burden. Define unlimited custom fields per program (text, textarea, number, date, select, checkbox) and choose who sees them; admin only, students in their portal, or both. Required-field enforcement is built in. Custom fields round-trip through CSV import/export, so onboarding 200 students at once still works.
The document side defines required document types per program. Both students (from the portal Settings โ My Documents sub-tab) and admins (from the student profile) can upload PDF, JPG, PNG, WEBP, or HEIC files up to 15 MB. Files are stored outside the public web root in wp-content/uploads/tsm-private/student-docs// with sha-prefixed filenames and a deny-all .htaccess. Every upload, download, and delete is recorded in tsm_doc_audit with actor, IP, and user-agent, a chain-of-custody record built specifically for state regulator and federal audit reviews. There is no approval workflow by design: uploaded = satisfied, and the audit log is the source of truth.
One add-on, one yearly price โ and every capability below.
Different programs need different intake data. Define text, textarea, number, date, select, and checkbox fields scoped to the program that needs them.
Choose per field: admin only, student-portal only, or both. Required-field enforcement is built in.
Define required document types per program (ID, HS diploma, W-9, immunization records, whatever your accreditor wants).
Files live outside the public web root with sha-prefixed names and .htaccess deny rules. Served only through authenticated PHP handlers.
Every upload, download, and delete records actor, IP, and user-agent in tsm_doc_audit. Append-only, auditors love this.
Custom field values round-trip through CSV import/export so bulk onboarding and bulk updates Just Work.
Hand auditors a complete chain-of-custody report on any document for any student in seconds.
Capture and store the exact paperwork those programs require, with the audit log to prove it.
Welding intake needs a CDL? Cosmetology needs a HS diploma? Define them per program and stop using a one-size-fits-all checklist.
Pre-populate custom fields via CSV import; collect documents in the portal as students log in.
No. The document system and per-file chain-of-custody data live with this add-on. Reports & Transcripts is where broader document-status reporting and export-style compliance reporting are surfaced.
In wp-content/uploads/tsm-private/student-docs// with sha-prefixed filenames and a deny-all .htaccess. They are served only through authenticated, capability-checked PHP handlers, never directly accessible by URL.
No, by design. "Uploaded" = "satisfied." Schools that want approval add it as a custom field instead. The audit log is the source of truth for compliance.
PDF, JPG, PNG, WEBP, and HEIC up to 15 MB per file by default. Limits are configurable.
Yes; uploads, downloads, AND deletes all record actor, timestamp, IP, and user-agent in tsm_doc_audit. The log is append-only.