Admin

Configure customer and vendor portals

Open Portals → Customer in Thermal →

Portals is where office staff manage the self-serve sites your customers and vendors log into — inviting people, reviewing what they submit, and seeing which modules are switched on. This is the office-side setup screen, not the portal itself: customers and subs never see this page.

Customer portal (/portals/customer)

Requires the Customer portal module to be switched on under Settings → Capabilities. Until it is, the screen says the module is not turned on.

Invite a customer to the portal

Pick a customer from the rail — search by name, or filter to With access / No access — then, from the Access & roles tab, enter an email and choose Send magic link. The customer signs in with a one-time link instead of a password; links are single-use and expire after 15 minutes, and a session lasts 30 days once used. If email delivery isn't connected for this shop, or a send fails, the link is shown directly so you can copy and share it another way.

Every invite currently grants the same full-access session — the four listed roles (Owner, Facilities manager, Billing, Spend viewer) describe what's planned, but assigning a specific role per member isn't wired yet.

Revoke access

Revoke on an active member signs the customer out. Sessions aren't tracked per invited email, so this signs out every active portal session for that customer, not just the one row you clicked — the confirmation says so.

Check modules and booking mode

The Portal settings tab lists which of Customer portal, Vendor portal, and Marketing are switched on for this org. Self-serve booking (choosing real open slots instead of every request landing as an office triage item) isn't configurable yet.

Review usage

The Usage tab shows logins and approved quotes over the last 30 days, plus recent activity. Bookings and payments show as not yet measured — self-serve booking and online payment aren't built, so there's nothing real to count there.

Vendor portal (/subcontractors/portal)

Requires the Vendor portal module to be switched on (and its rollout to be active). One surface covers both subcontractors (labor) and suppliers (parts).

Work the control board

The screen opens on the control board, not a vendor list:

  • Compliance — every certificate of insurance (COI) a sub uploaded that's waiting on office review. Approve re-checks the COI's dates and lands the sub on the correct state (compliant or expiring soon) — approving the document doesn't force a compliant status if the dates don't hold up. Reject requires a reason, shown to the vendor.
  • Acceptance SLAs — per-subcontractor assigned/accepted/declined counts, acceptance and decline rates, how many are awaiting a response past 24 hours, and average time to acknowledge.
  • Submission queues — subcontractor cost quotes and subcontractor/ supplier invoices waiting on a decision, with bulk-approve for quotes and invoices (revision requests stay one-at-a-time since the reason needs to be specific).

Choose Browse vendors to switch to a searchable rail of subs and suppliers instead of the queue view.

Review a subcontractor's compliance

Open a subcontractor and its Compliance tab shows the current state (no docs → pending review → compliant → expiring soon → expired, or manually blocked) with the specific reason on file — an expired COI, a missing document, or a block reason. Only the certificate of insurance is tracked; EPA, W-9, and license documents aren't yet. Block a sub independent of its COI dates (a dispute or a contract you've ended) with a required reason; unblocking re-evaluates from the COI dates, or falls back to pending review if a document is still waiting.

Track work-order responses and decide quotes/invoices

A subcontractor's Work orders tab shows every assignment and whether it was accepted, declined (with reason), or is still awaiting a response. The Quotes tab lets you approve a submitted cost quote or request a revision with a reason; the Invoices tab lets you approve or refuse a submitted invoice (refusing also requires a reason).

Manage a supplier

A supplier's record shows its Purchase orders (status, expected date, total) and submitted Invoices for approval or refusal — no compliance tab, since suppliers aren't tracked for COI.

Send an individual invite

Portal invites to a specific subcontractor or supplier are sent from that party's own record — Subcontractors or Purchasing — not from this screen. This screen is for reviewing what they've submitted and their compliance/response status after they're in.

Reference

  • Who can reach Portals — Owners and Office users. Dispatchers and technicians don't have this area. See Roles & permissions.
  • Compliance states and other portal status values — in Status & domain values.

On this page