Internal build - Customer-Facing PortalInternal Build - Customer-Facing Portal · 2024–2026
Customers log in once and see everything.
No password resets. No "can you resend the invoice?" calls. No lost artwork files. One link in an email gets them to a portal with every invoice, file, proof, and message in their history.

> French Press Custom (parent brand) / shipped
- Self-serve
- Invoices, artwork, proofs, messages
- 1-click
- Magic-link auth (no passwords)
- All in one
- Every invoice, file, and message in one place
- Real-time
- Supabase Realtime messaging
Reproducible scope
A build like this starts at $25,000+ · 8-14 weeks
Challenge
Customers were emailing the shop constantly: "where's my invoice?", "can you resend the artwork proof?", "is my order ready?". Each question was a human-time tax. A portal that surfaced everything self-service would free the team for actual production work.
Approach
- 01Supabase Auth with email magic-link OTP - no passwords, no lost logins.
- 02Dashboard listing all open + completed orders with pizza-tracker style status.
- 03Invoice viewer with Stripe payment integration - customers pay without calling.
- 04Artwork library backed by Supabase Storage - every file the shop has produced for this customer, organized.
- 05Two-way messaging via Supabase Realtime - customer messages shop, shop sees it instantly in Command Center.
- 06Token-based share links for non-account holders (view an estimate without creating an account).
Results
- Replaced recurring manual status emails from the sales team.
- Customers can view + pay invoices, approve proofs, download artwork, and message the shop without picking up a phone.
- Magic-link login eliminates password reset tickets entirely.
- Sales team gets push notifications the moment a customer responds.
Next on the schedule
Same crew, same stack - pointed at your operation.
Send the context. We audit what you have and reply within one business day with an honest read on fit.