Builders never log in to their own estimate

A signed-in builder or agency user opening their own customer link is admitted straight through, password or not, and the visit is not counted as a customer view.

What it is

The portal attempts an automatic sign-in on every load and lets the server decide. /auth admits a platform user whose org owns the link, or platform staff, and skips the password only for them. Everyone else on a passworded link gets a 401 and sees the form. The same internal check suppresses opened_at, the estimate-opened notification and dwell-time recording.

Also called: preview my estimate · see what the customer sees · internal preview

See it
Builders never log in to their own estimate
🔒ridgelinepostframe.com/project/builde936
Riding Arena
Framing · on schedule
Split view: builder clicks 'Client Estimate' in the dashboard and lands inside the customer page with no prompt. Logic in src/app/api/client-portal/auth/route.ts. Sample data — no customer information appears here.
How it works
  1. 1The page posts the link's own contact details to /auth as a best-effort sign-in
  2. 2The server resolves the caller's platform session and compares org ownership
  3. 3Internal users bypass the password and are marked as internal viewers
  4. 4The tracking heartbeat re-checks the real session and records nothing for internal visits
Why we built it

Builders write the estimates, so making them log in to read their own quote was friction with no purpose — and when a customer set a password on the link, the builder was locked out of their own document. Worse, a builder previewing their own send tripped the "your estimate was opened" alert, so the open-tracking numbers counted the builder's own visits and the follow-up call went out on a false signal. Internal users pass straight through and their views are excluded from tracking, checked against the real platform session rather than anything the browser claims, so a customer cannot opt out of tracking by editing a request.

The problem
  • Builders locked out of documents they created
  • Self-previews polluting open tracking and firing false alerts
Sound familiar?
What you get
One click from the dashboard into the exact customer view
Open alerts and dwell time mean a real customer, every time

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →