When you send a customer their portal link, they get a bookmarkable URL (no Plyrium login required) that shows everything tied to their account: upcoming visits, invoices to pay, quotes for review, the equipment we know is at their property, and service history.
Why magic-link, not signup
Most contractor customers are 50+, on phones, and won't remember a password they made for an invoice from your shop. Magic links to bookmarks are the right UX for this audience — same security model as Stripe payment links.
Sending the link
- 1Open the customer's detail page
/portal/customers → click any card.
- 2Click 'Send portal link'
Top of the page, next to New quote / New invoice.
- 3We email it
Sent to the customer's email of record. Subject line: 'Your [your business name] customer portal'.
- 4Optional: copy + text it
After sending, the URL surfaces in the UI so you can copy it into a text message — useful when the customer reads texts but ignores email.
What they see
- Greeting + your business name + your phone number.
- 4 summary tiles: Upcoming visits, Amount due, Open quotes, Equipment count.
- Upcoming appointments with date/time/duration/address.
- Invoices to pay (clickable through to your Stripe payment link).
- Quotes awaiting their decision (clickable through to the public quote page).
- Equipment at their property — type + brand + install date (no internal notes).
- Service history — past appointments with dates.
Token expiry + privacy
Each token works for 30 days. After that, send a fresh link from the customer detail page (the customer won't notice; the new link replaces the old in their bookmark). Tokens are 192-bit URL-safe random strings — unguessable. We log when each token was last used + the IP it was used from for audit purposes.
The portal is read-only EXCEPT for: accepting quotes (per-doc token), paying invoices (per-doc token), and managing their saved card / subscriptions via the Stripe Billing Portal entry — see the dedicated article.