WMS360
Platform

Built to still be fast in year three.

Attendance is a time-series problem that grows every day you operate. A system that feels quick during a 200-person pilot and crawls at 3,000 people wasn't engineered — it was demonstrated. This page is what's underneath.

Architecture at a glance

Clients Mobile app Android + iOS, one codebase Admin dashboard Web, maps and charts Your systems Payroll, ERP, HRMS, BI Core WMS360 REST API .NET / ASP.NET Core Documented with OpenAPI JWT authentication ~65 granular permissions Data scoping per user Immutable audit trail Structured telemetry Clean Architecture, vertical feature slices Data PostgreSQL Partitioned time-series tables 40M+ punch and location rows Integrations Face recognition (pluggable) Object storage local fallback Push notifications SMS gateway

Three clients, one API, one database of record. The face-recognition engine, object storage, push and SMS are all integrations behind interfaces — swappable without touching the rest of the system.

The three surfaces

What each one is built with, and why that matters to you.

Mobile app

Built with Flutter — one codebase producing both the Android and iOS builds.


Why you care: one release train, not two. A fix ships to your whole workforce at the same time, and there is no second app quietly falling a version behind.

Admin dashboard

A modern Angular single-page application with interactive maps and charts.


Why you care: your administrators work in one screen that updates in place, instead of a page reload between every approval in a queue of two hundred.

REST API

.NET and ASP.NET Core, organised in Clean Architecture with vertical feature slices, documented with OpenAPI.


Why you care: every capability the dashboard has, your own systems have too. Nothing is trapped behind a UI-only feature.

Scale

Three years of history, still queryable in under a second.

Every employee generates punches, location logs and audit entries every single day. Multiply that by thousands of people and a few years and you have a table that a naive schema simply stops being able to answer questions about.

WMS360 stores that history in partitioned time-series tables, sized from the outset for tens of millions of rows. The consequence is the only one you should care about: a dashboard that stays fast in year three, and a report that returns while the person who asked for it is still looking at the screen.

40M+
Punch and location rows in partitioned storage
Sub-second
Dashboard and report queries over years of history
Thousands
Of employees per deployment
One codebase
For both mobile platforms
Deployment

Run it where your policy says it has to run.

Some organizations can put workforce biometrics in a public cloud. Others genuinely cannot. Both are supported, and it is a deployment decision rather than a different product.

Cloud

Managed and hosted, the fastest route to a running pilot. Object storage, push and SMS wired up out of the box.

Private cloud

Your own tenancy and your own region, when data residency is contractual rather than preferential.

On-premise

Fully inside your perimeter. Face images and documents fall back to local disk storage, so an on-premise install doesn't require a cloud storage account to function.

Engineering practice

The parts that reduce your risk, not ours.

Versioned, transactional migrations

Schema changes are numbered scripts applied in a transaction, not hand-run SQL against a live database at 11pm. An upgrade either completes or leaves nothing behind.

Separate QA and production

Automated delivery into distinct environments with isolated credentials, so a change is exercised somewhere real before it reaches the people who depend on it.

Integration tests against a real database

The test suite hosts the actual API against a real PostgreSQL instance rather than a mock. Constraint violations and trigger side effects surface in the test run, not in your month-end.

Structured logging and telemetry

Diagnostics are built in rather than added after the first incident, so "it was slow yesterday afternoon" is a question with an answer.

Need the depth for a security review?

Dependency and patch policy, backup and disaster recovery, data residency, sub-processors and environment separation — the questions a CIO asks before approving a pilot. Ask, and we'll answer your team directly.

Put it in front of your IT team.

We're happy to run the architecture session with your engineers in the room. It's a faster conversation than a procurement questionnaire.