§ 01Internal tools

Custom internal tools development

The screens your staff work in all day: queues that show what needs doing, record views with exactly the fields each role needs, bulk actions for repetitive work, and admin dashboards that point at exceptions instead of decorating a wall.

Returns desk · queuerole: Team lead
state: Awaiting inspection site: Central age > 2d
ReturnItemStateAge
Selected: RMA-3307Router, model R2 · damagedRefund > limit3d
Selected: RMA-3302Desk lamp · wrong itemInspecting2d
RMA-3295Monitor arm · missing partsSupplier hold5d
Selected: RMA-3291Keyboard · unopenedRefunding2d

3 selectedAssign · Change state · Export

Illustrative interface · example data

What this page covers

  • 01Work queues
  • 02Record screens
  • 03Bulk actions
  • 04Admin screens
  • 05Role dashboards
  • 06Permissions

§ 01Screens

What an internal tool is made of

Custom internal tools development is mostly about six kinds of screen. Each is designed around one role’s daily work, and all of them read and write the same records.

  • queue

    Work queues

    A filtered list of records that need action from the viewer’s role, sorted by urgency rather than by date of creation. Saved views replace the shared spreadsheet tab that everyone filters differently.

    • saved views
    • filters
    • sort by SLA
    • assign to me
  • record

    Record screens

    One screen per record type with its fields, current state, owner, related records, attachments, comments and history. Fields appear, become required or lock depending on the state and the viewer’s role.

    • state header
    • related records
    • history
    • attachments
  • bulk

    Bulk actions

    Assign, change state, export or update many records at once, with the same validation and permissions as a single edit. Every bulk change appears in the audit trail record by record.

    • multi-select
    • validated bulk edit
    • CSV import
  • admin

    Admin and configuration

    Screens for the people who run the tool: users and roles, reference data (sites, products, price lists), thresholds and notification rules. These changes no longer require a developer.

    • users & roles
    • reference data
    • thresholds
  • dashboard

    Role dashboards

    The first screen each role sees: their queue, their exceptions and the few counts that tell them whether the day is on track.

    • my queue
    • exceptions
    • ageing
  • search

    Search and exports

    Find any record by ID, customer, product or free text. Exports respect field-level permissions, so restricted data does not leak out through a CSV.

    • global search
    • permission-aware export

§ 02Today

Where the work happens before the tool exists

Internal business application development usually replaces something that already works, badly: a shared spreadsheet, a database console only one developer can use, and an inbox that serves as the approval system.

BeforeToday: sheet, console and inboxAfterIn the internal tool
shared spreadsheetReturns are tracked in a shared sheet; three people edit the same row and overwrite each other.recordEach return is a record. Two people cannot overwrite the same field, and every edit has an author.
database consoleA developer runs SQL to change a status when the sheet and the system disagree.ruleState changes go through the tool, with the same validation as every other change.
inboxThe inspection result arrives as an email with photos; the agent copies it into the sheet.recordInspectors record the result and photos on the return itself, on a tablet at the bench.
manager approvalRefunds above the limit wait for the manager to read the right email.decisionRefunds above the limit appear in the manager’s queue with the inspection attached.

§ 03Record screen

Anatomy of a record screen

RMA-3307 · ReturnRefund approval
customer
Account 10-4471
order
ORD-88102 · line 2
item
Router, model R2
inspection
Casing cracked · photos 3
refund
$612.00 · above agent limit
owner
Team lead · Returns

Audit trail

  1. Created from order ORD-88102 by agent
  2. Received at Central · bin R-04
  3. Inspection recorded · damage confirmed
  4. Refund routed to team lead · rule: > $500
  1. State and owner first

    The header answers the two questions people open a record to ask: where is it, and whose move is it.

  2. Fields that follow the state

    The refund amount is editable during inspection and locked after approval. Required fields change as the record moves.

  3. Related records, not copies

    The order line and the customer are links, so the return never disagrees with the order it came from.

  4. History you can rely on

    Every change and decision is listed with who and when, including bulk edits and changes made through integrations.

Illustrative record · example data

§ 04Access

Each role sees its own tool

The same returns queue looks different to an agent, an inspector and a team lead. Permissions decide which records appear, which fields can be edited and which actions are offered, and the server enforces them as well as the screen.

Example role matrix · returns desk
RoleView returnsRecord inspectionApprove refundOverride stateExportManage users
AgentYesNoApproves ≤ $500NoNoNo
InspectorPer siteYesYesNoNoNoNo
Team leadYesYesApproves > $500YesYesNo
FinanceYesNoNoNoYesNo
Tool adminIT or opsYesNoNoNoNoYes

§ 05Dashboards

Admin dashboards that start the work

Admin dashboard development services often go wrong when they start from the chart library. We start from the questions each role asks at the start of a shift, and the dashboard answers them in a few seconds: what is waiting for me, what is late, and where it is stuck.

Returns · todayrole: Team lead
  • 22Received
  • 17Inspecting
  • 5Refund approval
  • 4Supplier hold

Refunds waiting for you

  • RMA-3307Router · $612.003d
  • RMA-3288Office chair · $740.001d
  • RMA-3279Headset bundle · $520.006h

Exceptions

  • RMA-3295Supplier credit not received · 5d
  • RMA-3260Refund failed at payment provider
  • IMPORTNightly order sync running · 61%

Average days waiting, by state

Receiving
0.6d
Inspection
1.8d
Refund approval
2.2d
Supplier credit
4.1d
Illustrative interface · example data

§ 06Decision

Spreadsheet, low-code builder or custom tool

Internal tools development does not always mean custom code. This is how we advise teams to choose, including when we recommend not hiring us.

Choosing how to build an internal tool
QuestionSpreadsheet + formsLow-code tool builderCustom internal tool
Users and recordsA handful of people, hundreds of rows.Teams, thousands of records.Many roles, large volumes, many related record types.
PermissionsSheet-level sharing.Per app or per table.Per role, per state and per field, including exports.
Business rulesFormulas that anyone can break.Scripts inside the builder.Tested rules in code, versioned with the system.
IntegrationsManual import and export.Connectors for popular SaaS tools.Any API, file exchange or database, with retries and logs.
OwnershipYours, but fragile.Tied to the builder’s pricing and limits.Your code, your hosting, your roadmap.
Right choice whenThe process is small and stable.Screens are simple CRUD on one data source.The tool is how the operation runs and must enforce rules.

§ 07Delivery

How an internal tool is delivered

  1. 01phase

    Shadowing and mapping

    We watch the current work: the spreadsheet tabs, the inbox rules, the SQL someone runs on Fridays. Then we write down records, states and roles.

    Handed over
    Screen inventory, role matrix and process map
  2. 02phase

    Clickable screens on real data

    Queue, record and admin screens built against a copy of your data, so people judge the tool by their actual work.

    Handed over
    Working screens in a staging environment
  3. 03phase

    Rules, integrations and import

    Validation, routing and permissions in code; connections to the systems the tool reads and writes; import of current records.

    Handed over
    Integration specification and import reconciliation
  4. 04phase

    Go-live and handover

    Training per role, a short period of support at the desk, then handover of code, admin guide and runbooks.

    Handed over
    Source code, admin guide and runbooks

Ideal when

  • Staff work across shared spreadsheets, database consoles and inboxes to get one job done
  • Different roles need different fields, actions and approval limits on the same record
  • An existing admin panel cannot be changed safely any more

You receive

  • Queue, record, admin and dashboard screens for each role
  • Role matrix enforced on screens, exports and APIs
  • Integration logs, audit trail and an admin guide
  • Source code and infrastructure in your accounts

Not in scope

  • Customer-facing portals (a separate Comtau service)
  • Developer tooling such as CI dashboards or internal developer platforms
  • Licences or configuration for third-party low-code builders

§ 08Questions

Questions about internal tools

What does an admin dashboard do?

In an operational system, an admin dashboard is the first screen a role sees. It shows the records waiting for that role, the exceptions that need attention (overdue items, failed syncs, records on hold) and where work is piling up. It links straight into the records, so the dashboard is where work starts, not just a report.

When is a low-code tool good enough?

When the tool is a set of simple forms and tables on one data source, used by one team, with permissions at the table level. Once you need rules that must not be bypassed, field-level permissions, several integrations or large volumes, a custom internal tool is usually cheaper to own than a low-code app full of workarounds.

Can the tool work on top of our existing database?

Often, yes. An internal tool can read and write an existing database through a service layer that enforces the rules, so staff stop editing tables directly. If the database is part of a legacy system that has to be replaced, we plan that with the modernization work instead.

Do internal tools work on tablets and phones?

Screens used away from a desk (inspection, receiving, field checks) are designed for touch and small screens from the start. Back-office screens with dense tables are designed for desktop and stay usable on a tablet.

Do you also build customer or partner portals?

Portals for customers and partners are a separate Comtau service with different requirements, such as self-registration and public-facing security. This page covers tools used by your own staff. The two often share the same records and integrations.

Next step

Show us the spreadsheet your team lives in.

The fastest way to scope an internal tool is to start from what people use today. Describe the records, the roles and the workarounds, and we will propose the screens.

brief.txt · what helps us most

  1. 01The spreadsheet, console or inbox the work runs through
  2. 02The roles involved and what each one must not do
  3. 03The systems the tool must read from or write to
  4. 04Volumes: records per day, users, sites