AssetTrack Documentation
AssetTrack · Operations & administration guide

Know what it does.
Know who can do it.

AssetTrack is an equipment, rental, demonstration, maintenance and payment-management platform for organisations that need one reliable operational record for people, places and specialist assets.

01 / WHY

Operational questions should not depend on a spreadsheet search.

AssetTrack connects equipment, serial assets, users, houses, rentals, demonstrations, invoices, maintenance and history so authorised staff can act from a single operational record.

01

Know where equipment is

Track the current allocation, house or service location and the serialised unit involved.

02

Know who has it

Associate assets and rentals with customers, staff, demonstrators and delivery locations.

03

Know what needs attention

Use maintenance status, rental end dates and warranty reminders to surface upcoming work.

04

Keep commercial history

Record purchases, VAT, invoices, Stripe references and demonstrator payouts without losing the business context.

05

Separate responsibilities

Role-based access gives each user a workspace aligned to their job rather than exposing the whole administration surface.

06

Retain lifecycle history

Preserve allocation, agreement, maintenance, demonstration and audit context as assets move through the organisation.

02 / HOW

One platform, several connected workflows.

The browser communicates with a FastAPI REST API. FastAPI applies ownership and role checks before reading or changing PostgreSQL data. Caddy is the public edge and terminates HTTPS.

User browser
→
Caddy HTTPS
→
FastAPI
→
PostgreSQL

Equipment & serial assets

Catalogue records describe equipment; serial assets represent individual physical units and their lifecycle state.

Rentals & agreements

Rentals allocate units, hold dates and pricing, and can require explicit agreement acceptance before activation.

Sales & invoices

Orders feed an internal invoice register with net, VAT and gross totals. Stripe Checkout can handle customer payment.

Demonstrations

Approved customers can be made available to demonstrators. Demonstrations can create payout records and Connect transfers.

Maintenance

Maintenance records are tied to serialised units; units undergoing maintenance are removed from available stock.

Search, reports & reminders

Each role sees scoped search/report data. Reports can print or download as PDF; reminder views highlight due and expired items.

03 / ROLES

Each role gets the tools it needs.

Frontend navigation is role-aware, but the backend is authoritative: permissions and ownership checks are enforced by FastAPI rather than relying only on hidden menu items.

RoleMain purposeTypical accessSearch / reportsReminders
AdminFull platform administrationUsers, roles, equipment, serial assets, rentals, purchases, invoices, demonstrations, payouts, maintenance, audit, security and settings.Broad platform scopeRental end dates + equipment / serial warranty
ManagerOperational managementMost day-to-day operational workflows, equipment, rentals, purchases, maintenance and audit review, without core admin-only account/settings authority.Operational datasetsRental end dates + equipment / serial warranty
StaffService delivery operationsCustomer addresses, rentals, purchases, demonstrations, invoices and relevant maintenance/asset information.Operational datasetsRental end dates + equipment / serial warranty
FinanceFinancial processingPurchases, invoices, payout approval/payment and safe Stripe configuration status.Financial datasetsNo default expiry source
MaintenanceAsset servicingSerial assets and maintenance workflow.Asset/maintenance datasetsEquipment / serial warranty
DemonstratorAssigned demonstrationsAssigned rentals, approved demonstration customers, own demonstrations, own payout records and Stripe Connect onboarding.Scoped to assigned/approved recordsAssigned rental end dates
CustomerSelf-serviceOwn houses, own rentals, own purchases, own invoices, agreements and supported payment flows.Own records onlyOwn active rental end dates
04 / LIFECYCLE

Manage the journey, not only the inventory.

A physical asset can move through availability, allocation, use, return, inspection, maintenance, reassignment and retirement while keeping its history.

01Available
02Allocate / rent
03In use
04Return
05Inspect / maintain
06Reassign or retire
05 / FEATURES

What AssetTrack manages.

Core application areas are connected so that changes in one workflow remain visible where they matter.

Equipment catalogue

SKU, name, type, manufacturer, model, purchase context, supplier, commercial prices and retirement information.

Serial assets

Individual unit serial numbers, lifecycle state, allocation and warranty context.

Customers & houses

Customer accounts, delivery/service addresses and controlled demonstrator visibility.

Rentals

Dates, allocated units, customer, delivery address, staff/demonstrator assignments and agreement state.

Purchases

Orders with net, VAT and gross calculations and payment status.

Invoices

Internal invoice register with PDF generation, printing and optional email re-send through SMTP.

Stripe

Checkout for customer payments and Connect Express for demonstrator onboarding/payouts when configured.

Maintenance

Service records tied to serialised units, with availability adjusted during maintenance.

Reminders

Configurable default and maximum reminder windows for rentals and warranty expiries.

Search

Role-scoped search so users retrieve only records available to their permissions.

Reports

Role-specific report datasets with browser printing and server-generated PDF downloads.

Audit & security

Audit history for important mutations, password controls and TOTP two-factor authentication.

06 / SETTINGS

Operational settings without rebuilding the application.

v2.9.5 adds an administrator-only Settings page. Runtime settings live in the database while secrets remain server-side environment variables.

Reminder controls

Default reminder windowdatabase setting
Maximum reminder windowdatabase setting

VAT / tax

VAT enabledon / off
VAT ratepercentage

Historical invoices keep the VAT snapshot recorded when issued.

Stripe Checkout

Checkout enabledon / off
Currencyadmin setting
Stripe Tax Rate IDoptional

Demonstrator payouts

Payouts enabledon / off
Default demonstration feeadmin setting
Automatic payouton approval
Payout currencyadmin setting
07 / SECURITY

Access control is enforced server-side.

AssetTrack uses JWT authentication and role/ownership checks in FastAPI. The interface may hide unavailable actions, but the API remains responsible for authorisation.

Authentication

Passwords are salted hashes. Access sessions use signed tokens.

Two-factor authentication

TOTP 2FA supports common authenticator apps plus one-time recovery codes. Administrators can reset enrollment without seeing the secret.

Audit trail

Important business and security mutations can retain actor, action, entity, before/after context, IP and time.

Production hardening

Use strong unique secrets, restrict SSH, use HTTPS, configure firewall/WAF controls, patch the host and containers, protect backups, test restores, and add monitoring/rate limiting appropriate to your environment.

08 / BACKUPS

Back up the database, configuration and application release.

A useful backup is one you can restore. Keep at least one copy off the Cloud Provider and perform periodic restore drills.

Daily

Database dump and configuration backup.

Off-site

Copy encrypted backups to separate object storage or another protected system.

Restore drill

Regularly restore into a non-production environment and verify users, equipment, rentals and invoices.

09 / DEPLOY

Complete Docker Compose deployment.

The package contains frontend, backend, database configuration, Caddy reverse proxy and SQL updates needed for the documented release.

Required production environment values

APP_DOMAIN=demo.example.com
FRONTEND_URL=https://demo.example.com
VITE_API_URL=as required

Build and start

10 / OPERATIONS

Small checks solve most deployment problems quickly.

Start, then verify backend health, database connectivity and Caddy/TLS in that order.

TLS note

Caddy automatically manages certificates for APP_DOMAIN.

11 / UPDATES

Upgrade with a backup and an explicit release directory.

Keep releases separate, copy the production environment file deliberately, validate Compose, then rebuild with the same project name.

  1. Take and verify a Database backup before an upgrade.
  2. Extract the new package into a versioned directory.
  3. Copy or recreate the production confirm its ownership and permissions.
  4. Run checks before stopping the old release.
  5. Read the release notes and apply any supplied database migration/upgrade SQL when required.
  6. Build, start and verify, login, role pages and critical workflows.
  7. Do not remove database volumes unless the upgrade is intentionally a clean installation.