Changelog

Changelog

Product updates and shipped features

  1. ImprovedIntegrations

    Look up parts by barcode and adjust stock from the API

    Building a barcode kiosk or a custom integration? The FreeMaint API now handles inventory directly. Look up a part by its scanned code — barcode, QR code, part number or reference — with the new part query, and change its stock with the new adjustStock mutation. Every adjustment is atomic and recorded in the part's stock-movement history. Available on Business and up, over both REST and GraphQL: create a key in Company Settings → API and find ready-to-paste curl, JavaScript and Python examples in the docs under “API & GraphQL”.

  2. NewWork Orders

    Add parts to a work order even when stock shows zero

    Sometimes a spare part is physically on the shelf but the system still shows 0 in stock — a miscount, or a delivery that wasn't logged. That used to block technicians from adding the part to a work order, even though they can't adjust stock themselves. Admins can now enable “Allow adding parts with no stock to work orders” in Settings → System. Once on, the technician adds the part after a quick confirmation, and the stock goes negative so the discrepancy is flagged for a physical recount. Maintenance work is never held up by an inventory record error. Off by default, and free on every plan.

  3. ImprovedWork Orders

    Filter a work order's asset list by customer

    When you link an external customer to a work order, the asset picker now shows only that customer's equipment — no more scrolling past other clients' assets or picking the wrong machine by mistake. It also works in reverse: pick a customer-owned asset first and the Customer field fills in automatically. Available in both the searchable list and the hierarchy view, when creating or editing a work order.

  4. NewAssets

    Associate one asset with several equipment

    You can now link a shared sub-assembly — like a removable test fixture used on more than one machine — to several pieces of equipment at once, without forcing a single parent. Open the asset, edit it, and use the new "Associated equipment" field in the Structure section to pick every machine it can be used on. The link is two-way, so each machine also shows the shared item under its own "Associated equipment" — and it never affects your asset hierarchy or cost roll-ups.

  5. ImprovedAnalytics

    Asset costs now split Preventive vs Corrective

    The "Cost Analysis by Asset" report now breaks down each asset's spend into Preventive (planned) versus Corrective (reactive) work, so you can see at a glance how much an asset costs you in planned maintenance versus reactive repairs. Labor, parts, and additional costs on each work order roll up to the matching side automatically. Open it under Reports then Assets.

  6. NewRequests

    Department-head approval for requests

    Requests can now be reviewed by the requester's own department head before they reach the maintenance team — a simple way to cut unnecessary requests and keep every job authorized by the department it came from. It even works for requests sent through the public QR-scan form, by people without an account. Turn it on in Company Settings → System, then apply the two-step "department head, then section" approval template under Company Settings → Workflows → Requests.

  7. ImprovedAccess & Permissions

    See a user's team memberships on their profile

    The User Details page now shows a Teams section listing every team a person belongs to, so you can check their team assignments at a glance without opening the Teams page. Each team is clickable and takes you straight to it. Open any user from People → Users to see it, right next to their assigned assets and qualifications.

  8. NewWork Orders

    Assign a technician to many work orders at once

    You can now assign a technician — or a whole team — to several work orders in one action, instead of opening each one. Select the work orders in the list, click Assign in the bar that appears at the top, choose one or more technicians (or a team), and confirm. It's especially handy for the unassigned work orders that preventive maintenance generates, and you get a summary of how many were assigned.

  9. ImprovedInventory

    Part numbers now shown across inventory

    Part numbers now appear on the inventory list, right under the reference, the same way assets display their serial number. You will see it in the card, table and mobile views. Parts without a part number simply do not show the line.

  10. ImprovedRequests

    Requests inbox now focuses on active requests

    The requests list now opens on your active requests by default (pending, under review, approved, in progress) instead of mixing in everything that is already finished. Completed, closed, rejected and cancelled requests are one click away via the status filter, and your filter choice is remembered for next time.

  11. NewWork Orders

    See purchase requisitions and orders on a work order

    You can now see the purchasing tied to a work order at a glance. Open a work order, go to the Parts tab, and the new Purchase Requisitions section lists every requisition raised for that job, plus the purchase orders they generated, each with a direct link. Linking a requisition to a work order was already possible from the requisition form (the "Linked work order" field) - now that link is visible from the work order side too.

  12. NewPreventive Maintenance

    Schedule maintenance on specific dates

    Preventive maintenance can now run on an explicit list of calendar dates instead of a fixed interval — ideal for seasonal or irregular work such as pest control, HVAC season prep, or grounds upkeep. Choose "Specific dates" as the schedule type, add each date, and they repeat automatically every year. Each date creates its own work order, and completing or skipping one visit never moves the others.

  13. ImprovedHSE

    OSHA-ready injury & incident reporting

    Injury and incident reports now capture the structured detail required for OSHA recordkeeping and worker's-compensation claims — exact timing, location specificity (building, work area, department), equipment involved, mechanism of injury, body part affected, nature of injury, and OSHA classification. Recordable status is determined automatically (29 CFR 1904), and you can open an OSHA 300 Log with the annual 300A summary and export OSHA 301, 300 and 300A PDFs. Find it under HSE → Incidents.

  14. ImprovedInventory

    Buy in packs, get the per-unit cost automatically

    Purchase a part in a larger pack — a drum of oil, a box of bolts, a spool of cable — and let the system do the math. Set a purchase unit and pack size on the part (e.g. 1 drum = 400 liters), then on a purchase order switch the line to "Order by pack": enter the number of packs and the price per pack, and the cost per stock unit is recorded automatically while the per-pack total is kept for your records. A new "Calculate from total" helper on the Unit cost field also turns any total price and quantity into a unit cost — no more reaching for a calculator. Available on every plan.

  15. ImprovedPreventive Maintenance

    Create maintenance plans for many assets at once

    Managing many machines? You no longer have to create one preventive maintenance plan per asset by hand. In the plan’s equipment field, pick several assets and choose between one shared plan covering them all, or one independent plan per machine. You can also select machines straight from the Assets list and click “Create PM”, use the “Without PM plan” filter to spot uncovered equipment, or import many plans at once from a CSV/Excel template. A new help article walks you through it.

  16. ImprovedAssets

    Link assets to customers

    You can now link an asset to the customer it belongs to — ideal for service shops and contractors who maintain equipment for external clients. Pick the customer on the asset form, and assets will show their customer, you can filter the asset list by customer, and each customer page lists the assets you maintain for them. Available on the Starter plan and above.

  17. ImprovedRequests

    Hide the asset list on public location QR pages

    When someone scans a location’s QR code to report a problem, they no longer have to scroll past the full asset list to reach the report button. Admins can now hide the asset list on public location QR pages from Company Settings → Intervention Request form → Public QR landing page (the same card also lets you toggle the meter list shown on individual asset QR pages). On top of that, the red "Report a problem here" button now stays pinned to the bottom of the public location page, so it’s always within reach.

  18. ImprovedInventory

    Search vendors by description — and see it as a column

    You can now find a vendor by the notes in its Description, not just its name, email or phone — the search box matches the description text. The Description also appears as a column in the Vendors list on wider screens, so you can scan your suppliers at a glance. Add or edit a description any time in the vendor form.

  19. NewWork Orders

    Require requester sign-off and an e-signature before closing a work order

    You can now have the person who requested a job formally accept it before it is closed. In Company Settings → Workflows, add a Work Order step that requires your custom closure form and a captured e-signature, and set the approver to the work order creator (the requester); a manager then performs the final closure. You can also lock a custom field so only the requester can fill it — in Company Settings → Custom Fields, turn on "Editable by creator/requester only". Ideal for quality acceptance and audit trails.

  20. ImprovedWork Orders

    Log past maintenance straight from a PM plan

    When you record a maintenance that was already performed, you can now link it to a preventive maintenance plan and the work order is created with the plan’s full task checklist (already marked as completed) and its planned parts — no more rebuilding the job by hand. Open any PM plan and use the new “Log Past Maintenance” button to pre-fill the plan and the asset in one click, then just set the completion date and save.