A contractor takes a job when they cover the chosen Service Area and handle the Job Type. Pin colors below show area coverage density: red = none, yellow = 1–2, green = 3+.
🧾Contractor to-doshow ▾
—
Show
Loading…
🔍
Editing coverage for —
Click pins to toggle · 🟢 covered · ⚪ not covered
3+ contractors
1–2 contractors
No coverage
Click points on the map to draw a polygon
Double-click the last point (or click the first point again) to finish
✏️ Drag the polygon vertices to reshape
Click an edge midpoint to add a new vertex · Right-click a vertex to remove it
🗺️
Loading map…
Import zones from Google MyMap (KML)
✕
In Google MyMap: 3-dot menu → Export to KML/KMZ → check Export as KML → save the .kml file. CSV won't work (points only). KMZ won't work either — extract the inner doc.kml first.
MyMap polygons don't carry a job type — pick one to apply to every zone in this batch.
⧉ Copy zones to another job type
✕
A zone is a shape on a map with a job type on it. When a new job type covers the same ground as one you have already drawn, this copies the shapes across instead of you drawing them again.
Only adds. A job type that already has zones is refused rather than merged into — copying twice would double a coverage map and there is no undo for that.
Unfiled zones
✕
These zones carry a job type that no longer exists — renamed or deleted since they were drawn. They stay on the map under All so nothing vanishes silently, but they appear under no job-type filter, and the New Job form never suggests them.
Two ways out. To keep them: in Control Panel → Job Types, name a type exactly as it reads below — the zones, contractors and jobs filed under it come straight back. To drop them: delete them here. There is no undo.
Delete zones
✕
Tick the job types to clear. A ticked type loses its zones in every office, not just the ones on screen or under the current filter — the shapes, the contractors on them and their priority order. There is no undo and no export.
A type with no zones left stops suggesting contractors by map on the New Job form. Contractors, service areas and jobs are untouched.
Save Zone
✕
Determines the zone color and which contractors are eligible to be added.
Use ↑ / ↓ to reorder. The first contractor is the primary suggestion. Only contractors who handle the selected Job Type appear here.
Add Contractor
✕
Profile
Who they are and how the office reaches them.
Names on their Zelle or wire payments are kept in Finance → Company Names, where one contractor can have several.
Work
What they do and where they go.
Pay
Their share of a job's profit. Changing it touches new jobs only; every existing job keeps the share it was made with.
%
%
Where the secondary share applies
A job at one of these ZIPs pays the secondary share.
Loading job partners…
A job from one of these partners pays the secondary share too, whatever its ZIP.
WhatsApp
The number that gets their report by DM, who the bot tags in the group, and the group the job dispatches land in.
Short and long job messages land in this group with the K / PASS buttons. One group per contractor, from the account the bot is signed into.
Offices
Which offices see this contractor — in this list, on the service-areas map, in the picker on a new job, and as a WhatsApp thread in their inbox.
Untick an office and the contractor disappears for everyone in it, so at least one is required. Offices you do not belong to keep whatever was set.
App
The contractor phone app: their jobs, the customer on each, the money, and calls and texts from the office number. Only contractors switched on here can sign in.
Save the contractor first, then switch the app on here.
The invite emails a link to choose a password, valid for one hour. Press it again any time to send a fresh one.
Bulk Upload Contractors
✕
Drop a .xlsx or .csv with these columns (header row required): A — Contractor Name · B — Contact Person · C — US Number · D — WhatsApp Number · E — Email · F — Profit Share % · G — 2nd Profit Share % · H — Zipcodes for 2nd % · I — Job Partners for 2nd % · J — Notes · K — Pay Company (Zelle/Wire)
Existing contractors are matched by name (case-insensitive) and updated. Service areas + job types stay untouched on update — wire those up after.