Skip to content

Article - project method

Internal portal: roles, data and workflows

A practical method to frame an internal portal around user roles, reliable data, workflows, access rights and a useful first version.

Published on 9 June 2026 Updated on 9 June 2026
internal portalbusiness workflowbusiness applicationback-officeuser permissionsproject framing

An internal portal with business workflows is not just a place to centralise information. It organises work: who can create a request, who should process it, which data is authoritative, which status triggers the next step and which trace must remain available.

The initial request often sounds simple: “We need an internal portal.” Behind that sentence, the actual needs can be very different: tracking cases, managing approvals, coordinating several departments, avoiding duplicate entry, exposing data to partners or replacing a set of shared spreadsheets.

Before development starts, the first topic is not the homepage or the menu. The real topic is understanding the roles, data and workflows that will make the tool reliable over time.

An internal portal organises responsibilities

A useful internal portal gives each person a clear view of what they should do and what they are allowed to do. It is not only an interface with a menu, lists and a dashboard.

In an SME, nonprofit, local authority or industrial department, responsibilities are rarely flat. Some people create requests. Others review them, approve them, correct them, export them or close them. Some information can be visible to everyone. Other information must be limited to a specific role.

This is why an internal portal often belongs to the scope of a bespoke business application. The visible interface is only part of the work. The value comes from the way the tool translates real responsibilities into permissions, statuses, data and business rules.

A good internal portal avoids three common situations:

  • each person keeps their own version of the information;
  • important decisions remain buried in emails or free-text comments;
  • access rights are added case by case without a clear logic.

When these points are not handled during framing, they tend to appear later as bugs, usage conflicts or urgent change requests.

Start from real working situations

Framing an internal portal should start with working situations, not screens. A situation describes a concrete problem: a request arrives incomplete, a case is waiting for approval, an intervention changes status, a manager needs to find the history of a decision.

Those situations help ask useful questions:

  • who starts the action;
  • which information is required;
  • who should be notified;
  • which rule blocks or allows the next step;
  • which trace must be kept;
  • what happens when data is missing or wrong.

This method prevents the project from becoming a disconnected feature list. A dashboard may look like the priority, but it is not useful if the statuses feeding it are unreliable. Notifications may sound helpful, but they quickly become noisy if responsibilities are unclear.

The article about how to frame a business application before development explains this step in more detail. For an internal portal, it matters even more because the tool often touches several departments or responsibility levels.

Map roles before permissions

User permissions should not be defined as a purely technical list. They should start from the real roles inside the organisation.

A role answers a business question: what responsibility does this person have in the process? A permission then answers a technical question: which actions should the tool allow?

The distinction matters. If you start directly with permissions, exceptions tend to accumulate. If you start with roles, the logic is easier to understand and maintain.

A simple example:

Business roleResponsibilityPossible permissions
RequesterCreate and track a requestCreate, view own requests, complete missing information
CoordinatorReview and routeChange status, assign, request more details
ApproverDecide or arbitrateApprove, reject, comment on a decision
AdministratorMaintain reference dataManage users, list values, exports

This map should not become too complex in the first version. Its purpose is to make visible the responsibilities that already exist, including those that are currently implicit.

Structure the data that becomes authoritative

An internal portal becomes reliable when it clarifies which data is authoritative. In many organisations, the same information lives in a spreadsheet, an email thread, an external tool and sometimes someone’s personal notes.

Before building, you need to identify the main objects handled by the portal. Depending on the context, they may be requests, cases, interventions, contracts, products, documents, members, organisations, partners or equipment.

For each object, you need to understand:

  • which information is required;
  • who creates it;
  • who can change it;
  • which data must be historised;
  • which data is sensitive;
  • which data feeds exports or dashboards.

This step shapes the database, API, screens and validation rules. It also prevents the project from simply reproducing an existing file without fixing its ambiguities.

In some projects, a Symfony and API Platform API can expose this data to several interfaces: internal portal, mobile app, partner tool or reporting interface. The important point is that central data remains coherent, documented and maintainable.

Describe workflows and statuses

The workflow describes the life of a business object. A request can be created, completed, reviewed, approved, rejected, blocked, processed and closed. A product can be received, checked, repaired, refurbished, sold or archived. A case can move between several departments.

The question is not only to list statuses. You also need to describe transitions.

For each transition, you should know:

  • who can trigger it;
  • which conditions must be met;
  • which data becomes mandatory;
  • which notification should be sent;
  • which history entry should be kept;
  • whether going backwards is allowed.

A clear workflow avoids vague statuses such as “in progress”, “to process” or “pending” when they hide several different realities. It also helps separate a blocker, a wait, an action to take and a decision already made.

This clarity is valuable for users. It is also valuable for technical maintenance. An explicit workflow can be tested, documented and changed more easily.

Do not start with the dashboard

The dashboard is often requested very early. That is understandable: it gives a sense of control. But it should come after data and statuses have been clarified.

A dashboard does not improve information quality. It reveals it. If the data is inconsistent, the dashboard will make that inconsistency more visible. If statuses are poorly defined, it will create the appearance of control without real reliability.

Before designing indicators, ask three questions:

  1. Which decision does this indicator help someone make?
  2. Where does the data come from?
  3. Who is responsible for its reliability?

This approach leads to simpler and more useful dashboards. It avoids overloaded screens that look reassuring during a demo but are rarely useful in daily work.

Common features in an internal portal

Internal portals can take many shapes. Some features appear often because they answer real organisational needs.

Common features include:

  • account and role management;
  • request forms;
  • status tracking;
  • assignment to a person or team;
  • structured comments;
  • attachments;
  • useful notifications;
  • action history;
  • CSV or PDF exports;
  • dashboards;
  • editable reference data;
  • search and filters;
  • administration interface.

Not all of these features should be developed from day one. Some are central. Others can wait. Framing helps separate what makes the first version genuinely useful from what can come later.

Custom back-office development often becomes necessary when the team must administer the portal itself: edit lists, correct data, manage permissions, export information or follow cases without depending on a developer.

Prioritise a useful first version

An internal portal can quickly become too broad. Each department adds its needs, each edge case feels important, and each existing spreadsheet seems to require a replacement screen.

The first version should answer a simpler question: what core flow will already help people work better?

That core often includes:

  • the main business objects;
  • the essential roles;
  • the basic statuses;
  • the most frequent actions;
  • minimal history;
  • the few exports that are actually used.

The rest can be planned, but it does not necessarily need to be built immediately. This approach reduces the risk of creating a heavy tool before the usage has been validated.

It also keeps the technical base maintainable. An internal portal should be able to evolve. If the first version is built around unclear rules, each change becomes more expensive.

Example: centralising multi-stakeholder requests

Imagine an organisation that receives requests by email, phone and shared spreadsheet. Requests involve several departments. Some need more information, others need approval, rejection or transfer.

The tempting request may be: “We need a portal with a dashboard.” But the real need is more precise:

  • each request needs a clear status;
  • each request needs an owner;
  • missing information must be tracked;
  • decisions must be visible;
  • useful documents must be centralised;
  • managers need to know what should be handled first.

The first version of the portal can then focus on a simple flow: creation, review, assignment, decision, closure. The dashboard comes later with reliable indicators: open requests, blocked requests, waiting time, cases to approve.

This type of project shows why an internal portal is not just an interface. It requires a direct link between business need, users and technical choices.

FAQ

What is the difference between an internal portal and a back-office?

An internal portal is often used by business users to track, process or coordinate work. A back-office is more focused on administering data, permissions, reference lists and settings. In many projects, both parts work together.

Should an internal portal be custom-built?

Not always. If the need is simple and standard, an existing tool may be enough. Bespoke development becomes relevant when business rules, roles, data or workflows are specific to your organisation.

How many roles should be planned?

It is better to start with a few clear roles than with an overly detailed permission matrix. Roles should reflect real responsibilities. Exceptions can be added later if they are frequent and justified.

Can an internal portal replace spreadsheets?

Yes, when spreadsheets are used to track statuses, distribute responsibilities, keep history or produce exports. The goal is not to copy the spreadsheet, but to structure the process it contains.

How can an internal portal avoid becoming too complex?

The first version should focus on one main flow. Secondary needs are recorded, but they should not prevent the team from shipping a usable, understandable and maintainable tool.

Conclusion

A successful internal portal starts with a clear understanding of real work. Screens come later. The core topic is roles, data, statuses, access rights and decisions that need to be traced.

For an SME, nonprofit, local authority or industrial team, this framing work prevents the project from creating a tool that looks like the need without actually solving it. It makes it possible to build a useful first version and then evolve it on a clean base.

If your need involves an internal portal, case tracking or workflows to clarify, the bespoke business applications page explains this type of support. For direct contact, you can also use the contact section.