Client portal development

Your customers call
because they see nothing.

Where is my order, has that invoice been processed, which quote was it again. The same question every time, someone looking it up and calling back every time. A client portal takes that work away: your customer logs in and sees their own file, you see who looked at what.

Sound familiar

Why companies start on this.

01

The same question, every week

Status, planning, invoices, documents. Every one of them data you already have, but that your customer can only reach through you.

02

Everything goes through email

Attachments that get lost, versions that do not match, and afterwards no trace at all of who approved what and when.

03

Everyone sees too much or too little

A shared folder or spreadsheet has no roles. One wrong link and customer A is looking at customer B's file.

04

Your team works in three systems

Planning here, invoices there, client details in a third tool. Nobody knows which source is right anymore.

05

Growth means more manual work

Twice as many customers currently means twice as much looking up and forwarding. That does not scale with your revenue.

06

Your customers expect it

Everyone knows a portal from their insurer or supplier. Not having one now stands out.

How it works

From first call to a portal that actually gets used.

01

Work out who may see what

Which roles exist, which data belongs to which customer, and what an employee may do that a customer may not. This decides the rest of the build.

02

Connect to what you already have

Your accounting, CRM or planning stays the source. The portal shows that data; it does not become a fourth place where someone retypes the same thing.

03

Build with permissions in the database

Row-level security in Supabase, so every customer can only reach their own file. Even if someone skips the front end.

04

Roll out with a few customers

A pilot with a handful of users first, then everyone. Including a short walkthrough so your team can manage it themselves.

What you end up with
  • Customers who see their own file
  • Login with roles and permissions per user
  • Integration with your accounting, CRM or planning
  • An admin side where your team manages everything
  • Repository and hosting in your name

The price depends mostly on the number of integrations, not the number of screens. After a half-hour call I know enough for an indication, and after Discovery you get a fixed number.

Frequently asked questions
What does a client portal cost?
You get one fixed number for an agreed scope. What that number is depends mostly on how many systems get connected; those integrations usually cost more time than the portal itself. After a short call you get an indication.
How long does it take?
Usually four to six weeks. If you do not know exactly what should be in it yet, you start with a five-day Discovery: that produces a clickable prototype and a fixed price, and the fee comes off again if you go ahead.
Can it connect to our current system?
Usually yes. If your package has an API, I connect to it. If not, we look at an export, an intermediate layer or a periodic sync. In Discovery that is the first thing checked, because it decides the rest.
How safe is it when customers can log in?
The permissions sit in the database itself, not only in the screens. Technically every customer can only reach their own data, even if someone bypasses the front end. We do not store passwords ourselves and all connections are encrypted.
What if we want to extend it later?
That is the starting point. The code sits in your repository with documentation and migrations, so extending can be done by me, by your own team or by another developer.
We already built something with an AI tool. Can that come along?
Often yes, and it saves time because you already tried out what you want. I first judge what is usable and what is missing below the waterline. There is a separate track for that: vibecode to production.
Let's build

Tell me what you
want to build.

A half-hour call. You get an honest answer about what it costs, how long it takes and whether building it is smart at all.

This is what it looks like

The overview your team gets.

A working example, not a screenshot: change the period and hover over a bar. In a real portal this data comes from your accounting or planning, and every customer only sees their own rows.

Revenue per month
Sample data · not real figures
Revenue in period
€331,000
Orders
768
Average order
€431
Last month
-19%
FebMarAprMayJunJulAugSepOctNovDecJan
Revenue and orders per month
MonthRevenueOrders
Feb€18,40042
Mar€21,90051
Apr€19,70046
May€24,30058
Jun€27,80063
Jul€25,10055
Aug€22,60049
Sep€29,40068
Oct€31,20074
Nov€35,80086
Dec€41,30097
Jan€33,50079

More working examples are on the demo page.

Bas Voets · Webframer
0:00 / 0:00
Client portal development · fixed price up front · Webframer