Context
Aquarium Mar del Plata was validating tickets from a single PC at the box office. During peak season, with over 2,000 daily visitors and 15 shows running in parallel, that single control point created access bottlenecks and unnecessary queues. On top of this came the complexity of managing show schedules: daily capacity changes, last-minute modifications and rescheduling that had to be reflected immediately across all sales and validation points. Management was making decisions without real-time visibility into how many people were in the park or which shows were about to fill up.
The Challenge and Solution
I developed the park’s complete operating system and decentralized validation: from a single fixed PC to 30 mobile devices distributed at every entrance and show. Each worker validates tickets from their own phone, with or without a stable connection, reducing validation times by 60%.
The most interesting challenge was the integration with Tango (GVA12), the already-installed ERP. Rather than replacing it, I integrated it through Hangfire background jobs that synchronize items and validate tickets asynchronously — the system operates with fault tolerance from the ERP.
To make 30 devices possible without investing in dedicated hardware, I built a PWA with service workers that turns any staff member’s phone into a validation terminal.
Impact
- +2,000 tickets/day processed during peak season
- 15 simultaneous shows with real-time capacity and seating control
- 30 mobile devices validating tickets in parallel
- 60% reduction in validation times by decentralizing from one PC to multiple access points
- Management dashboard with live metrics: people present, tickets sold, availability per show
Technologies
- Backend: .NET 6, ASP.NET Core, Entity Framework Core
- Frontend: Blazor WebAssembly + Blazor Server
- Database: SQL Server
- Architecture: CQRS with MediatR, Repository, Specification, Unit of Work
- Jobs: Hangfire (ERP synchronization, ticket burning)
- Authentication: JWT Bearer with roles (box office, scanner, management)
- Mobile: PWA with service workers for offline operation
- Logs: Serilog
- Integration: Tango GVA12 (commercial ERP)