# Work with subcontractors: paperwork, sign-in, pay and job offers

> Keep each sub's W-9 and insurance current, let them sign in to see only their own jobs, offer them work at a price, mark them paid, and pull year-end totals and your workers' comp audit.

**Subcontractors** keeps the businesses you hire for jobs in one place: their W-9 and insurance certificates, what you pay them on each job, and what you owe them. A sub can also sign in to see only the jobs you give them, take or turn down a job offer, and send you their paperwork from their phone. Everything works for a sub who never signs in, too.

## Who can use it

**Subcontractors** is in the sidebar, in the group with **Timesheets** and **Equipment**, for:

- Owners, always.
- Admins and office staff whose role has **Subcontractors, their paperwork and pay**. The Admin and Office access levels have it, and so do the General manager, Office manager and Operations manager starter roles. Turn it on or off for a role under **Settings → Roles**.

Estimators, crew leads and field crew never see the **Subcontractors** page, a sub's paperwork or what you pay them.

## Add a sub

1. Open **Subcontractors** and choose **Add a sub**.
2. Enter their **Business name**, as it's written on their W-9. It's the only thing you need.
3. Add what else you have: **Trade**, **Contact name**, **Mobile phone**, **Email** and **Tax classification** (box 3 on their W-9). **Mailing address and notes** holds their address and notes only the office sees.
4. Choose **Add sub**.

Write a phone number with the area code. For a sub outside the US and Canada, start with + and the country code, like +52 55 1234 5678.

## Keep their paperwork current

Every sub needs three things on file: a **W-9**, **Liability insurance** and **Workers' comp** (a certificate, or an exemption). The **Subcontractors** list shows each one's status:

| Chip | What it means |
| --- | --- |
| **OK** | On file and current. |
| **Expires in 12 days** | Ends within 30 days. It says **Expires tomorrow** or **Expires today** at the end. |
| **Expired** | The one on file has run out. |
| **Missing** | Nothing on file. |
| **Not verified yet** | The sub sent one and nobody has checked it. |

The **Needs attention** tab lists every sub with anything expiring, expired, missing or not checked yet. **Active** lists them all.

### Upload it yourself

1. Open the sub. Under **Paperwork**, choose **Upload** (or **Replace**) next to the W-9, liability insurance or workers' comp.
2. Choose the PDF or photo. For workers' comp, pick **Workers' comp certificate** or **Workers' comp exemption**.
3. For insurance, add the **Insurance company**, **Policy number**, **Starts** and **Ends**. A certificate needs its end date, since that's what the reminders go by. For a W-9, you can add the day it was **Signed on**.
4. Choose **Add** (or **Replace**).

What you upload counts as checked. The one it replaces moves to **Replaced**, kept for your records and audits. Licenses, signed agreements and anything else go under **Other documents → Add**.

### Have them send it

1. Open the sub and choose **Send upload link**.
2. Tick **Text** or **Email** (or both), check the message, and see **What they'll get**.
3. Choose **Send text**, **Send email** or **Send text and email**. Or choose **Copy link** and send it your own way.

The link works for 30 days. No account is needed, and anyone with it can send paperwork for that sub but can't see anything. On their phone or computer, they see what you still need, choose **Take a photo** or **Choose a file**, and add the date a certificate ends. It takes a PDF, JPG, PNG, HEIC or WEBP file, up to 200 MB.

### Check what they send

Paperwork a sub sends shows **Not verified yet**. Open the sub, open the file, check it's the right document and the dates match, then choose **Verify**. Until you do, the certificate you checked before keeps counting, and keeps reminding.

:::note
Only certificates you've verified count in the [workers' comp audit](#year-end-totals-and-the-workers-comp-audit).
:::

### When insurance runs out

A sub whose liability or workers' comp has run out, or isn't on file, gets a warning on their page with **Ask for it**, which opens **Send upload link**. It's only ever a warning: you can still give them work. Without current certificates, though, your insurance company may charge you for their work at your workers' comp audit.

Crewtavo reminds you 30 days and 7 days before a certificate ends, and on the day it ends. With **Remind subs when their insurance is about to expire** on (it is unless you turn it off), the sub gets the same reminders by email or text, with a link to send the new one. The switch is in the card at the bottom of the **Subcontractors** page.

## Give a sub their own sign-in

A sign-in is optional. With one, a sub sees the visits you put them on and their own paperwork, takes job offers, and sends paperwork from their phone. There's no password: they tap a link once and stay signed in on that phone.

1. Open the sub. In the **Sign-in** card, choose **Text sign-in link** (it needs their mobile number) or, if you have their email, **Email sign-in link**.
2. To send it your own way, choose **Copy sign-in link** from the card's menu.

If this Crewtavo can't send texts, **Text sign-in link** offers **Open Messages**, to send the link from your own phone with the text filled in.

A link works once, within a day. Whoever opens it signs in as that sub, so send it only to them. The card's menu also has **New sign-in link** (the old one stops working) and **Remove sign-in** (it stops working right away, and their phone is signed out). A sub who already has their own Crewtavo sign-in shows **Own sign-in** and needs no link.

Two switches in the card set what their sign-in shows. Both start off:

- **Can contact clients**: they see the client's phone and email on their visits, to call or text them. Off, they see the client's name only.
- **Uses the clock**: they clock in and out on their visits, like your crew, and their hours show on **Timesheets** for your records. They're still paid by the job, never through a pay period.

### What a sub sees

A signed-in sub has **My day**, **My jobs**, **My paperwork** and **Profile** (on a phone, the bottom tabs read **My day**, **My jobs**, **Paperwork** and **Profile**), and nothing else: not your other clients, your prices, your team or your invoices.

- **My day** shows the visits you've put them on, like your crew's, with the address, gate code, notes and checklist.
- **My jobs** lists **Waiting for your answer**, **Coming up**, **Done, waiting to be paid** and **Paid**, with this year's total.
- **My paperwork** shows what you need from them, and lets them send it.

To put a sub with a sign-in on a visit yourself, use the visit's **Subcontractors** picker. See [who's on each visit](https://crewtavo.com/docs/jobs/schedule-and-routes/#see-whos-on-each-visit).

### Signing in on a new phone

On the sign-in page, a sub chooses **Subcontractor? Get a sign-in code by text**, types their number and chooses **Text me a code**, then types the code under **Enter your code**. A code has 6 digits, works once within 10 minutes, and allows 5 tries.

- **No phone on file? Get a code by email instead** sends the code by email. When this Crewtavo can't text, the link reads **Subcontractor? Get a sign-in code by email**, and **Email me a code** sends it.
- Codes only go to the phone number or email on the sub's record here, so keep those current.
- Codes by text need [texting set up](https://crewtavo.com/docs/hosting/settings/), and codes by email need [your email connected](https://crewtavo.com/docs/connections/email/). The **Sign-in** card says which ways a sub can get a code.
- Your team doesn't use codes. They sign in with a password, an emailed link or Google.

Texts cost money, so codes only go to US and Canadian numbers unless you add a country. Under **Sign-in codes by text** at the bottom of the **Subcontractors** page, type the country's calling code (like 44 for the UK) and choose **Add a country**. You can add up to 20.

## Set their rates

Rates fill in a sub's pay on a job, so you don't work it out each time. Open the sub, and under **Rates** choose **Add a rate**:

- **Per square or unit**: a rate times a price-list service's quantity on the job. For a service sold by the square, pick **The job's squares (what the client pays for)** or **Roof squares without waste**.
- **Per job**: the rate once.
- **Per day**: the rate times the days of the visits it covers.

You can still change the amounts on each job.

## Offer a sub a job

1. Open the job. Under **Sub and crew pay**, choose **Add pay**.
2. Choose **A sub**, then the sub. Subs with their paperwork in order come first, and the rest say what's wrong, like "Workers' comp expired".
3. Tick the **Visits it covers**, check **What their rates come to**, and choose **Add pay**. It's saved as a draft, which the sub doesn't see, and opens so you can change the lines.
4. Choose **Send offer**.
5. Pick when **They answer by**: **No deadline**, **In 2 hours**, **End of today**, **Tomorrow at noon** or **Pick a time** (up to 90 days away).
6. Choose **Send offer**.

They get it in Crewtavo, and by email or text as their notification settings allow. Until they take it, they see the town, the days, the work and their price, not the address or the client. They choose **Accept** or **Decline**, and can say why they declined. Accepting puts them on the visits it covers.

If their insurance has run out, is missing, or ends before the work does, the offer shows **Check their insurance** and the button reads **Send anyway**. It never stops you. The offer notes the warning for your audit.

For a sub who doesn't sign in, or who said yes on the phone, choose **Agree to this pay** (or **Agree and put them on the job**) instead of sending an offer.

### What happens next

A sub's pay shows one of these on the job:

| Status | What it means |
| --- | --- |
| **Draft** | Not agreed yet. The sub doesn't see it. |
| **Offered, waiting for an answer** | Sent. You can still **Withdraw offer**. |
| **Accepted** | They took it, or you agreed it for them. |
| **Declined** | They turned it down. **Offer someone else** starts it again for another sub, for the same visits. |
| **No answer in time** | Their time to answer ran out. You get a notification. |
| **Withdrawn** | You took the offer back. They're told. |
| **New price waiting** | You sent a new price with **Change price**. If they decline it or don't answer in time, the price they agreed stays. |
| **Work done** | Their visits on the job are complete, so they're owed. It's marked by itself, or with **Mark work done**. |
| **Paid** | You marked it paid. |
| **Cancelled** | Called off. It stays on the job. |

## Mark subs paid

Crewtavo doesn't send money. Pay the sub your usual way, then record it:

- On the job, open their pay and choose **Mark paid**.
- On the sub's page, under **Pay**.
- On the **Subcontractors** page, the **Owed** card lists all work that's done and not paid yet. Tick several and mark them paid at once.

Fill in **Paid on**, **How you paid** (**Check**, **Bank transfer**, **Cash**, **Card or payment app**, **Payroll** or **Other**) and a **Reference**, like a check number. Paying one job, you can change the amount. To undo it, open the pay and choose **Take back paid**.

Sub pay that's agreed, done or paid counts in a job's costs as **Sub and crew pay**. See [Finance](https://crewtavo.com/docs/billing/finance-and-metrics/#profit).

## Year-end totals and the workers' comp audit

**Year-end totals** (at the top of the **Subcontractors** page) shows what you paid each sub in a calendar year, by the day you paid them, for their 1099-NEC. It opens on last year in January and February, and on this year after that.

- Each sub shows their total, number of payments, tax classification, and whether a 1099-NEC is **Needed** or **Not needed**.
- Corporations are flagged as usually not getting a 1099.
- Card and payment-app payments are left out: the card company or app reports those on a 1099-K.
- Payments through payroll count, but your payroll service may already file that 1099. Check before you send one.
- Tax ID numbers aren't kept in Crewtavo. Your bookkeeper takes them from each sub's W-9.

**Download CSV** saves the list for your bookkeeper.

**Workers' comp audit** answers the auditor's question: what you paid subs for work during the policy period (or agreed to pay, where it isn't paid yet), and whether each one had their own workers' comp. Pick **Last 12 months**, this year, last year, or your policy's dates. Each job shows the days worked, the amount, **Covered**, **Partly covered** or **Not covered**, and the certificates on file for those days. **Download CSV** saves it for the auditor.

:::caution
These pages help you get organized. They aren't tax or legal advice. The amount that makes a 1099-NEC necessary changes, so check the [IRS's instructions for Form 1099-NEC](https://www.irs.gov/forms-pubs/about-form-1099-nec) for the year, or ask your accountant.
:::

## Notifications and automations

People with the Subcontractors area get notifications about insurance running out, paperwork a sub sends in, and answers to job offers. Each person chooses how under **Settings → Profile**, in the **Subcontractors** topic.

Automations have four triggers for subs: **A job is offered to a sub**, **A sub takes a job offer**, **A sub turns down a job offer** and **A job offer to a sub runs out**. They're for people with the Subcontractors area, and only ever notify the office.

## Turn off or delete a sub

From the **⋯** menu on a sub's page:

- **Turn off**: they leave the list, stop getting reminders and can't sign in. Their paperwork stays, and **Turn back on** brings them back.
- **Delete**: their paperwork is deleted too, and their sign-in is removed. To keep their paperwork for your records, turn them off instead.

Source: https://crewtavo.com/docs/team/subcontractors/ (last updated 2026-11-04)
