New Features
Workflow Builder
The Workflow Builder gains two new actions. Create Invoice automatically generates an invoice from an enrolment’s not-yet-invoiced fees when the workflow fires. The invoice payer can be the student or an organisation (the enrolment’s organisation, the intake’s organisation, or the student’s primary organisation), with a configurable invoice status and due date offset. Enrolments with no outstanding fees are skipped, so the same enrolment is never invoiced twice. Submit to Public Trust automatically calculates Public Trust fees from the record’s invoice lines and submits them through the existing Public Trust integration. Records already submitted to Public Trust are never resubmitted, and a dedicated contact email for submissions can be configured on the Public Trust integration. Applications can now also trigger workflows (on creation and on update), alongside the existing student, enrolment and invoice triggers. Together these enable automations such as invoicing a student (or their employer) when their enrolment becomes active and lodging the Public Trust submission automatically.
Run workflows on demand
Workflows can now be run on demand, instead of only firing automatically or on a schedule. When building a workflow you can choose a new Manual trigger and tie it to a record type: Enrolment, Enrolment Component or Student. Manual workflows appear as a Run Workflow option in the record’s actions menu, where you pick one of the available workflows and run it against that record immediately. On the enrolment component grid you can also run a workflow against several selected components at once. An optional Run Once Per Entity setting stops a workflow running again for a record it has already completed for. A new permission, Run Workflow, controls who can run workflows on demand and must be granted to any custom roles that need it.
Moodle: sync grades for a single enrolment
You can now sync grades and completions from Moodle for an individual enrolment using the new Sync Grades action on the enrolment record’s components. This provides a much faster alternative to the account-wide grade sync when you only need to update one student’s enrolment.
SELMA Forms: choose a Provider on application forms
You can now let applicants choose a Provider before picking a programme on the Interested In Programme field. When editing the field in the form builder, tick “Filter by internal organisation (Provider)”. You can then choose which Organisation Type is offered as a Provider, choose the Association Type used when the Provider is recorded against the student, and optionally make selecting a Provider mandatory. On the public form, the applicant selects a Provider first, which narrows the list of programmes to only those delivered by that Provider. A new form setting, “Add programme Provider as a student stakeholder on submission”, automatically adds the programme’s internal Provider organisation as a stakeholder on the student record, giving the relevant Provider visibility of the student without any manual step.
Training Agreement forms
Three improvements to the Training Agreement signing process. When publishing a Training Agreement form, SELMA now accepts any contact association type. Contact blocks can now be configured, per block, to let applicants choose an existing contact from a dropdown rather than re-typing one each time, avoiding the duplicate contacts and mistyped email addresses that previously prevented the multi-signature process from completing (for privacy, the public form only ever displays contact names). And when a contact is unavailable, staff can now reassign a pending signature to another existing contact from the submission page; the proxy receives a fresh signing link by email and completes the step, so the process is no longer blocked.
Complex enrolments
You can now create complex enrolments and enrol a student into a complex programme, with the enrolment structure created for you.
Enhancements
Browser tab naming: browser tabs now show what the page is opened to where applicable. For example, student pages now show the name of the student (Student – John Doe).
Enrolment Expiry Date: you can now edit an enrolment’s Expiry Date directly on the Results card. You can also set the Expiry Date in bulk across an intake, both for enrolments (Bulk Update Enrolments) and enrolment components (Bulk Update Enrolment Components).
Public Trust: the Public Trust integration now reports students who hold a New Zealand residency status (New Zealand Resident or New Zealand Permanent Resident) as domestic students with New Zealand citizenship, in line with Public Trust’s upload requirements. Previously these students were sent with their actual citizenship, which caused Public Trust to classify them as international. A new validation message also prevents submission when a student is not marked as international but has a citizenship outside Australia, the Cook Islands, New Zealand or Niue and no New Zealand residency status recorded.
Workflow permissions: the Workflow permission has been split. Running a workflow no longer also grants access to build and edit workflows. A new permission, “Permission to create, edit and delete workflows in the Workflow Builder”, now controls building, while the existing run permission controls running. Administrators keep both automatically. If any custom role was set up to build workflows, that role must have the new build permission ticked after this release.
Student Index: the status cards at the top of the Student Index now match the order of the statuses on the student kanban board, and the student filter counts now show in the same order as the kanban view.
Award page: the NZ Compliance card on the Award page no longer appears for accounts that have no NZ configuration enabled. It now shows only when NZ SDR or NZ NZQA is enabled.
Student creation: when an employer is added during student creation, it is now automatically marked as the student’s primary stakeholder.
Classes: you can now add ad hoc components in bulk to selected enrolments in a class.
Scheduler items: now have an optional “Earliest trigger date”. If a scheduler item’s calculated trigger date falls before this date, the item will not fire, which prevents communications and events being sent for historical enrolments, for example – after a data migration.
Enrolment API: new filtering options are available on the Enrolment API.
Bug Fixes
Attendance: the attendance timetable import no longer fails silently when a row references a room that does not exist; the import now completes and flags the affected row with a “room not found” error so you can correct it. Marking attendance in bulk now runs as a background task, so large registers no longer time out. Attendance registers now handle public holidays correctly.
Enrolments: fixed an issue where creating an enrolment through the API under heavy load could save an enrolment with no components, and the retry was then blocked as a duplicate. Enrolment creation through the API is also significantly faster: creating an enrolment into a large intake previously took around twenty seconds and could time out; it now completes in a few seconds. Also fixed an error when using the enrolment full-edit pencil while the student portal is enabled.
Classes: fixed an issue where classes with a large number of enrolments could fail to open. These classes now load reliably, and the class page opens faster overall; the grading table and the statistics bar now load when you open them rather than during the initial page load.
Reports: QE1 and F23 now allow intakes with a Full status to be shown and selected within the reports tab. The QE1 (Qualification Report) grid now displays the same version number as the generated QE1 text file. The UIP report tuition fee total now multiplies the invoice line amount by quantity, so per-unit fees recorded with a multiplier show the correct total. And AVETMISS report validation now completes reliably for providers with large amounts of data, instead of leaving the validation screen loading indefinitely.
Moodle: resolved an issue where a failed Moodle user update or course group enrolment could be reported as completed even though Moodle never received the change; failures are now correctly reported, and the Moodle integration log records which step failed. Email addresses containing a plus sign now sync correctly; please enable the extendedusernamechars setting in Moodle, as this is required for usernames to sync properly.
Xero: fixed an issue where the Xero integration was unable to sync contacts.
Communications: bulk emails sent from an intake are now recorded reliably. Previously an email could be delivered without a selected attachment such as a certificate, leaving no record and no entry on the student’s event log. Now, if a selected report or template cannot be generated, the email is not sent and is marked as failed so it is visible and can be resent; successful sends are always recorded with an event log entry. Also fixed CSV exports from the Events and Communications index pages silently failing when a value was typed into the quick-search box.
Organisations and searchable dropdowns: fixed organisations being slow or impossible to edit for large tenants. The parent organisation dropdown on the organisation edit form, the organisation field on the intake information form, and the organisation picker when linking an organisation to a contact now search as you type instead of loading every organisation at once. Searchable dropdowns used to pick records such as a contact, intake or organisation also now show a first set of options as soon as you click into them, rather than staying empty until you start typing.
SELMA Forms: fixed an issue where resubmitting or resuming a public application form for a student who already had a saved contact or organisation on their record could fail to save, leaving the submission unrecorded. These forms now save reliably for returning and existing students.
Work-Based Training: component numbers sent to DXP no longer include leading zeros, and components that have already been achieved are now filtered out of the enrolment payload, resolving submission errors. Also fixed the WBT enrolment mapper incorrectly filtering out already completed enrolment components.
Dashboard: fixed the System Status widget showing an inaccurate number for active enrolments.
Users: on the User Index, the advanced filter for status “All” now correctly shows all users, and the pending counter no longer displays 0 when pending users exist.
Accommodation: fixed the Accommodation Booking page failing to load.
