Using 1pm for onboarding and compliance requests
Most of 1pm is built around running events, but one part of it stands on its own: the machinery for registering people and collecting their paperwork. If all you want to do is onboard contractors and keep their compliance documents current, you can run 1pm for that alone and never touch a run of show. This article shows how.
It's a genuine standalone use case. The features that make it work, embedded registration forms, document Requests with expiry tracking, a no-login upload link, and a cross-account view of everything expiring soon, are unusually strong in 1pm, so a contractor register built on them holds up on its own without any event attached. If your interest is onboarding and document compliance rather than event management, read this as the whole workflow, not a corner of a larger one.
The example throughout is a business that engages a pool of external contractors (trades, AV techs, security, cleaners, casual crew) and has to hold a current insurance certificate, a signed agreement, and an induction acknowledgement for each of them before they're cleared to work. The same shape covers onboarding suppliers, franchisees, volunteers, or any group you need documents from on a repeating basis.
The shape of an onboarding-only setup
Three 1pm features carry the whole workflow, and none of them require you to build an event in the usual sense:
- An embedded form on your website starts the registration. A contractor fills it in, and their details land in your inbox ready to bring into 1pm.
- Requests collect the documents and answers you need from each contractor: an insurance certificate, a signed contract, an ABN, a safety-brief acknowledgement. Uploads can carry an expiry date.
- The Requests overview and each contact's request history keep the paperwork current over time and give you a per-person compliance file you can pull up on demand.
The one thing to know up front is how 1pm models a contractor. A crew member in 1pm is stored as a vendor, and "crew" is just the label for a person you give access to via a share link. So a contractor you're onboarding is a crew member, added to a record in 1pm, and the requests you send them are the onboarding checklist. Everything else in the app, the timeline, the BEO, the pax and covers, simply stays empty and out of your way.
Decide how to model your register
There are two clean patterns. Pick one based on how much each contractor carries.
One register, everyone as crew (recommended for a pool). Create a single record, call it "Contractor register" or "2026 onboarding", and add every contractor to it as a crew member. Because a request asked of the crew is asked of each person independently, one "Upload your public liability certificate" request collects a separate certificate from every contractor, tracked per person. The Requests dashboard on that one record then becomes a scoreboard of your whole pool: who's cleared, who's outstanding, whose insurance is about to lapse. This is the neatest standalone setup, and it's the one the rest of this article assumes.
One record per contractor (for heavier onboarding). If each contractor needs a lot of individual back-and-forth, give each their own record instead. You get a cleaner per-person page at the cost of more records to manage. The Requests you send are identical either way.
Either way you're using the event record as a container, not as an event. Give it a name that reads as what it is, ignore the date-driven parts, and don't build a run of show.
Start registration with an embedded form
The front door to onboarding is the same embedded form 1pm uses for enquiries, pointed at a different job. Put it on the "Work with us" or "Contractor sign-up" page of your site, and a contractor registers themselves instead of you keying them in.
Build the form under Leads, then Lead Types. Turn on Hide the standard fields so you're not asking a contractor for a guest count, then add your own fields under Extra custom fields: trade or role, ABN or company number, base location, a "which certifications do you hold" dropdown. These come from your Fields list under Contacts, so define the ones you want there first, and mark the ones you must have as Required. Word the heading and button in the Form wording section so it reads as a registration ("Register as a contractor", "Submit registration") rather than an enquiry. Full detail on all of this is in Capturing enquiries with a form.
One practical note. 1pm's forms expect an event date, because their day job is capturing bookings. For onboarding there's no event, so use that field for something useful instead: the registration date, or a compliance review date you want to chase them by. When you bring the submission into 1pm it carries that date through, and you can change it later. If you'd rather not show a date at all, gather it through one of your own fields and set the label to suit.
Every submission lands in your Leads inbox, tagged to the form it came from. From there you bring the contractor into your register.
Bring a contractor into the register
Open the submission in the Leads inbox and convert it. If you're running the single-register pattern, the tidiest route is to add the contractor as a crew member on your "Contractor register" record and let their form answers save onto their contact record. Their trade, ABN, and location, captured on the form, are now structured data on the contact, ready to filter and report on later.
You don't have to use the form at all. A contractor who phones or emails can be added by hand: create the contact, add them to the register as crew, done. The form just saves you the typing and lets contractors self-register.
Send the onboarding requests
This is the heart of it. Open the register record, expand the Requests panel, and build your onboarding checklist once. Every contractor on the register sees it on their own link and completes it independently. The request types map neatly onto onboarding:
- Upload for documents: the public liability certificate, a signed contractor agreement, a trade licence, a white card or induction certificate, a bank details form. PDF, PNG, JPEG, or WebP, up to 10 MB each. Turn on Expiry for anything that lapses, and the contractor enters the expiry date alongside the file. This is the setting that makes 1pm a compliance tool rather than a filing cabinet.
- Text for details you need in writing: emergency contact, insurer and policy number, ABN if you didn't capture it on the form, a note on any restrictions.
- Choice for confirmations and selections: a single-option Choice renders as an acknowledgement checkbox, so "I have read and agree to the site safety rules" or "I confirm my insurance is current" becomes a tick you can see and record.
- Contact field to write an answer straight onto the contractor's contact record: their phone number or one of your own custom fields. Each contractor updates their own, so the register stays current without you retyping anything.
To attach a document for the contractor to read or sign before they upload, like a blank agreement or an induction pack, add it as a reference document on the request. See Attaching a reference document to a request.
If different contractors need different documents (an electrician needs an electrical licence, a security contractor needs a security licence, a general labourer needs neither), don't build separate forms. Wrap the role-specific requests in a Section and limit it to the named crew it applies to. Everyone else never sees it. Asking everyone for the same thing covers sections and how to limit who sees what.
The contractor's side: no login, works on a phone
Each contractor gets a shareable live link, and that link needs no account and no password. They open it on their phone, see a "Requests" card, and work down it: tap to upload the certificate, tick the safety acknowledgement, type their emergency contact, submit. A completion bar tells them how many required items they still owe you, so they know when they're done.
Because the link is public and mobile-first, onboarding a contractor is as simple as texting them the link. Nothing to install, nothing to sign up for. You can brand that view so it carries your logo and colours rather than looking like a generic form; see Branding your crew view and A fully branded workspace.
Review and approve what comes in
As documents arrive you can approve or reject each one in place. Rejecting a file (a blurry photo, an expired certificate, the wrong document) frees the slot so the contractor can re-submit, and they see that it's back to outstanding on their end. This gives you a clear sign-off step: nothing counts as done until you've approved it. Reviewing crew uploads walks through the approve and reject flow.
On the register record, the Requests dashboard turns all of this into a scoreboard. It counts one line per contractor per request, so you can see at a glance how many certificates are in, how many you've approved, and how many people still owe you something. Drill into "Outstanding" and print the list to work through your chase calls. The Requests dashboard covers the tiles, the chart, and the printable chase list.
Keep documents current over time
Onboarding isn't a one-off. Insurance lapses, licences expire, agreements get re-issued. Two views keep you on top of it without opening each record.
The Requests overview at 1pm.app/Requests is the cross-account chase view. Every upload that carries an expiry date feeds it, so you get a single list of certificates and licences expiring soon across every contractor, colour-coded so anything within 30 days warns and anything already expired shows as an error. From there you can email a contractor to prompt them for a fresh copy, and approve or reject what comes back. This is how you run renewals: watch the overview, chase what's about to lapse, and let the expiry dates do the reminding.
Each contractor's contact record carries a Requests tab that is their personal compliance file: everything you've ever asked them for and everything they sent back, across every record they appear on. When you need to prove a given contractor was cleared, or see the history of their insurance certificates, it's all on that one tab. A contact's request history covers it.
What you can ignore
Running 1pm for onboarding alone means large parts of the app simply don't apply, and that's fine. You don't build a run of show. You don't fill in the BEO fields, pax, service style, or access and vacate times. You don't touch quotes, invoices, or payments unless you want them. Leaving those blank costs nothing: the record renders without the parts you haven't used, and the onboarding features stand on their own.
If your needs grow later, the same contractors, contacts, and documents are already in 1pm and ready to attach to real events. But you're under no obligation to get there. As a contractor register and compliance tracker, 1pm is complete on its own.
Related articles
- Capturing enquiries with a form covers building the embedded form contractors register through.
- Asking crew for documents and info and Asking everyone for the same thing cover the Requests feature in full.
- Reviewing crew uploads covers approving and rejecting incoming documents.
- The Requests dashboard covers the per-register scoreboard, and A contact's request history covers each contractor's compliance file.
- Custom contact fields covers building the fields you add to the registration form and write back to with Contact field requests.