Propuesta técnica y económica · Club de Industriales

App de socios del Club de Industriales

Desarrollo de una app de marca blanca para iPhone y Android, una consola web para el equipo del club y una API en Node.js conectada en tiempo real con Odoo.

Preparado para
Club de Industriales
Preparado por
HEYAY LABS
Fecha
Octubre 2026
Vigencia
30 días

01Resumen ejecutivo

HEYAY LABS desarrolla la app del club para iPhone y Android con el nombre, el logotipo y los colores del club. Cada socio, y quien él autorice, podrá reservar mesa o sala, registrar a sus invitados, consultar el menú, revisar sus consumos y facturas y comunicarse con el club. Odoo sigue siendo el sistema central del club: la app se conecta a él en tiempo real y los socios no necesitan usuarios de Odoo.

Desarrollo
2 meses
4 sprints de 2 semanas
Inversión de desarrollo
$190,000 MXN
$95,000 al mes × 2 · más IVA
Soporte e infraestructura
$3,500 MXN / mes
Desde el lanzamiento · más IVA
ComponenteQué es
App del socioApp nativa para iPhone y Android, publicada en App Store y Google Play a nombre del club. Ocho módulos (sección 3).
Consola del clubPanel web para el equipo del club: usuarios y acciones, reglas, llegadas e invitados, anuncios, menús y bitácora.
API y plataformaServidor en Node.js (TypeScript) con base de datos propia. Valida permisos, aplica las reglas del club y registra cada movimiento.
Integración con OdooConexión bidireccional en tiempo real: disponibilidad, consumos, facturas y tickets.

La cuota mensual incluye infraestructura, soporte y actualizaciones; solo los mensajes SMS se cobran aparte, a costo (sección 11).

02Contexto y objetivos

El club busca darle a sus socios una app propia, elegante y sencilla. No quiere un portal de Odoo ni una app que parezca de restaurante. Esta propuesta parte de lo que el club planteó en la reunión del 29 de septiembre.

2.1Objetivos

  • Autoservicio del socio: reservar mesa o sala, registrar invitados y consultar consumos sin llamar al club.
  • La asistente como usuaria clave: que la asistente del socio pueda organizarle todo desde su propio usuario. Si le facilitamos la vida, siempre recomendará el club.
  • Las reglas del club, aplicadas por el sistema: los límites de visitas de los familiares y la capacidad de los espacios se validan al reservar. Recepción ya no tiene que negar nada en persona.
  • Seguridad a toda prueba: datos personales y consumos protegidos, con bitácora que permite un análisis forense.
  • Odoo detrás: el club sigue operando en Odoo y la app refleja la información al instante.

2.2Principios de diseño

  • Menos es más. Cada pantalla resuelve una cosa, con letra clara y pocos pasos, para un socio de perfil ejecutivo.
  • Solo celular. La app es para iPhone y Android; la consola web es para el equipo del club.
  • Menú de consulta. Sin precios ni pedidos; lo único que el socio autogestiona son las reservas.
  • Protocolo. Detalles como el autollenado del código de verificación, Face ID y confirmaciones discretas.

03Alcance funcional

Ocho módulos. Esta lista es el alcance del proyecto: lo que se construye, se prueba y se entrega publicado en las tiendas.

3.1Acceso y perfil

FuncionalidadDetalle
Alta por invitaciónEl club da de alta al titular desde la consola; el usuario queda ligado a su número de acción desde el primer día.
Inicio de sesiónCon Apple, Google, Microsoft o correo y contraseña. Cuentas propias de la app, separadas de Odoo.
VerificaciónCódigo por SMS al registrar un dispositivo nuevo y en acciones sensibles; el teclado del celular lo sugiere solo.
BiometríaFace ID o huella para el acceso diario.
PerfilFoto, avatar o logotipo de su empresa, nombre, celular, correo y contacto de emergencia (nombre, parentesco y teléfono).
SesionesPreferencias de notificaciones, lista de dispositivos y cierre de sesión en todos ellos.

3.2Acción, familia y roles

FuncionalidadDetalle
Usuarios de la acciónEl titular invita a su cónyuge, a sus hijos y a su asistente; cada quien descarga la app con su propio acceso.
RolesTitular, asistente, cónyuge, hijo mayor de edad e hijo menor de edad (sección 4).
Permisos ajustablesEl titular amplía o retira permisos a cada usuario, o lo da de baja.
Reglas de visitasSe aplican automáticamente al reservar (sección 5).

3.3Reservas de restaurante y salas

FuncionalidadDetalle
MesaDía, turno, horario, número de personas y área.
Sala de juntasDía, horario, duración y número de personas, con la capacidad de cada sala.
Disponibilidad realLo que reserva un socio deja de estar disponible para los demás en ese instante.
CapacidadMesas de hasta 8 sin juntar mesas; salas de hasta 17. Un grupo mayor se orienta a reservar sala.
A nombre del titularLa asistente reserva por el titular.
Ciclo completoConfirmación, recordatorio, modificación, cancelación e historial de la acción.

3.4Invitados

FuncionalidadDetalle
Registro por reservaDatos mínimos: nombre completo, celular, correo y empresa.
Link de registroEl socio lo comparte por WhatsApp y el invitado captura sus propios datos en una página web segura, sin descargar la app.
Código QRCada invitado recibe un QR personal y lo presenta al llegar.
RecepciónVe a los invitados esperados de la acción al registrar la llegada del socio, en la consola y en Odoo.
FrecuentesInvitados guardados para la siguiente visita.

3.5Menús

Menú del restaurante y menú de salas, organizados por tiempos, con fotografía y descripción de cada platillo. Solo de consulta: sin precios ni pedidos. El cambio de temporada, cada tres meses, se publica desde la consola, con aviso opcional a los socios.

3.6Consumos y facturas

FuncionalidadDetalle
Estado de cuentaA la fecha que el socio elija: consumos facturados y por facturar.
DetalleFecha, área, concepto, importe y usuario de la acción que generó cada consumo.
FiltrosPor usuario y por periodo.
FacturasMeses anteriores con descarga de PDF y XML.
VisibilidadSolo el titular y los usuarios a quienes él se lo habilite.

3.7PQRS

Preguntas, quejas, reclamos y sugerencias. El socio levanta un ticket con tipo, área, fecha de la visita, descripción y fotografía. El ticket se crea en Odoo para el seguimiento del equipo; el socio ve su estado (recibido, en revisión, resuelto), recibe la respuesta del club dentro de la app y una notificación cuando hay novedades.

3.8Anuncios y notificaciones

Muro de anuncios del club (eventos, avisos, menú de temporada) con notificaciones push. El club envía a todos o por segmento: titulares, familias o asistentes. La app manda recordatorios automáticos de reservas y avisos de respuesta a PQRS.

3.9Consola del club

ÁreaQué permite
Usuarios y accionesInvitaciones, roles, permisos y bajas.
ReglasLímites de visitas, capacidades y horarios de reserva.
Llegadas e invitadosReservas del día e invitados esperados por acción.
ContenidoAnuncios, notificaciones push y menús de temporada.
BitácoraAccesos y movimientos de cada usuario, con filtros y exportación.

La operación diaria (cobranza, facturación, atención de tickets) sigue en Odoo.

04Roles y permisos

Los permisos se validan en el servidor, no solo en la pantalla: aunque alguien manipule la app, la API rechaza lo que su rol no permite. Esta es la configuración inicial; el titular y el club pueden ajustarla.

PermisoTitularAsistenteCónyugeHijo mayorHijo menor
Reservar mesa o salaSíSí, a su nombreSí*Sí*No
Registrar invitadosSíSíSíSíNo
Ver consumos y facturasSíSi se habilitaNoNoNo
Levantar PQRSSíSíSíSíNo
Administrar usuarios de la acciónSíNoNoNoNo
Consultar menú y anunciosSíSíSíSíSí

* Sin el titular, dentro de su límite mensual de visitas (sección 5).

05Reglas del club

La app aplica los estatutos al momento de reservar. Como los estatutos siguen en revisión, cada límite se configura desde la consola sin tocar código.

ReglaValor inicialCómo la aplica la app
Visitas del cónyuge sin el titular1 al mesLleva la cuenta; al llegar al límite no permite otra reserva en el mes. Con el titular presente no cuenta.
Visitas de hijos mayores sin sus padres5 al mesLa sexta reserva del mes se bloquea con una explicación clara.
Hijos menores de edadSolo acompañadosNo pueden reservar.
Capacidad de mesa8 personasLas mesas no se juntan; para un grupo mayor propone reservar sala con menú de salas.
Capacidad de sala17 personasValida contra la capacidad de cada sala.
Invitados del titularSin límiteLimitados solo por la capacidad del espacio; todos se registran antes de llegar.

06Arquitectura técnica

Una app nativa multiplataforma, una API propia y una base de datos propia; Odoo queda detrás como sistema central. Los socios nunca tocan Odoo directamente: todo pasa por la API, que valida quién es, qué puede hacer y deja registro.

USUARIOS PLATAFORMA DE LA APP SERVICIOS Y CLUB App del socio iPhone y Android React Native + Expo Consola del club Web · Next.js Equipo del club Invitados Link web + código QR API · Node.js + TypeScript Autenticación, roles y reglas del club Reservas, invitados, PQRS, anuncios Bitácora de cada movimiento Base de datos · PostgreSQL Supabase: usuarios, permisos por fila, archivos cifrados y tiempo real Sincronizador con Odoo Recibe cambios de Odoo, reintenta y concilia cada pocos minutos Verificación SMS · Google Firebase Notificaciones Expo Push · Apple y Google Tiendas App Store y Google Play Odoo del club Sistema central API JSON-2 HTTPS webhooks
Todo lo que hace el socio pasa por la API: valida, aplica reglas, registra y sincroniza con Odoo.

6.1Componentes y tecnologías

ComponenteTecnologíaFunción
App del socioReact Native + Expo (SDK 57 o el vigente al arrancar), Expo RouterUna sola base de código que genera la app nativa de iPhone y la de Android.
APINode.js + TypeScript (Hono)Reglas de negocio, permisos por rol, integración con Odoo y bitácora.
Base de datos y autenticaciónSupabase: PostgreSQL, Auth, Storage y RealtimeUsuarios, sesiones, permisos a nivel de fila, archivos (fotos de PQRS, facturas) y actualizaciones en tiempo real.
Consola del clubNext.js en VercelPanel web del equipo del club y página de registro de invitados.
SincronizadorNode.js, colas con reintentoRecibe los webhooks de Odoo y concilia cambios periódicamente.
Verificación por SMSFirebase Authentication (Google)Envía y valida el código por SMS; la API confirma la verificación con Google y la liga al usuario de la acción. Incluye protección de Google contra envíos abusivos.
NotificacionesExpo Push → APNs (Apple) y FCM (Google)Anuncios, recordatorios y respuestas de PQRS.
Compilación y publicaciónExpo EAS Build, Submit y UpdateGenera las versiones para las tiendas y permite publicar correcciones sin esperar una nueva revisión.
MonitoreoSentryErrores y rendimiento de app y API en tiempo real.

6.2Por qué este camino

Revisamos las opciones vigentes a octubre de 2026 para una app de iPhone y Android que debe estar publicada en dos meses:

OpciónEvaluación
React Native + Expo (elegida)App nativa real en ambas plataformas desde un solo código. Es la plataforma con la que se construyen apps como las de Microsoft, Shopify y Discord. Acceso completo a Face ID, notificaciones, cámara y autollenado de SMS. Comparte lenguaje (TypeScript) con la API y la consola, y permite publicar correcciones urgentes sin pasar por revisión de tienda.
Dos apps nativas (Swift y Kotlin)Máximo control, pero son dos proyectos independientes: el doble de desarrollo, pruebas y mantenimiento. No cabe en dos meses ni se justifica para este alcance.
FlutterBuena opción técnica, pero usa otro lenguaje (Dart) que no se comparte con la API ni la consola, lo que encarece el mantenimiento.
Capacitor / IonicEs una página web dentro de un contenedor. Se siente menos nativa y queda corta para el nivel de experiencia que pide el club.
ElectronSolo sirve para aplicaciones de escritorio (Windows, macOS, Linux). No genera apps de iPhone ni de Android, por lo que no aplica.

6.3Ambientes

AmbientePara qué
DesarrolloTrabajo diario del equipo de HEYAY LABS, con datos de prueba.
PruebasConectado a un Odoo de pruebas. El club prueba cada sprint desde TestFlight (iPhone) y la prueba interna de Google Play (Android).
ProducciónLa app publicada, conectada al Odoo real del club.

07Integración con Odoo

Odoo sigue siendo la fuente de verdad del club. La app tiene su propia plataforma y sus propios usuarios, y se conecta a Odoo por API en tiempo real: si algo cambia en la app, llega a Odoo en ese instante; si cambia en Odoo, la app lo refleja.

7.1Flujos de información

InformaciónDirecciónMomento
Socios y accionesOdoo → appAl cambiar en Odoo
Disponibilidad de mesas y salasOdoo ↔ appEn vivo, al consultar y al reservar
Reservas y cancelacionesApp → OdooAl instante
Invitados registradosApp → OdooAl instante
ConsumosOdoo → appAl consultar el estado de cuenta
Facturas (PDF y XML)Odoo → appAl timbrarse
Tickets de PQRS con fotografíaApp → OdooAl instante
Respuestas a PQRSOdoo → appAl responder el equipo, con notificación

7.2Cómo se conecta

  • API JSON-2 de Odoo. Odoo declaró obsoletas sus APIs anteriores (XML-RPC y JSON-RPC) a partir de la versión 19 y las retira en 2027–2028. Construimos sobre la API nueva para no heredar una migración forzada. Si el club está en una versión anterior, lo resolvemos en la primera semana con su consultor.
  • Webhooks desde Odoo. Reglas automáticas en Odoo avisan a la plataforma cuando algo cambia (una respuesta a PQRS, una factura nueva).
  • Conciliación periódica. Cada pocos minutos el sincronizador compara cambios recientes para que ningún evento se pierda si Odoo o la red fallan un momento.
  • Credenciales de servicio. La plataforma usa una llave de API con permisos mínimos; ningún socio tiene usuario de Odoo.

7.3Coordinación con el consultor de Odoo

HEYAY LABS diseña la integración y entrega la lista de campos, modelos y reglas automáticas que se necesitan. El consultor de Odoo del club los habilita de su lado. Trabajamos juntos desde la primera semana con un documento de integración compartido.

08Seguridad y trazabilidad

La app maneja datos personales, consumos y facturas de los socios. La construimos con las prácticas de una app financiera y la sometemos a pruebas de ataque antes de publicarla.

ÁreaControles
AccesoBiometría del dispositivo, código de verificación en dispositivos nuevos y acciones sensibles, sesiones que expiran, cierre remoto de sesión y límite de intentos.
AutorizaciónCada consulta se valida en el servidor contra el rol y la acción del usuario; la base de datos aplica permisos a nivel de fila como segunda barrera.
DatosCifrado en tránsito (TLS) y en reposo; facturas y fotografías con enlaces temporales; secretos fuera del código.
TrazabilidadBitácora inmutable de accesos y movimientos: quién, qué, cuándo, desde qué dispositivo y dirección IP. Permite el análisis forense de cualquier incidente.
Abuso de códigosCódigos solo para usuarios dados de alta por el club, solo números de México, límite de intentos y tope de envíos por usuario y dispositivo.
PruebasRevisión de código y pruebas de intrusión sobre la app y la API antes de la publicación.
RespaldosRespaldos diarios automáticos de la base de datos; restauración a cualquier minuto como opción (sección 11.2).
PrivacidadAviso de privacidad y consentimiento conforme a la Ley Federal de Protección de Datos Personales. La app no almacena datos de tarjetas.
Propuesta integralLa seguridad de la infraestructura física, la red y los equipos del club corresponde a su proveedor de infraestructura dentro de la propuesta integral. HEYAY LABS cubre la seguridad de la app, la API, la base de datos y la integración.

09Plan de trabajo

Dos meses, en cuatro sprints de dos semanas. Al cierre de cada sprint el club prueba funcionalidad real en su celular, no avances en papel.

SprintSemanasEntregable
1 · Base y acceso1–2Sesión de arranque con el club y su consultor de Odoo. Trámite de D-U-N-S y cuentas de Apple y Google. Marca blanca, acceso y perfil, acciones y roles, consola (usuarios y reglas). Documento de integración con Odoo.
2 · Reservas e invitados3–4Mesas y salas con disponibilidad en vivo, reglas de visitas y capacidad, invitados con link y QR, menús. Primera versión en TestFlight y prueba interna de Android.
3 · Consumos, PQRS y anuncios5–6Estado de cuenta y facturas, PQRS conectado a Odoo, anuncios y notificaciones push, bitácora en la consola.
4 · Piloto y publicación7–8Pruebas de seguridad, piloto con un grupo de socios y asistentes, ajustes, envío a revisión de Apple y Google, capacitación al equipo del club y lanzamiento.
Sobre la publicaciónApple y Google revisan cada app antes de publicarla; la revisión suele tardar de uno a varios días y está considerada en el sprint 4. La cuenta de Apple requiere el número D-U-N-S del club (gratuito, hasta 7 días hábiles), por eso se tramita en la primera semana.

10Entregables y propiedad

EntregableDetalle
App publicadaEn App Store y Google Play, bajo las cuentas de desarrollador del club.
Consola del clubEn un dominio del club, con usuarios para su equipo.
Integración con OdooFuncionando en producción y documentada.
Código fuenteRepositorio con la app, la API y la consola, propiedad del club al liquidar el desarrollo.
DocumentaciónArquitectura, integración, manual de la consola y procedimiento ante incidentes.
CapacitaciónSesión con el equipo del club (recepción y gerencia) para operar la consola.

Cuentas a nombre del club. Apple exige que una app de marca blanca se publique en la cuenta de quien es dueño de la marca, así que las cuentas de Apple Developer y Google Play se abren como organización a nombre del club. HEYAY LABS cubre sus cuotas y participa como administrador técnico.

11Inversión

Todos los importes en pesos mexicanos, más IVA.

11.1Desarrollo

ConceptoImporte
Mes 1 · sprints 1 y 2$95,000
Mes 2 · sprints 3 y 4$95,000
Total de desarrollo$190,000 + IVA

Un pago al inicio de cada mes. Incluye los ocho módulos de la app para iPhone y Android, la consola del club, la API, la integración con Odoo, las pruebas de seguridad, la publicación y la capacitación. También incluye las cuotas de Apple Developer Program ($99 USD el primer año) y Google Play Console ($25 USD, pago único), que cubre HEYAY LABS.

11.2Soporte, actualizaciones e infraestructura · desde el lanzamiento

ConceptoImporte
Soporte, actualizaciones e infraestructura$3,500 / mes + IVA

Una sola cuota mensual que mantiene la app funcionando, segura y publicada. Usuarios ilimitados.

Infraestructura incluida

ServicioUso
SupabaseBase de datos exclusiva del club, autenticación, archivos y respaldos diarios.
VercelConsola del club, API y página de registro de invitados.
Expo EASCompilación de versiones para las tiendas y actualizaciones de la app.
Monitoreo y correoMonitoreo de errores (Sentry) y correos de la app: invitaciones y confirmaciones.
Notificaciones pushEnvío a iPhone y Android.
Cuentas de tiendaRenovación anual de Apple Developer Program a partir del segundo año.

Soporte y actualizaciones incluidos

Una app móvil necesita mantenimiento constante para seguir publicada: Apple y Google cambian sus requisitos cada año.

  • Nuevas versiones de iOS y Android. Adecuar y volver a publicar la app con cada versión mayor (iOS cada septiembre; Android con el nivel de API que Google Play exige cada agosto).
  • Actualización de la plataforma. Versiones nuevas de Expo, React Native y librerías, y parches de seguridad.
  • Cumplimiento con las tiendas. Cambios de políticas y renovación de certificados de notificaciones.
  • Correcciones de errores y monitoreo de la app, la API y la integración con Odoo.
  • Soporte al equipo del club por WhatsApp y correo en horario hábil, y ajustes menores de configuración y contenido.

No incluye módulos ni funcionalidades nuevas; esos se planean y cotizan por separado. Opcional: restauración de la base de datos a cualquier minuto de los últimos 7 días (point-in-time recovery), $100 USD al mes a costo.

11.3Códigos de verificación por SMS · a costo

Comparamos los principales servicios para enviar códigos por SMS a celulares de México:

ServicioUSD / SMSMXN / SMS
Firebase Authentication (Google) (elegido)$0.05~$0.91
Plivo~$0.11~$2.04
Twilio$0.18~$3.30
Twilio Verify$0.23~$4.21

Elegimos Firebase Authentication de Google: el precio más bajo entre los servicios de primer nivel, entrega directa con los operadores de México y protección contra envíos abusivos incluida. El código llega por SMS, así que el teclado del iPhone y de Android lo sugiere solo.

El código solo se pide cuando hace falta: al registrar un dispositivo nuevo, al reinstalar la app y en acciones sensibles. El acceso diario es con Face ID o huella. Estimado mensual en pesos:

Usuarios de la app1 código / usuario2 códigos / usuario3 códigos / usuario
150 usuarios~$140~$275~$410
300 usuarios~$275~$545~$820
500 usuarios~$455~$910~$1,360

Usuarios: titulares más cónyuges, hijos y asistentes con acceso. Con 110 acciones esperamos entre 250 y 350 usuarios. El primer mes es más alto porque todos registran su dispositivo.

11.4Resumen mensual estimado tras el lanzamiento

ConceptoTipoMXN / mes
Soporte, actualizaciones e infraestructuraCuota fija$3,500
SMS de verificación (300 usuarios, 2 códigos al mes)A costo, según uso~$545
Total estimado~$4,045 + IVA

Los SMS se facturan cada mes al costo de Google, con el detalle de envíos. El importe en dólares varía con el tipo de cambio.

12Lo que necesitamos del club

QuéPara cuándo
Razón social y datos para el número D-U-N-S y las cuentas de Apple y GoogleSemana 1
Versión de Odoo, acceso a un ambiente de pruebas y llave de APISemana 1
Tiempo de su consultor de Odoo para habilitar campos y reglasSemanas 1–6
Logotipo, colores, fotografías y textos del clubSemana 2
Espacios del club: mesas, salas, capacidades y horariosSemana 2
Menús vigentes con fotografíaSemana 4
Aviso de privacidad (o su validación legal)Semana 6
Grupo piloto de socios y asistentesSemana 7

13Supuestos y fuera de alcance

Supuestos

  • Odoo del club expone por API la disponibilidad, consumos, facturas y tickets; su consultor habilita lo que falte.
  • La app se publica en español.
  • Los límites de visitas y capacidades pueden cambiar desde la consola sin desarrollo adicional.
  • Los tiempos dependen de recibir a tiempo los insumos de la sección 12.

Fuera de alcance

  • Pedidos de alimentos y pagos en línea, por decisión del club.
  • Acceso al estacionamiento y servicio de valet.
  • Configuración y desarrollo dentro de Odoo, que corresponden al consultor del club.
  • Infraestructura física, red y equipos del club, que forman parte de la propuesta integral.
  • Versión de escritorio o tableta de la app.

Cualquier módulo adicional se planea y cotiza por separado cuando el club lo decida.

14Siguiente paso

Una sesión con el club y su consultor de Odoo para confirmar alcance, versión de Odoo y fechas, y arrancar el primer sprint.