Skip to content

Article · 9 min read · Sep 18, 2026

Internal tools and customer portals: planning the first release

The first release of an internal tool or customer portal should cover one workflow for one group of users, end to end, rather than a thin version of everything. Decide roles, permissions and how people sign in before design starts, because those choices are expensive to retrofit. Then measure adoption against the work actually moving through the tool, not against logins.

Tuaha JawaidFounder, business lead

Key takeaways

  • Scope the first release around one workflow with one accountable owner and one user group.
  • Write the out-of-scope list at the same time as the scope, and treat additions as change requests.
  • Decide roles, permissions and sign-in early, and enforce permissions on the server rather than by hiding buttons.
  • Check integration feasibility (APIs, permissions, licenses) before anyone commits to a date.
  • Adoption is the share of real work flowing through the tool, not the number of accounts created.

Internal tools and portals rarely fail because the software was badly built. They fail because the first release tried to serve four departments at once, or because nobody decided who was allowed to approve what until the week before launch. A first release that does one workflow completely beats one that does six workflows partially, and it is a much easier thing to scope.

What counts as an internal tool or a customer portal?

Both are ordinary business applications with a narrow audience. An internal tool gives employees a purpose-built screen for work they currently do across email, spreadsheets and several systems. A portal gives people outside the company (customers, suppliers, tenants, partners) a controlled window onto information and actions that would otherwise arrive as phone calls.

TypeWho uses itWhat it usually replaces
Operations dashboardTeam leads and managersA weekly spreadsheet assembled by hand
Request and approval queueAny team with a handoffEmail chains and chased approvals
Quoting or pricing toolSales and commercial staffA shared workbook with local copies
Admin consoleOperations staff using a system of recordDirect access to a system most people should not have
Customer self-service portalCustomers checking status or submitting requestsInbound calls and "where is my order" email
Supplier or partner portalSuppliers, contractors, agentsDocument requests and rekeying from PDFs
Client document collectionProfessional services firms and their clientsRepeated email requests and version confusion

The pattern to look for is a workflow where people already do the work reliably but spend most of the effort moving information between places. That is a good candidate. A workflow nobody agrees on is not a software problem yet. Our guide to build, buy or integrate covers deciding whether custom software is the right answer at all.

How do you scope a first release around one workflow?

Scope creep is rarely dishonesty. It is what happens when a brief is ambiguous enough that every reasonable interpretation produces another conversation and another feature.

  1. Pick one workflow with one accountable owner. Not a department, a workflow. A named manager should be able to say whether a design decision is right.
  2. Pick one user group. The people who do that work every day. Managers who look at a summary can wait for release two.
  3. Write the release as outcomes, not features. "A leasing coordinator can record a maintenance request, assign it to a contractor and see its status" is testable. "Maintenance management" is not.
  4. Write the out-of-scope list at the same time. Reporting modules, admin self-service configuration, mobile apps, multi-language support and bulk import tools are the usual candidates for later.
  5. Agree what done means. Typically: the workflow runs end to end in production, the pilot group has used it on real work, no blocking defects remain and the agreed accessibility and security checks have passed.
  6. Handle additions as change requests. Describe the request in writing, estimate the effect on timeline and cost, and get a decision before it enters the work. This protects the sponsor's budget more than it protects the developers.

Depth matters more than breadth here. A tool that handles one workflow including its exceptions gets used. A tool that handles the easy 70 percent of six workflows sends people back to the spreadsheet the first time something unusual happens. How to write a requirements brief a development partner can use goes further into getting this on paper.

How should roles and permissions work from the start?

Permissions are the single most expensive thing to retrofit, because they touch every screen and every query. Decide them before design.

Start with three or four roles, not a permission matrix. For most first releases that is something like requester, approver, administrator and, for portals, external user. Role-based access control grants permissions to roles rather than to individuals, which is why Microsoft's identity platform documentation describes it as the common mechanism for enforcing authorization in applications: you define app roles on the application, assign them to users or groups, and the identity provider emits them as a roles claim in the token your application checks.

Three rules save trouble later:

  • Enforce permissions on the server. Hiding a button is presentation. The check belongs where the data is fetched and changed, so a crafted request cannot bypass it.
  • Define roles on the application, not on directory groups alone. Microsoft's guidance is direct about the difference: app roles are defined in the app registration and move with the application, while groups belong to a tenant, so an application that authorizes on group identifiers breaks when it meets a different tenant.
  • For portals, scope data by account, not by screen. A customer must only be able to retrieve their own records. That is a rule in the data layer, not a filter on a page.

Record who did what and when, at least for approvals, status changes and anything financial. It costs little during the build and is the first thing anyone asks for when a dispute arrives.

What do integrations and single sign-on actually require?

Two decisions here determine most of the technical risk.

Sign-in

For employees, use the company identity provider. Microsoft Entra ID supports federation-based single sign-on through SAML 2.0, a mature XML-based standard with broad enterprise compatibility, and OpenID Connect, a newer protocol built on OAuth 2.0 that is usually simpler to build with modern frameworks. Password-based and linked options exist for applications that cannot federate, which is useful during phased migrations. The benefits are practical rather than architectural: fewer credentials for users, central policy enforcement, and fewer password resets reaching the help desk.

Plan for joiners and leavers at the same time. Automated provisioning through SCIM, described by Microsoft as becoming the de facto standard for provisioning when used alongside SAML or OIDC, creates accounts when people join and deactivates them when they leave. Doing that manually is exactly the kind of task that quietly stops happening.

Customer portals need a different setup, because the users are not in your employee directory. Microsoft Entra External ID handles this pattern with self-service sign-up, sign-in with local or social and enterprise identities, multifactor authentication, Conditional Access policies and branded sign-up pages. Note that Azure AD B2C has not been available for purchase by new customers since May 1, 2025, so new builds start on External ID.

Integrations

Check feasibility before anyone commits to a date. For each system the tool must touch, establish whether there is a usable API, whether your license tier includes it, who administers the system, what the rate limits are and how good the data actually is. A first release that reads from an ERP and writes nowhere is a very different project from one that creates records in it.

Read before you write. Where the tool must write to a system of record, put it behind one narrow, documented operation with a clear owner, rather than letting several screens update the same data in slightly different ways.

How do you design with the people who will use it?

Involve the people who do the work in discovery and testing, and keep involving them. Three practices do most of the work:

  • Watch the work, do not only ask about it. A walkthrough at someone's desk reveals the sticky note with the codes on it, the second browser tab, and the step everyone forgets to mention.
  • Show something clickable early. A prototype produces better feedback in twenty minutes than a requirements document produces in a week. Change is cheap at that stage.
  • Name your pilot users before you build. Three to five people who actually do the job, with time allocated to use the tool on real work and report back.

Agree the accessibility target in the brief rather than at the end. The Web Content Accessibility Guidelines have three conformance levels, A, AA and AAA, with WCAG 2.2 published in October 2023 and updated in December 2024, and later versions add criteria without changing the earlier ones. Public-sector and enterprise procurement often references a specific level, so pick yours up front: fixing contrast, keyboard navigation and form labels during design costs far less than retrofitting them.

Illustrative example: Consider a property management company with 40 staff handling maintenance requests by email and a shared spreadsheet. The first release covers one workflow for one group: a coordinator logs a request, assigns a contractor, records the quote and tracks it to completion. Owner-facing visibility, invoicing and the mobile view are on the out-of-scope list in writing. Staff sign in with their existing company accounts, three roles exist (coordinator, approver, administrator), and the only integration in release one is a read of the property list from the existing system. Two coordinators and one regional manager pilot it on live requests for three weeks while the spreadsheet is still maintained in parallel. The spreadsheet is retired only once the same volume has flowed through the tool for a full month.

What does a realistic release plan look like?

StageWhat happensWhat it needs
Build the thin sliceOne workflow end to end, in a test environmentAgreed scope, roles, and confirmed integration access
PilotNamed users run real work through it, old process still availableTraining for those users and a route to report problems
Parallel runningBoth systems used, outputs comparedSomeone checking that the two agree
CutoverThe old process is retired for that workflowA decision, an announcement, and a documented rollback
Next incrementThe first item from the deferred listEvidence from the pilot about which item matters most

Two things belong in the plan from the beginning. First, decide how much history moves: migrating five years of records is often a larger job than the application itself, and starting fresh with read-only access to the old system is frequently the better answer. Second, agree who supports the tool after launch, how issues are reported and who can approve changes, because an internal tool with no owner degrades quickly.

How do you measure adoption, and what do you leave for later?

Accounts created is not adoption. Measure the work.

  • Share of that workflow's volume going through the tool rather than the old route.
  • Share of the target user group using it in a normal week.
  • Time per task, compared with the baseline measured before the build.
  • Rework, exceptions and items returned for missing information.
  • Support requests, and specifically which screens generate them.
  • The business measure the sponsor agreed at the start, such as turnaround time or unassigned work.

If the volume share stalls, the reason is usually a missing exception path rather than resistance to change. Ask the people who went back to the old way, and expect a specific answer.

What to leave for later: reporting and analytics beyond a simple list view, administrator self-service configuration, a mobile app when a responsive web page will do, multi-language support, bulk import tooling, notification preferences, and integrations with systems that are not in the first workflow. All of them are reasonable eventually, and none of them are what makes release one succeed. Off-the-shelf, no-code or custom software covers when part of the later list is better solved by buying something.

How Kastling approaches a first release

Internal tools, dashboards and customer or supplier portals sit within Kastling's Custom Solutions service, with or without AI. A well-defined brief can move straight from a free discovery call to a scoped proposal; broader operational work usually begins with a separately scoped paid audit instead.

The approach follows the principles in this article: understand the work before choosing technology, connect existing systems rather than replacing them, involve the people who will use the solution in discovery and testing, keep a named person in control of consequential decisions, and agree data access and ownership up front. Integration feasibility is reviewed (APIs, permissions, data quality, licenses) before commitments are made rather than after. Development is tested against real business scenarios, integration and training are part of delivery, and ongoing maintenance is available under a separate agreement that says what it includes.

Questions

Should we build this or buy something off the shelf?

Buy when the workflow is common and your version of it is not a competitive advantage, which covers most ticketing, HR and expense tools. Build when the process is specific to how your company works, when the value comes from connecting systems you already own, or when no product fits without changing the way the business operates. The decision is worth making explicitly, with the cost of configuration and integration included on the buy side.

How many users should the first release have?

Enough to produce real load and real complaints, small enough to support properly. For an internal tool that often means one team or one site. For a customer portal it often means a handful of accounts who already talk to you regularly and will tell you the truth. Expanding is easy once the workflow holds up.

Do we need single sign-on in the first release?

For an internal tool, yes in almost every case. Company sign-in is usually less work than building and securing your own accounts, and it means leavers lose access when their main account is disabled. For a customer portal, a simpler invite and sign-up flow can be reasonable at first, as long as you have decided how business customers will eventually connect their own identity provider.

What do we do about the spreadsheet everyone still uses?

Find out what it does that the new tool does not, because it is usually one column or one view rather than the whole process. Either add that capability or agree deliberately that the spreadsheet stays for a defined purpose. What does not work is declaring the spreadsheet retired while leaving the gap it was filling.

Sources

  1. Microsoft Learn: What is single sign-on in Microsoft Entra ID
  2. Microsoft Learn: Add app roles and get them from a token
  3. Microsoft Learn: What is automated app user provisioning in Microsoft Entra ID
  4. Microsoft Learn: Microsoft Entra External ID external tenant overview
  5. W3C: Web Content Accessibility Guidelines (WCAG) overview

Guide · 14 min read

Build, buy or integrate: deciding on custom business softwareBuy standard software when the process is common and you can adapt to the product, integrate when your existing systems already hold the data and only the connections are missing, and build custom software only where the process sets you apart or no product fits its core steps. Most growing companies land on a hybrid: buy the core system of record, then integrate or build the edges around it. Compare the options on 3 to 5 year total cost of ownership, not on the first invoice.Read

Article · 10 min read

What drives the cost of custom softwareThe cost of custom software is set mostly by scope: how many user roles the software serves, how many systems it connects to, how much existing data has to move, and what the security and compliance requirements are. Technology choices and hourly rates matter far less than most buyers expect. Budget for the years after launch as well, because hosting, support and maintenance continue for as long as the business depends on the software.Read

Article · 10 min read

Off-the-shelf, no-code or custom software: when to use eachBuy an off-the-shelf product when the process is standard and a vendor already handles it well. Use a no-code or low-code platform for internal tools and team workflows where speed matters more than scale, and govern those apps the same way you govern any other business system. Build custom software when the process is specific to your business, when data volume or integration depth exceeds what a platform can carry, or when the app must live inside a system of record you already own.Read

One useful email a month.

New guides, tools and practical notes on putting AI to work. No sales sequences.

Bring us a workflow.

Tell us where the work slows down. We will help you see where to start.

Book a discovery call