Architecture

Designed to be simple to host now and flexible to grow later.

This solution keeps the technology straightforward for shared or modest server environments while still treating identity, permissions, payments, and reporting as first-class design concerns.

Key architectural choices

Recommended roles

Admin Fencer Referee Coach Supporter Parent Club Admin

Payment workflow

  • Use hosted checkout to reduce PCI scope
  • Store payment and item rows before redirecting to the provider
  • Confirm payment through webhook before activating licences or entries
  • Record refunds separately and log the admin action

Reporting approach

  • Use indexed SQL views for repeated dashboard queries
  • Keep exports behind admin permissions
  • Derive age group reports from configurable age bands
  • Add snapshots later if reporting volumes grow further

Phased build plan

Phase 1 Identity, authentication, roles, parent-child links, club memberships
Phase 2 Licences, renewals, payment integration, approval flows
Phase 3 Competitions, event entries, cancellations, refunds, history
Phase 4 Admin reports, exports, audit viewer, operational tooling
Phase 5 Rankings, certifications, club workflows, external integrations