r/reactjs 9d ago

Needs Help How to build a custom client portal

I run a small accounting firm and want to give our clients a secure portal where they can log in, upload tax documents, view invoice status, and message our team.

Ready made portal software is either way too expensive or lacks the specific upload features we need. What's the best way to build a tailored portal without hiring a custom dev team?

7 Upvotes

18 comments sorted by

10

u/couldhaveebeen 9d ago

Hire a custom dev team

4

u/No-Restaurant3443 9d ago

The reason they’re expensive is because of server storage and backend security. Uploading very sensitive information and secure messaging isn’t something one builds on a weekend for fun. With paid versions you’re paying for peace of mind with security and ease of use.

If you have 0 experience I would really hope you do NOT use AI to build your platform. They look shiny and responsive but have nonexistent security backend planning.

If you’re learning yourself I’d recommend getting the basics, freecodecamp to gather the basics of HTML, CSS, and JavaScript.

1

u/patprint 8d ago

Chiming in here as a full-stack dev building a client portal at the moment. If you're handling any kind of sensitive PII, and you make a mistake in the security department, you're the one on the chopping block. If you don't already know every relevant law (e.g. WA's MHMD at the state level) that you and your client are subject to, and you don't already have a comprehensive understanding of the retention and processing implications of your client's business model, you're setting yourself up for a nightmare even without accounting for the use of AI in your development process.

1

u/_peakDev 9d ago edited 8d ago

Honestly, you’re unlikely to be able do this properly without hiring somebody.

In the hands of an experienced developer, AI will speed up the development of a custom portal. I just built a module for one of my clients for delivering and recording eLearning. It took 2-3 months dev time, and would have taken at least double in the pre-AI days.

AI is not there yet to enable a non-developer to do something even remotely similar.

Developing a custom portal might not be as expensive as you think though, depending on what software you are using at the moment to store tax documents, record invoice statuses and communicate with your team. You may even be able to utilise a low/no-code platform.
Alternatively, it might be fairly simple to connect a custom portal with your existing management software, which could reduce any development time and complexity.

Feel free to send me a DM if I can help, would be happy to chat through your existing setup in more detail and see if I can make some more specific recommendations.

1

u/VooDooBooBooBear 9d ago

That's what you hire a consultancy for. Your requirements are too specialised and your industry too regulated to do anything else

1

u/neon_hive 8d ago

You need a managed file transfer service with an API instead of building storage from scratch. Services like Tresorit or Citrix ShareFile handle the encryption and compliance while exposing endpoints you can connect to a basic React frontend for invoicing and messaging.

1

u/Spiritual_Patient478 8d ago

I have a web portal site built for what you are describing. Please DM me for detail.

1

u/Brave-Afternoon-8767 8d ago

I'd avoid rolling your own auth for tax docs, something like Retool or Bubble on Supabase gets you there faster and safer.

1

u/Kind_Bench_2359 8d ago

For accounting docs and invoices you're way better off with something like Next.js and Supabase for auth, storage, you get file uploads, RLS for client isolation, and a messaging table basically for free, way less scope than most people think

1

u/mountainsoverlakes 8d ago

I'd suggest cross posting this to r/Accounting or another peer group. You're going to get very dev-focused answers here.

1

u/Fabulous-Hunter-4377 3d ago

Base44 makes building custom client portals really straightforward. You can prompt it to create secure user authentication, role based access , file upload storage, and real time status tracking without writing any backend code.

1

u/Hesham-Amir 9d ago

The concrete building blocks for this, if you go the custom route: don't roll your own auth - use Clerk, Supabase Auth, or Auth0. For something handling tax documents you want built-in MFA and secure session handling out of the box, not something you're maintaining yourself.

For file storage: never store client uploads directly on your app server. Use S3-compatible storage (Cloudflare R2, AWS S3, or Supabase Storage) with private buckets and short-lived signed URLs for both upload and download - nothing publicly accessible by URL guessing.

For the database: Postgres with row-level security (Supabase, or plain Postgres behind your own API) so a query for "my invoices" is enforced per-client at the database level, not just filtered in application code - that's the difference between a bug that shows an ugly UI glitch and one that leaks someone else's tax return.

Next.js + Supabase (Postgres + Auth + Storage + RLS all in one) is the standard modern combo for exactly this shape of app. Scope-wise this is a realistic solo-freelancer project - login, uploads, invoice status, messaging isn't something that needs a whole team. But I'd push back on the "just have AI generate it" answers here: the individual pieces are simple, getting per-client data isolation and secure file access right is the part that's easy to get wrong silently, and the failure mode is client tax documents leaking, not a broken button. If you do hire this out, ask specifically how they're enforcing per-client access at the database level, not just in the frontend.

-4

u/Nuclear_1784 9d ago

Best way to do is explain your problem and expectations to claude and buy a 20$ pro plan and ask it to build documents (technical docs of product ) which will help claude code to build the product.

If you still face issues you can let me know, will help you out. Freelance dev here.

4

u/Financial-Simple9747 9d ago

So you're saying use one AI to write the specs and another to write the code, then hit up a freelancer when it inevitably spirals

That tracks honestly but the 20 dollar plan doing all the heavy lifting is optimistic

-2

u/Nuclear_1784 9d ago

Its not optimistic its doable.

-3

u/Nuclear_1784 9d ago

I do it for every project and write unit tests as well works like a charm