
Client Portal Builder: give every client a secure login
Describe what clients should see and do. Totalum builds the portal, with logins, documents, invoices and messages.
Quick answer · Updated November 2026
A client portal builder creates the secure area where your clients log in to see documents, pay invoices and message your team. Totalum builds it from a description: per-client logins, a file vault, Stripe card payments and email alerts, on its own database. It is free to start; your own domain needs a paid plan, from $29 a month.
Inside the accounting firm portal
Data model
| Table | Key fields |
|---|---|
| clients | company name, tax ID, main contact, assigned accountant |
| client_users | name, email, client, role (owner, member) |
| documents | file, client, category (tax return, payroll, receipt), uploaded_by, uploaded_at |
| invoices | client, number, amount, due date, status, Stripe payment link |
| messages | thread, client, author, body, read_at |
| staff | name, email, role (accountant, manager, admin) |
Screens (6)
- 1
Client login: email sign-in, with password reset.
- 2
Client home: open invoices, documents added this month and unread messages.
- 3
Document vault: folders by category, upload by drag and drop, download history.
- 4
Invoices: list with status, and a "Pay by card" button that opens Stripe checkout in a new tab.
- 5
Messages: one thread per client, with file attachments.
- 6
Staff admin: every client, their documents and invoices, and a filter by accountant.
Built-in integrations used
No API keys.
Sign-in: one login per client user, with data scoped to their own company.
File storage: the document vault and message attachments.
Stripe payments: invoice payments go straight into your firm's Stripe account.
Email: "new document", "invoice due" and "new message" notifications.
Document scanning: read the date, supplier and amount from uploaded receipts and invoices.
PDFs: monthly statements and invoice copies.
Build it in 3 steps
- 1
Paste the prompt.
Use the example, or list who your clients are, what they need to see and what they need to send you.
- 2
Refine with follow-up prompts.
For example:
- "When a client uploads a receipt, scan it and fill in the date, supplier and amount, then put it in 'To review'."
- "Email the client 5 days before an invoice is due and again on the due date if it is still unpaid."
- "Add a 'Requests' tab where staff ask a client for a document and the client sees a checklist."
- 3
Publish on your domain.
Put it on a Totalum address on any plan, or on portal.yourfirm.com with a paid plan. Connect your Stripe account through the Payments onboarding link, then switch the published portal to real payments.
Every client sees only their own data.
The permission rule from the prompt ("clients see only their own data") is written into the app's code and database queries, not bolted on as a sharing setting. Client users from one company can share a login group; staff get a wider view based on their role. Adding a new client is a record in the database, not a new seat.
Documents that read themselves.
Clients upload receipts, payslips and contracts from their phone or laptop. Built-in document scanning pulls the key fields out of each file, so your team reviews data instead of retyping it. Files sit in the project's own storage, organized by client and category.
Invoices clients can pay on the spot.
Each invoice carries a card payment through Stripe, paid into your own Stripe account. Renewals, failed payments and refunds reach the portal automatically, so an invoice's status updates without anyone marking it paid. The preview works with test payments, so you can try the full flow before going live.
One place for messages.
Email threads with attachments get lost. A per-client message thread keeps the conversation next to the documents it refers to, with email alerts when there is something new, so clients don't need to check the portal every day.
Building portals for clients? Resell them under your brand
Agencies that deliver portals to many clients can run the builder itself under their own name through the Totalum API: every project belongs to your account, and your clients never see Totalum.
See the white-label AI app builderClient portal builder: Totalum vs SuiteDash, Softr, Assembly, Clinked and Dock
| Totalum | SuiteDash | Softr | Assembly | Clinked | Dock | |
|---|---|---|---|---|---|---|
| Starting paid price (checked Nov 3, 2026) | Starter $29/month | Start $19/month | Basic $25/month ($19 billed annually) | Starter $49/month ($29 billed annually) | Start Up $8.80/user/month | Standard $350/month |
| Free plan | 50 credits once, 2 projects | 14-day trial | Yes, 5 app users | Yes, 5 active contacts, 1 internal user | Trial | Yes |
| How the price grows | Credits for usage; no per-client fee | Flat per plan; unlimited clients and staff | By plan, with app-user limits | By plan; extra apps $5/month, extra build credits $0.60 | Per user on Start Up; member bundles from Standard ($239, 100 members) | Per plan, 5 users included, extra seats $50/month |
| Your own domain | Yes, paid plans | White labeling on all plans | From Basic | Not stated in the pricing FAQ | From Standard | Not stated on the pricing page |
| Card payments for invoices | Yes, Stripe into your account | – | – | Yes, processing fees apply | Not listed | Not listed |
| Code export | Download and GitHub on paid plans | No | No | No | No | No |
Read on each vendor's pricing page on November 3, 2026: suitedash.com/pricing, softr.io/pricing, assembly.com/pricing, clinked.com/pricing, dock.us/pricing, totalum.app/en. USD. Copilot.com could not be checked: the domain now opens Microsoft Copilot.
Note: Portal suites like SuiteDash and Assembly bundle CRM, proposals and billing, and suit firms that want a ready product. Clinked is document- and data-room-first. Dock is a sales and onboarding workspace. A built portal fits when your clients' workflow is specific to your trade, or when you want the portal's code and database under your control.
Everything else, included
- Own SQL database with point-in-time restore for the last 30 days
- sign-in and roles
- Stripe payments into your own account
- email delivery
- file storage
- built-in AI
- scheduled jobs
- custom domain and code download on paid plans
Who uses it
Accounting and bookkeeping firms
receipts in, statements out, invoices paid by card.
Law firms
case files per client, document requests and a secure message thread.
Marketing agencies
campaign reports, approvals and retainers per client.
Architects and builders
drawings, change orders and stage payments for each project.
Consultants and coaches
session notes, worksheets and invoices in one login.
“I created a portal where my clients see their campaigns in real time: clicks, conversions, spend. Now they log in whenever they want and I charge for access.”
Frequently asked questions
Can each client have their own login?
Yes. Every client user gets an email login, and the portal shows each one only the records of their own company. You can have several users per client, such as an owner and a bookkeeper, and staff accounts with a wider view by role.
Can I put the portal on portal.mydomain.com?
Yes, on any paid plan, from Starter at $29 a month. Point a domain or subdomain you own at the project, or buy a domain on Totalum. Projects on the free plan are published on a Totalum address.
Can clients pay invoices in the portal?
Yes. Invoices can open a Stripe checkout, and the money goes into your firm's own Stripe account after you complete the Payments onboarding link. No Stripe key goes into the code. Payment status, refunds and failed payments update the invoice automatically.
Is there a per-client fee?
No. Clients are records in your portal's database, and records are unlimited, billed on demand in credits. Your plan limits the team members who build and edit projects (3 on Starter), not the clients who log in.
Can I white-label it for my own clients?
Yes. The portal carries your brand, not ours, and paid plans remove the "Made with Totalum" badge. If you are an agency delivering portals to many clients, you can also run the builder itself under your brand through the Totalum API.
Can the portal read the receipts clients upload?
Yes. Document scanning is built in. The portal can read the date, supplier, amount and tax from a photo or PDF of a receipt or invoice, and save them as fields for your team to check.
Where are client documents stored?
In the project's own file storage, alongside its own SQL database. If you create the project with EU data residency, the data stays inside the EU. The database can be restored to any minute of the last 30 days.