Skip to content
WorkOrders

What it does

Built around how the work actually arrives

WorkOrders starts with the email your customer sent, and follows the job through to a completed record you can invoice from.

One · getting in

Four ways for jobs to come in

Whichever you use, you get the same kind of work order, with the original message, the whole email thread and every attachment kept with it.

Four intake channels converging on one work order Four labelled inputs (a per-company forwarding address, a mail inbox, the API and the customer portal) each routed into a single trunk that arrives at one work order docket. {YOU}@ WORKORDERS.NZ INBOX API CUSTOMER PORTAL WO-1042 CUSTOMER SITE REPORTED 4 WAYS IN 1 DOCKET
Your own jobs.workorders.nz address
Every company gets {you}@jobs.workorders.nz when it signs up, and it works straight away. No app password, no mailbox credentials, no DNS changes. Forward emails to it, or give it out as your address for maintenance requests.
Any IMAP mailbox, including Gmail
Enter the server, username and password, and WorkOrders checks the mailbox your customers already email. Once an email has become a job, it's moved to a folder called WorkOrders-Processed. Nothing is deleted. Gmail needs an app password instead of your usual password. Microsoft 365 and Outlook mailboxes can't be connected, so forward them to your jobs.workorders.nz address instead.
The API
For jobs that start in another system, like a building management system, a tenant portal or your own maintenance schedule. Send the request to the API and it becomes a work order like any other. Read the API reference
Your customers, from your portal
Switch it on and customers who have signed in to your portal can raise a request themselves, with what needs doing, where, and a photo or two. It arrives in your list marked as coming from the portal. To sign in, a customer needs a link emailed to an address already on your customer list, so someone they forward an email to can't raise a request.

Two · what happens to it

What happens next, in order

Each of these steps happens automatically. None of them waits for someone in the office to notice and do the next bit.

Extraction

WorkOrders fills in the job, and you can change it

Requests turn up with no subject line, a phone number in the middle of a sentence and the address buried in a paragraph. The AI reads the email and fills in what it can find: a plain summary, the site address and who's asking.

Attachments are described in words too, so you can find a photo of a failed valve six months later instead of a file called IMG_4471.jpeg.

Each of these goes into an ordinary field you can edit. None of it sends anything to the customer or assigns the job to anyone. If something's wrong, fix the field. The original email is right there to check against.

Work order docket with its fields dimensioned A work order docket drawn as a dimensioned part: a header carrying the job number, five ruled fields, and a sign-off block. The status field is enlarged in a detail view to the right, where its value is highlighted. WO-1042 CUSTOMER SITE REPORTED ASSIGNED STATUS SIGN-OFF STATUS ONGOING DETAIL A · 2:1 JOB NO. 168 148

Urgency and status

Four statuses, and how urgency is set

A job moves through four statuses: new, assigned, ongoing and completed. Each one is a single tap in the app. There's also Deleted, for a request that turns out not to be a job, and an admin can delete a job at any stage.

Urgency is set from the wording of the message. "No hot water, tenant has a newborn" is more urgent than "when you get a chance", and that decides where the job sits on your team's list before anyone opens it.

The five work order statuses drawn as a ladder A ladder with four rungs labelled New, Assigned, Ongoing and Completed, with Ongoing highlighted. A fifth status, Deleted, sits on its own detached pair of stiles to the right, off the ladder. NEW ASSIGNED ONGOING COMPLETED DELETED OFF THE RAIL 4 STEPS

Dispatch

The first technician to accept gets the job

A new job isn't assigned to anyone. It goes to the whole company at once and waits as unclaimed work.

The first technician to tap accept gets it and sets how long until they'll be on site. The job then leaves everyone else's list. If two people tap at the same moment, only one gets it. The other is told it's already gone, so you don't get two people turning up.

From then on it's theirs. Only they or an admin can mark it ongoing or completed, and the office can reassign it from the web app if plans change.

The first tap gets the job

Threading

Customer replies are added to the job

Status emails go out as a reply to the customer's own message, from your firm and with your sign-off. They get one when the job is picked up, one when the work starts and one when it's finished. Nobody has to write them.

When they reply, the reply is added to the work order. The job number is in the reply address, so even a quick reply from their phone reaches the right job without anyone forwarding it.

An email thread routing back onto its work order Three email messages on the left, each routed by a line into a single trunk that arrives at a work order docket on the right. The trunk is annotated with the per-job reply address that does the routing. CUSTOMER TECH CUSTOMER WO-1042 REPLY 1 REPLY 2 REPLY 3 REPLY-TO +WO-1042 ONE JOB

Three · the office

A dashboard that updates itself

When a technician takes a job, it shows up on the office dashboard without anyone refreshing the page, and the day's numbers and two-week trend update with it. The jobs list works differently. It stays still while you read it, and tells you when new work has come in.

Every number updated itself

Every number is a link

Click any tile on the dashboard to see the jobs it counts. Click a technician's row to see the jobs they still have open.

The reports you run monthly, saved

The Reports page shows the figures for a period: how many jobs came in, how long until someone was attending, and the average time on site. Below them are your saved reports. Each one says in plain English what it filters and how many jobs match right now, and you can export it to CSV.

The week at a glance

The workload calendar has a row for each technician and a column for each day, with unassigned jobs along the top. You can see straight away if someone has eleven jobs on Tuesday and none on Thursday.

Four · the customer

A customer portal with no account to set up

The link is in every status email. A property manager opens it and sees their own jobs: what was asked for, how far it has got and what was done, in plain words instead of staff terms.

There's no comment box. Customers reply by email, and their replies are added to the job. They can add a photo to a job that's under way, like the leak three days later. If you switch it on, they can also raise a new request from the same page. To do that they sign in with a link emailed to an address you already hold, so someone they've forwarded an email to can't raise one.

It's on your own subdomain, {you}.workorders.nz, which matches the address customers already email. See a live demo portal.

Five · more than one company

Working with more than one company

Office staff, technicians and customers can all deal with more than one company on WorkOrders, and each company's work stays separate.

Staff

The same verified email can work for two employers. Once both are confirmed, a switcher appears in the sidebar. Each company has its own web address, so you can have both open in separate tabs, each with its own two-factor rules.

The field app

A technician can add a second company's account with the access code from that office, switch between them, and get notifications from both. Tapping a notification opens the right job in the right account.

Customers

A customer of several firms on WorkOrders asks for one link at workorders.nz and sees every firm's jobs together. When they raise a request, they choose which firm it's for. Each firm's own portal address still shows only that firm's jobs.

Everything in every plan

Every plan has every feature. The plans differ only in how many people can use them.

Email to work order

Your own jobs.workorders.nz address, or any IMAP mailbox including Gmail. Requests become work orders, with the original message, its thread and every attachment kept with them.

AI extraction

A plain-English summary, an urgency level, and the site and contact picked out of the message. You can edit all of them.

First-to-claim dispatch

A new job goes to the whole team at once. The first technician to tap accept gets it, and it drops off everyone else's list.

The field app

Today's jobs with their full details, including the photos and PDFs that came in with them. Status changes go straight to the office. On iPhone today, and Android is the next build.

See the field app

Automatic customer updates

Status emails go out as a reply to the customer's own message, from your firm and with your sign-off. Their replies are added to the job.

Attachment descriptions

Photos and PDFs that arrive with a job are described in words, so you can find a picture of a failed valve six months later.

No-account customer portal

Customers open it from the link in their status email to see their jobs and add photos, without emailing to ask. Switch it on and they can raise new requests there too.

Organisations, customers and sites

Each customer belongs to an organisation, and everyone there shares its sites. An address typed with different capitals, spacing or punctuation still matches the same site, and that site's job history is one click from the job.

Health and safety notes

A technician can add a health and safety note when completing a job, and it's emailed to your firm's health and safety address.

Saved reports

Save the reports you run every month under a name. Each one says in plain English what it filters and how many jobs match right now. Five are set up for you from day one.

CSV, in one click

Export any saved report to CSV for invoicing, payroll or a client who wants a summary of last quarter. Or set up a one-off report and export that.

The week at a glance

A row for each technician and a column for each day, with every job on it. See who had eleven jobs on Tuesday and none on Thursday, and what sat unassigned all Wednesday.

Time on site

Recorded when the job is completed. The app suggests a time based on when the technician said they'd arrive, and they confirm or adjust it. It shows as a column in the jobs list and as an average in Reports.

Contact details on hover

Hover over a person's name anywhere in the app to see their role, phone, email, timezone and how many open jobs they have.

Ask about this job

Ask the AI questions about a job, like what the customer actually asked for, or have it draft a reply. You decide whether to send it.

Roles, seats and 2FA

Three roles: owner, admin and technician. Technicians see their work, but not the reports with every customer's address in them. Every account can use two-factor and passkeys, and you can make two-factor compulsory for your admins or for everyone.

The real thing

Screenshots of the real app

The drawings further up are illustrations. These four are screenshots of the real web app, running with sample data. It's what you'll see when you start a trial.

The dashboard: how many jobs are at each status, what needs attention now, and the two-week trend. Every figure links to the jobs it counts.
The dashboard: how many jobs are at each status, what needs attention now, and the two-week trend. Every figure links to the jobs it counts.
The dashboard: how many jobs are at each status, what needs attention now, and the two-week trend. Every figure links to the jobs it counts.
The dashboard: how many jobs are at each status, what needs attention now, and the two-week trend. Every figure links to the jobs it counts.
The work orders list: counts for unassigned, awaiting sign-off, in progress, urgent and mine across the top, then every job with its status, urgency, customer and owner.
The work orders list: counts for unassigned, awaiting sign-off, in progress, urgent and mine across the top, then every job with its status, urgency, customer and owner.
The work orders list: counts for unassigned, awaiting sign-off, in progress, urgent and mine across the top, then every job with its status, urgency, customer and owner.
The work orders list: counts for unassigned, awaiting sign-off, in progress, urgent and mine across the top, then every job with its status, urgency, customer and owner.
Reports: the figures for the period, including average time on site, above your saved reports. Each one says what it filters and how many jobs match right now.
Reports: the figures for the period, including average time on site, above your saved reports. Each one says what it filters and how many jobs match right now.
Reports: the figures for the period, including average time on site, above your saved reports. Each one says what it filters and how many jobs match right now.
Reports: the figures for the period, including average time on site, above your saved reports. Each one says what it filters and how many jobs match right now.
The workload week: a row for each technician and a column for each day, with the week's job count, time on site and hours attending down the right.
The workload week: a row for each technician and a column for each day, with the week's job count, time on site and hours attending down the right.
The workload week: a row for each technician and a column for each day, with the week's job count, time on site and hours attending down the right.
The workload week: a row for each technician and a column for each day, with the week's job count, time on site and hours attending down the right.

Try it with your own inbox

Connect a mailbox during the trial and watch a week of real requests turn into jobs.