# Global Fan: ticketing y FaceID a escala | Coding Ways

Cómo Coding Ways desarrolla Global Fan: socios, ticketing y acceso a estadios con FaceID para más de 130 clubes deportivos de Argentina.

Canonical: https://codingways.com/es/work/globalfan

Diseñamos, construimos y operamos desde 2019 el ecosistema digital que usan más de 130 clubes deportivos de Argentina para gestionar socios, vender entradas y controlar el ingreso a sus estadios con reconocimiento facial.

Desde: 2019

Rol: Producto · Desarrollo · Cloud

Alcance: 14 provincias

- +130 clubes en 14 provincias

- +3M entradas vendidas

- +20M validaciones de identidad

- +250k usuarios activos

## El desafío

Los clubes gestionaban socios, cuotas y entradas con planillas, sistemas aislados y controles manuales en la puerta. Eso significaba reventa, suplantación de identidad, largas filas y poca información sobre sus propios hinchas.

El problema técnico es extremo por naturaleza: el tráfico es casi nulo durante la semana y se multiplica en minutos cuando abre la venta de un partido importante o cuando miles de personas llegan juntas al estadio. Cada entrada tiene que venderse una sola vez y cada ingreso tiene que validarse en segundos, incluso si falla la conexión.

## Lo que construimos

### Socios y cuotas

Padrón de socios multi-club, débito automático y múltiples medios de pago, con facturación electrónica e integración contable.

### Ticketing

Venta online con cupos exactos, asientos numerados y entradas con QR dinámico, pensada para soportar la avalancha de la apertura de venta.

### Acceso con FaceID

Validación de identidad con prueba de vida y consulta a RENAPER, integrada con los molinetes del estadio para ingresar sin papel.

### Operación offline

Los molinetes y scanners siguen validando con listas locales si se corta la conexión en la cancha.

### Billetera y beneficios

Billetera digital y red de beneficios para hinchas en comercios adheridos, dentro de la app de socios.

### Multi-tenant

Cada club tiene sus datos aislados en su propio esquema, sobre una única plataforma que se actualiza para todos a la vez.

## Escalar para el día de partido

En 2023 migramos la plataforma a Kubernetes en AWS. Hoy la API escala sola según la carga: en un partido de Primera División con 29.036 ingresos pasó de 10 a 37 instancias sin intervención manual, atendió 3,3 millones de requests en poco más de cuatro horas con 99,999 % de respuestas correctas, y la base de datos no superó el 23 % de CPU.

En las aperturas de venta más exigentes la plataforma superó los 74.000 requests por minuto (más de 1.200 por segundo) y llegó a más de 120 instancias de la API trabajando en paralelo.

### Cupos exactos bajo avalancha

Reemplazamos el control de cupo por un contador atómico en la base. En pruebas de carga con 6.519 canjes simultáneos: cero sobreventa, errores de 638 a 0 y la CPU de la base de 95 % a 56 %.

### Autoescalado que responde a tiempo

Rediseñamos los health checks para que las instancias nuevas entren en servicio bajo carga: de 20 a 90 instancias listas, p95 de 19,8 s a 5,2 s y el throughput multiplicado por 4.

### Conexiones a la base

Sumamos un pooler de conexiones por nodo: de 660 a 199 conexiones en la misma avalancha, sin caídas de memoria y con la misma latencia.

### Menos consultas por request

Optimizamos el cambio de contexto entre clubes: las pantallas más usadas pasaron de 136 a 45 consultas por request.

### PostgreSQL 13 → 18

Actualizamos una base de 70 GB con más de 42.000 tablas en 56 minutos de corte total. La consulta del scanner de ingreso planifica 5,7 veces más rápido.

### Colas que escalan por demanda

Los procesos en segundo plano escalan según el tamaño y la demora de la cola, no por CPU, y drenan picos de miles de trabajos pendientes.

## La evolución

### 2019: Nace AccessFan

Primera versión para digitalizar el acceso de los hinchas al estadio.

### 2020 – 2022: Plataforma multi-club

API y web para gestión de socios, pagos online y las primeras entradas con QR.

### 2023: FaceID, modo offline y Kubernetes

Reconocimiento facial con prueba de vida, scanners que funcionan sin conexión y migración a Kubernetes con autoescalado.

### 2024: Identidad y facturación

Validación contra RENAPER, facturación electrónica e integración con el hardware de control de acceso.

### 2025: Global Fan

Billetera digital, red de beneficios, asientos numerados y rebranding de AccessFan a Global Fan.

### 2026: Preparados para la próxima escala

Rails 8, PostgreSQL 18, pooling de conexiones y colas con autoescalado por demanda.

## Stack

Ruby on Rails, GraphQL, Next.js, React, PostgreSQL, PgBouncer, Redis, Sidekiq, AWS, Kubernetes (EKS), Karpenter, KEDA, AWS Rekognition, Cloudflare, Prometheus, Grafana, New Relic, GitLab CI
