Skip to content

Software contracts

Software (/software) is the school’s contract register. It is part of the Costs module and requires software.view. Grant software.manage to the people who maintain the register or configure renewal reminders.

Choose Add contract and enter the title and vendor. Optional fields cover purchased seats, manually recorded seats in use, cost in cents, currency, term dates, purchase order, budget code, owner and notes. Owners are free text and do not need a Plugboard account. Contracts are school-wide purchasing records.

Editing a term-end date resets its reminder history. Contract and reminder-setting changes appear in the audit log.

Open Renewal alerts to set the notice period, repeat interval and recipient email addresses. Defaults are 30 days before the term end and a seven-day repeat interval. No email is sent until recipients are configured. An owner name is never used as a recipient address.

Reminders run hourly through the school’s email connector and use the editable Software contract renewal (licence.expiring) template. Disable the template or clear the recipients to stop email. Failed deliveries can be tried on the next hourly run. Expired contracts remain in the register but do not produce repeated reminders.

The report also requires the Directory module and identity.view. Add an identity-provider SKU ID or part number to a contract, then choose Refresh licence position. Matching ignores surrounding whitespace and letter case. It shows contract purchased seats, current assigned seats, provider prepaid seats, available provider seats (prepaid minus assigned), and variance (contract purchased minus provider prepaid). The process-local read cache can be up to 60 seconds old.

Unmapped contracts show manually entered usage, and unmatched provider SKUs have their own rows. A missing SKU or unavailable provider shows an unknown balance. Multiple contracts mapped to one SKU, or a part number shared by several SKUs, are marked ambiguous. Saving an unchanged contract end date preserves its reminder history.

The report is calculated on read. Provider counts are never saved to the register, database, audit log, scheduled reports or exports. There is no historical trend storage. This register does not inventory installed applications, VPP licences or iPad app assignments.

Device application inventory in the candidate

Section titled “Device application inventory in the candidate”

Device MDM records have a separate Applications section. Jamf computer inventory and the new Jamf mobile connector report application names, versions and identifiers where supplied. Intune collection is opt-in through collectApplications; it reads detected applications and their device associations, adding paginated Graph calls with a cache of up to ten minutes.

The section identifies its provider and collection time, includes the provider’s inventory time where available, and supports search and pages of 50 applications. An empty provider report is shown differently from inventory not yet collected. This is provider-reported inventory, not independent installation proof, Apple Apps and Books/VPP entitlement or licence-compliance evidence. It does not alter the contract register or persist the live identity licence report.

Release preparation exercised large synthetic inventories and pagination. No non-production Jamf or Intune tenant was available, so live-provider acceptance remains unperformed. Validate the configured provider against its own console before using this evidence for an operational decision.