40 pairings · 4 categories
Side-by-side

vs. Legacy.

Every legacy AdminConsole, ClientConsole, SuperAdmin, and Client Central surface, mapped to its modern equivalent — and the capability that's new. This is the page to forward to anyone who's lived inside the Millin stack for a decade.

Category · 01

AdminConsole / SuperAdmin → /platform/*

Platform-operator surfaces — the things only the platform team can do. Legacy stacks scattered these across half a dozen tools and a lot of DBA-driven SQL. The new platform consolidates them into a single platform-JWT-gated console.

Legacy
Provision new tenant DB (DBA-driven scripts)
MedSuite
Multi-step provisioning wizard
/platform/tenants/new

Region + Postgres-server placement is previewed before commit; tenant DEK + Key Vault secret + initial admin user are seeded in one async job.

Legacy
Move tenant between Postgres servers (manual SQL)
MedSuite
UI-driven tenant move with capacity preview
/platform/tenants/:id/move

Capacity headroom on the target server is shown alongside the move; audit lands in master + tenant simultaneously.

Legacy
Tenant inventory + status
MedSuite
Filterable tenant directory
/platform/tenants

Filters cover active / read-only / suspended / off-boarding; region + brand + Postgres-server columns visible without leaving the page.

Legacy
Postgres server inventory + capacity tracking
MedSuite
DB-server inventory with headroom view
/platform/db-servers

Tenant-per-server count and headroom visible at a glance; no T-SQL queries against system tables required.

Legacy
NPPES refresh (custom scripts per server)
MedSuite
Scheduled NPPES refresh with URL-template editor
/platform/nppes

Monthly full + weekly delta cadence is platform-managed; URL templates editable without a redeploy; manual ingest available per run.

Legacy
Environment configuration (sprawling INI/config files)
MedSuite
Read-only env-config viewer
/platform/env-config

Source of truth lives in Terraform + Azure Key Vault; the surface is a viewer, not an editor — no config drift between Portal clicks and IaC.

Legacy
Federation partner registration (engineer task per partner)
MedSuite
Federation partner registry with key lifecycle
/platform/federation

JWT keypairs follow staged → active → superseded → revoked. Up to two active keys per partner during rollover; revoke propagates platform-wide in < 30 s.

Legacy
Tenant impersonation (database-level access, audit-light)
MedSuite
Time-bounded, audited tenant impersonation
/platform/tenants/:id/impersonate

Live banner in the impersonated session; audit lands in both master and tenant; TTL enforced server-side.

Legacy
Cross-tenant audit (per-tenant log file aggregation)
MedSuite
Single canonical platform audit log
/platform/audit

Every platform-JWT action recorded; cross-tenant queries are first-class; retention class + legal-hold flag per row.

Legacy
Operator MFA (third-party VPN-tied)
MedSuite
Native operator MFA
/platform/account/security

TOTP + WebAuthn + recovery codes; phishing-resistant policy enforceable; FIDO MDS3 sync gates trusted authenticator models.

Legacy
Cross-tenant alerting (per-DB job scheduler)
MedSuite
App Insights + Action Group + KQL

Azure-native, not custom: nine production KQL alert rules ship with the platform; alerts route to email / Slack / PagerDuty via Action Group.

Category · 02

ClientConsole / Client Central → /admin/*

Tenant-operator surfaces — the things customer ops + billing leaders need to run their own organisation. Legacy stacks put dozens of forms behind a stored-procedure backend; the new platform exposes each domain as a configuration surface.

Legacy
User management (custom roles table per customer)
MedSuite
Users + roles + RBAC matrix
/admin/users

RBAC matrix editor; per-user effective-scope drawer; audit drawer per row; every change captures actor + before/after.

Legacy
Provider directory (manual NPPES re-keying)
MedSuite
Provider directory with NPPES enrichment + discrepancy queue
/admin/providers

EMR↔NPPES discrepancies detected at ingest; suppression list per row; taxonomies and endpoints kept in sync via the platform refresh schedule.

Legacy
Organisation structure (free-text fields)
MedSuite
Sites / facilities / billing-entities as rules-engine dimensions
/admin/sites

Each org-structure entity becomes a scope dimension in the rules engine; no more "we forgot to update the dropdown" bugs.

Legacy
Payer setup (per-payer ad-hoc tables)
MedSuite
Payer directory with Overview / Aliases / Contracts / Programs / Submission tabs
/admin/payers

A single source of truth per payer; submission capabilities (270/271/276/277/278/837P/I) enforced at config time, not discovered in production.

Legacy
Contract management (PDF + spreadsheet)
MedSuite
Contracts registry with 30/60/90-day expiry buckets
/admin/contracts

Deep-link to the payer + program scope; expiry alerts surface contracts before they lapse.

Legacy
Fee schedules (CSV imports against a tightly-coupled procedure table)
MedSuite
Fee-schedule grid with import + per-row validation
/admin/fee-schedules

UI grid; CSV import; per-row validation against the master procedure catalog; effective-dating + draft → published lifecycle.

Legacy
Scrubber rules (T-SQL stored procedures per payer)
MedSuite
PRE_SUBMIT_VALIDATE rules in a Monaco YAML editor
/admin/rules/PRE_SUBMIT_VALIDATE

Content-addressed artifacts; draft → in-review → approved → published lifecycle; simulator paste-a-claim → winning rule + also-rans.

Legacy
Modifier rules (procedural triggers)
MedSuite
Modifier injection + validation + simulator
/admin/modifiers

Five trigger families (credential / POS / time / telehealth / group) shown side-by-side; simulator returns winning + losing rules to make precedence explicit.

Legacy
State-specific configs (forks per state in T-SQL)
MedSuite
State directory + state rate codes aggregator
/admin/states

Read aggregator that deep-links into the rules / fee-schedules / contracts scoped to the state — no more grepping the database for `OH_`.

Legacy
EMR ingestion setup (per-customer SSIS/Talend pipelines)
MedSuite
Ingestion sources + feeds + mappings with diff/dry-run
/admin/ingestion

Mappings are YAML-versioned; visual editor + Monaco; dry-run + diff before publish.

Legacy
Audit log (read-only DB grep)
MedSuite
Audit log viewer with legal-hold + retention class
/admin/audit

Retention class assigned per row; legal-hold flag prevents deletion; cross-references the actor and the affected resource.

Legacy
MFA enforcement (per-customer customisation request)
MedSuite
Per-tenant MFA policy editor
/admin/security/mfa-policy

TOTP + WebAuthn factors configurable; phishing-resistant requirement toggleable; enforcement window dated.

Legacy
Federated SSO setup (engineering task per integration)
MedSuite
Self-service partner federation config
/admin/federation

Standards-based JWT (RFC 7519) + JWK (RFC 7517); customer-side keypair management; 30 s revoke propagation across instances.

Category · 03

Specialized utilities → modern surfaces

Legacy stacks shipped a constellation of single-purpose utilities: a Trading Partner Tool, a Companion Guide editor, an EDI Replay Tool, and a stack of T-SQL stored procedures for every recurring need. The new platform folds these into the rules engine + EDI operator console.

Legacy
EDI Trading Partner Tool (Windows desktop app)
MedSuite
Trading-partner directory with capability matrix
/trading-partners

Per-partner capability matrix (270/271/276/277/278/834/835/837P/I/999/TA1); credentials sealed in Key Vault; test-connection per row.

Legacy
Companion Guide editor (Word docs + tribal knowledge)
MedSuite
Companion-guide editor with live preview
/companion-guides

Monaco editor; live preview pane re-assembles a sample 837 / 270 as you type; rule scope per partner + transaction type.

Legacy
Routing-rule SQL workbench
MedSuite
Routing-rule simulator + explainer
/routing

Precedence simulator returns the winning + the losing rules; paste a claim, see the resolution.

Legacy
Replay / retry SQL scripts
MedSuite
Replay surface with DLQ + exponential backoff
/replay

"We lost a batch" becomes a UI click. DLQ visibility; idempotent re-submit; audit per replay.

Legacy
Per-customer NPPES refresh scripts
MedSuite
Platform NPPES URL-template editor
/platform/nppes

NPPES loaded once for the platform, not once per customer. URL templates editable without a redeploy.

Legacy
Per-customer mapping ETL (SSIS / Talend / custom scripts)
MedSuite
Ingestion mappings as versioned YAML
/admin/ingestion/mappings

Diff between versions; dry-run before publish; rollback by re-publishing a prior version.

Legacy
Custom T-SQL claim scrubbers (one per state × payer)
MedSuite
Eight rule-set kinds + content-addressed YAML
/admin/rules

INGEST / CHARGE_VALIDATE / CHARGE_DERIVE / CLAIM_BUILD_GROUPING / PRE_SUBMIT_VALIDATE / COMPANION_GUIDE_VALIDATE / POSTING / EVV_CONFIG. Each artifact is content-addressed and effective-dated.

Legacy
Custom denial auto-correction stored procedures
MedSuite
Auto-correction handler registry + per-CARC success rates

Materialised view exposes success rate per CARC; new handlers are TypeScript functions registered against a CARC, not stored procedures.

Category · 04

Stored procedures → declarative, configurable rules

The biggest architectural difference is the disappearance of T-SQL stored procedures as the carrier of business rules. Every recurring legacy "sproc category" has a configuration surface counterpart on the new platform.

Legacy
usp_ScrubClaim_<Payer> stored procedures
MedSuite
PRE_SUBMIT_VALIDATE YAML rule artifacts

Per-payer scrubbers become per-payer rules with effective dating and a simulator.

Legacy
Modifier_Required lookup table + procedural code
MedSuite
modifier_validation rule kind + simulator

Per-payer / per-state requirements become rules; simulator returns the winning rule.

Legacy
Per-payer trigger procedures (credential / POS / etc.)
MedSuite
Five-trigger modifier injection with simulator

Five trigger families exposed as configuration; precedence is explicit, not buried.

Legacy
One stored procedure per state
MedSuite
State-scoped rule artifacts + state navigator UI

States become a scope dimension; the navigator deep-links the rules / fee schedules / contracts.

Legacy
X12_Override table + 837 assembler tweaks
MedSuite
Per-segment rules + companion-guide live preview

Segment-level overrides expressed as rules; the live preview surfaces the resulting 837.

Legacy
T-SQL WHERE-clause ladders
MedSuite
Declarative routing table + explainable resolver

Resolution is explainable: every match returns the winning + losing rules and the specificity score that broke the tie.

Legacy
Custom group-calculation procedures
MedSuite
group-billing canonical domain + rules engine

Group-size bands + supervisor rules + triggers are first-class canonical entities, not sproc state.

Legacy
Per-state EVV check procedures
MedSuite
EVV_CONFIG rule kind + state EVV YAML

EVV requirements expressed as configuration; state-by-state rollouts are a YAML change.

The legacy model is one custom integration project per partner; the new model is one self-service partner registration per partner.
Competitive Differentiation