ENSVContact

How we turned an inbox-driven quoting flow into a platform

ProfileXpressProfileXpress logo

How we replaced manual quoting and email follow-ups with a customer portal and an in-house quote-and-order module, backed by one database and integrated with Fortnox.

ProfileXpress sells branded promotional products to companies across Sweden: mugs, hoodies, conference bags, anything that takes a logo. Every order starts the same way. A request comes in, a quote is drafted, files move back and forth, the customer approves, and the order goes into production.

The challenge

A quoting flow that lives in email, and customers who can't see their own history.

Every request, whether from the webshop, from email, or from a returning customer, landed in someone's inbox and was tracked from there. PDF mockups and AI source files were scattered across drives and threads, and every quote was rebuilt by hand: customer details typed in again, attachments re-attached, status kept in someone's head.

Customers, meanwhile, had no way to see what they'd ordered before or start a repeat order themselves. A reorder meant writing an email and waiting for someone to dig up the original.

The approach

One Next.js codebase, one PostgreSQL database, two domains, and Fortnox kept as the source of truth.

We built the portal and the admin on a single Next.js codebase backed by Supabase Postgres, deployed on Vercel. Same auth, same data model, same components, with two domains pointing at the same app. A customer order and the team's view of it stay in sync without any extra plumbing.

Fortnox stays the master system for customers, products, and accounting. The platform talks to Fortnox over OAuth, syncs the data it needs, and pushes approved orders back as quotes or orders. Finance keeps its existing workflow, and operations gets a system built around how quoting actually works.

Customer auth is passwordless by default: a magic link to the email a quote already lives at, with an optional password after first login. Anyone who has ever placed an order with ProfileXpress can log in and find it.

What we built

A customer portal, a quote-and-order admin, and the integrations that hold them together.

  • A portal for admins and customersOne place for both sides of an order. The team manages quotes and orders; customers see their history, place repeat orders, and message the team directly.
  • Fortnox integrationCustomers, products, and orders sync straight to Fortnox over its API, so the team doesn't re-enter anything to get a quote or order into the books.
  • Automatic emails, SMS, and PDFsThe system messages customers as their order moves along and generates the quote and order PDFs for them, so nobody writes those by hand.

The outcome

Less manual quoting, customers who can serve themselves, and Fortnox still the source of truth.

The portal and the admin shipped on one codebase, with Fortnox kept as the master system. Customers can find their own orders and place repeat orders without emailing anyone, and the team works quotes from a dashboard instead of an inbox. Adding a customer no longer means adding manual work.

Want to know more? Get in touch!

Viktor Westberg

Viktor Westberg

Click to copy

More work