Caso de éxito — Clubs & Gyms SaaS

ZeroOne Clubs — Membresías, Accesos y Pagos

Resolvemos el caos operativo de múltiples gimnasios: planes, cobros, control de acceso con QR/NFC y reportes accionables en tiempo real, todo con tu marca.

Panel — Mi Club
Vista
Membresías activas
428
Accesos hoy
312
Ingreso (MXN)
$28.4k
Ocupación
72%
Retención 30d
86%
Planes Check-in Pagos

Problemática

  • Altas y renovaciones en Excel / papel → errores y fraudes.
  • Control de acceso manual → filas, molestia a usuarios y poca trazabilidad.
  • Multiples cajas/sedes sin conciliación centralizada.
  • Sin KPIs de retención, ocupación y ARPU para decisiones.
  • Marca inconsistente en recibos/portal de miembros.

Objetivos

  • Unificar membresías, accesos y pagos en una sola plataforma.
  • Acceso rápido con QR/NFC y auditoría completa.
  • Procesos de caja y pagos en línea con conciliación.
  • Reportes en vivo y tableros accionables.
  • Branding por club/tenant (logo, color primario, portada).

Resultados esperados

Accesos automáticos
≥ 95%
Tiempo de alta
-60%
Retención 90d
+12%
Fraude
-80%

Solución propuesta

Arquitectura & módulos

  • Backoffice web (ASP.NET Core + Tailwind) con Identity.
  • Tenant theming (logo, color de marca, portada) aplicado vía CSS variables.
  • Módulos: Miembros, Planes, Suscripciones, Accesos (QR/NFC), Pagos y Reportes.
  • Clean Architecture + MediatR (Commands/Queries/Handlers).
  • Persistencia: EF Core (Azure SQL), evidencias/recibos en Blob si aplica.

Seguridad & operación

  • Roles por tenant: Owner, Manager y Staff (sin segundo Owner).
  • QR firmado con vencimiento y versión por usuario (rotación on-demand).
  • Logs de acceso inmutables y auditables.
  • Pagos: caja y/o proveedor externo (future-proof para Stripe/PayPal).
  • KPIs con Chart.js (accesos, top planes, ingresos 12m).

Arquitectura lógica

Backoffice Web ASP.NET Core + Tailwind Punto de acceso Cámara QR / NFC Portal Miembro Recibos y QR API Gateway / BFF Versionado · MediatR Validación · Rate limiting Identity / Roles por tenant Servicios de Dominio Members · Plans · Subs Access · Billing · Reports Data Stores Azure SQL · Blob Keys & secrets Proveedor Pagos (opcional)

Modelo de datos

Tenant Id (PK) Name, Slug LogoUrl, BrandColor HeaderImageUrl TenantUsers TenantId (FK) UserId (FK) Role (Owner/Manager/Staff) Members Id (PK), TenantId (FK) FullName, Email, Phone ActiveSubscriptionId IsActive, CreatedAt Subscriptions Id (PK), TenantId (FK) MemberId (FK), PlanId (FK) StartsAt, EndsAt IsCancelled MembershipPlans Id (PK), TenantId (FK) Name, PriceMx, DurationDays AllowAccessControl, IsActive Payments Id (PK), TenantId (FK) MemberId (FK), PlanId (FK) SubscriptionId (FK, null) AmountMx, Method, Status AccessLogs Id (PK), TenantId (FK) MemberId (FK), AccessAt Method (QR/NFC/Manual), Granted

Flujo de acceso con QR

1) Escáner Cámara / lector 2) Código ZOC ZOC.{tenantId}.{memberId}.{ver}.{exp}.{sig} 3) Endpoint /Clubs/Accesos/Scan 4) Handler Valida tenant/exp Suscripción y plan 5) Decisión Granted / Denied Log persistido

Plan de implementación

Fase 1

Kickoff & diseño

Workshops, objetivos, diseño UX y definición de planes/roles.

Fase 2

MVP operativo

Miembros, planes, accesos QR, caja y reportes básicos.

Fase 3

Branding & pagos

Theming por tenant, recibos y proveedor de pagos.

Fase 4

KPIs & escalamiento

Cohortes, churn, ARPU y optimización de costos.

¿Listo para modernizar tu operación?

Activa tu piloto y mide impacto en semanas, no meses.