TECHNICAL DOSSIER // TITN SMS // BUILD 2.3.1-web

UNDER THE HOOD.NOTHING TO HIDE.

Most vendors hand you a brochure. This is the architecture. If your IT people have questions after reading it, they're the kind we like answering.

← MARKETING BRIEF

01 // STACK

THE STACK 

FRONTENDReact 19, Tailwind CSS, Shadcn/Radix UI — compiled to a static bundle
I18Nreact-i18next — English + Spanish throughout the operational app
BACKENDFastAPI (Python 3.11) on Uvicorn — one router per feature domain
DATABASEMongoDB 7.x via PyMongo — single-tenant, locally hosted or managed
CRYPTOAES-256-GCM at rest · HMAC-SHA256 signed licensing · Ed25519 capture authorization
DOCUMENTSpypdf overlay onto official Texas RSD-804 cash-card PDF templates
EVIDENCE STOREPrivate object storage for encrypted capture evidence (photos, prints, signatures)
HARDWAREModbus truck scales · SecuGen fingerprint readers via Windows C# bridge · IP cameras via Python proxy

02 // TOPOLOGY

ONE ORIGIN. ONE PORT. ONE RECORD. 

In the LAN reference deployment a single Nginx listener fronts everything: `/api/*` is reverse-proxied to FastAPI, everything else is the static React bundle with client-side routing. Same-origin cookies, no CORS games, one place to put TLS.

░░░░░░░░░░░░░░░░░░░░░░░░░ ░░░░░░ ░░░░░░ ░░░░░░░░░░░░░░░░░░░░░░░░░
░ ░
░ ░░░░░░░ ░░░ ░░░░░ ░░░░ ░░░░░░ ░░░░░░ ░░░ ░░░░░░░ ░░░░░ ░
░ ░░░░ ░░ ░░ ░░░░ ░ ░ ░
░ ░░░░ ░░ ░░░ ░░░░░░ ░░░░░ ░░░░░ ░
░ ░ ░
░ ░░░░░░░ ░░░░░░ ░░░░░░░░░░░░ ░
░ ░░░░░░ ░░░░░░░ ░░░░░░░░░░ ░░░░░░░░░ ░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░ ░ ░
░░░░░░ ░░░░░ ░░░░░░░░░░░ ░░░░░░ ░░ ░░░░░░ ░░░░░
░░░░░░░░░ ░░░░░░░░░░ ░░░░░░░ ░░░░░░░░░░ ░░░░░░░

03 // SECURITY MODEL

ASSUME THE AUDITOR IS HOSTILE. 

01

ENCRYPTION AT REST

Sensitive fields and evidence are AES-256-GCM encrypted before they touch disk. Keys come from the environment, never from the repo.

02

SESSIONS & RBAC

Server-issued sessions, role dependencies on every route, a full roles[] array per user, and per-role route guarding in the SPA.

03

RATE LIMITS & LOCKOUT

Per-IP rate limiting and per-account lockout on authentication endpoints.

04

SIGNED CAPTURE INTENT

Fingerprint capture is authorized by a short-lived, claim-bound signed challenge. The bridge verifies it; the server verifies the result. Replays die.

05

AUDIT LOG

Every state-changing action writes an audit event: who, what, when, from where. Append-only by design.

06

OFFLINE LICENSING

HMAC-SHA256 signed license keys generated offline by the vendor. The server validates without phoning home.

04 // CAPTURE PIPELINE

EVIDENCE WITH PROVENANCE. 

ID DOCUMENTCamera capture with optional AI-assisted OCR to pre-fill seller fields. Original image encrypted and stored.
FACE & SIGNATUREBrowser capture, typed provenance (device, operator, timestamp), encrypted at rest.
FINGERPRINTWindows C# SecuGen bridge on loopback. Server issues an Ed25519-signed, claim-bound authorization; the bridge returns a verified template bound to that claim.
SCALE CAMERASPython proxy exposes authenticated snapshots over Tailscale Funnel (HTTPS). Freshness enforced; camera health surfaced on the Manager dashboard.
TRUCK SCALEModbus live reads with WEIGH1 / HOLD / WEIGH2 state machine. Scale identity and read timestamp recorded on the ticket.
STORAGEEvidence offloaded to private object storage; BSON size limits enforced; references kept on the ticket.

05 // COMPLIANCE EXPORTS

WHAT TEXAS WANTS, IN THE FORMAT TEXAS WANTS. 

TOMSTexas DPS Texas Online Metals System XML generated from ticket, seller, vehicle and material data, with submission tracking.
LEADSONLINELeadsOnline XML built from the same source of truth. One capture, two reports.
RSD-804 CASH CARDSApplication and ID data overlaid onto the official state PDF templates, byte-exact.
MATERIAL CODESState material and vehicle compliance code reference data shipped with the system.

06 // OPERATIONS

BUILT TO BE RUN, NOT DEMOED. 

DEPLOYMENT MODESUbuntu LAN single-origin (Nginx + systemd) or hosted HTTPS. Same bundle, same API.
BACKUPSBackground scheduler: daily JSON backups with 14-day rolling retention. Restore procedure documented.
INSTALLERSGuided Windows installers for the fingerprint bridge and camera proxy — protected secrets, task migration, rollback.
OBSERVABILITYHealth endpoint, live camera health badges, end-of-day reconciliation, audit log viewer.
DOCUMENTATIONArchitecture, deployment, security, backup/restore, licensing, API reference, user guides, troubleshooting, acceptance matrix.

07 // API SURFACE

ROUTE DOMAINS 

Every route is namespaced under /api and documented in the API reference. Domain routers:

/api/auth
/api/tickets
/api/customers
/api/materials
/api/scales
/api/truck-scale
/api/pay-window
/api/ledger
/api/cash-cards
/api/reports
/api/fingerprint
/api/settings
/api/employees
/api/license
/api/reference
/api/it-admin

WANT THE REST OF THE DOCS?

Architecture, API reference, deployment guide, security model — we'll walk your team through all of it.

CALL (346) 787-3662