Volver al blog
Producto Propio

Qoorder: como construimos una plataforma de pedidos para hosteleria local

6 min de lectura

Que es Qoorder

Qoorder es una plataforma propia de Moicro para que los negocios de hosteleria local tengan su propio sistema de pedidos online. No Glovo, no Just Eat — una plataforma que el negocio controla, con su marca, sus precios y sin comisiones de terceros.

La plataforma tiene tres partes:

1. App para clientes — navegan establecimientos, hacen pedidos, pagan y siguen el estado

2. Qoorder ERA (app para negocios) — el negocio gestiona pedidos, clientes, repartidores y configuracion

3. Web corporativa — presentacion publica de la plataforma

Por dentro: numeros reales

Solo la app de negocio (Qoorder ERA) tiene:

  • 218 vistas en XAML
  • 97 ViewModels
  • 111 modelos de datos
  • 35 endpoints solo para el dashboard
  • Tres roles: Administrador, Establecimiento y Repartidor

No es un proyecto pequeno.

El stack

Apps moviles (iOS + Android)

Ambas apps usan .NET MAUI. La decision fue clara: compartir modelos, servicios y logica de negocio entre las dos apps. Cuando el modelo de un pedido cambia, cambia en un solo sitio.

Qoorder (cliente)      →  iOS, Android

Qoorder ERA (negocio) → iOS, Android

Ambas comparten → Modelos, servicios, constantes

Backend

PHP con arquitectura REST. No usamos un framework completo — estructuramos una API limpia con controladores, middlewares y un sistema de autenticacion JWT propio. La base de datos es MySQL.

La razon de PHP: facilidad de despliegue en hosting compartido, que es donde viven muchos de estos negocios locales. No necesitan un servidor Node.js ni un contenedor Docker.

Las integraciones

OneSignal para notificaciones push. El cliente recibe una notificacion cuando su pedido esta en camino. El negocio recibe un aviso cuando entra un pedido nuevo.

PayComet para pagos con tarjeta. Integracion completa con tokenizacion de tarjetas para que el cliente no tenga que introducir datos cada vez.

WhatsApp como canal de comunicacion entre cliente y negocio para incidencias.

Maps para visualizar la ruta del repartidor en tiempo real.

El wallet (monedero)

Una de las funcionalidades mas interesantes. Los clientes pueden recargar saldo en su monedero y usarlo para pagar pedidos. El negocio configura bonificaciones: "recarga 20€ y te regalamos 2€".

El flujo de recarga es presencial: el cliente solicita la recarga desde la app, un repartidor va a cobrar el efectivo y confirma la recarga. Funciona en entornos donde el pago con tarjeta no siempre es la opcion preferida.

Los dashboards

Implementamos dos dashboards completos: uno para el establecimiento y otro para el administrador de la plataforma.

El dashboard del establecimiento muestra ventas del dia, pedidos en curso, productos mas vendidos y comparativa semanal. Todo en tiempo real, sin recargar la pagina.

El del administrador agrega datos de todos los establecimientos: volumen de pedidos, ingresos totales, tasa de conversion, repartidores activos y alertas del sistema.

Lo que aprendimos

MVVM a esta escala requiere disciplina. Con 97 ViewModels es facil que la logica de negocio se cuele en la capa de presentacion. Definimos interfaces claras desde el inicio y eso nos salvo tiempo en las iteraciones.

La sincronizacion entre apps es el punto critico. Cuando el cliente confirma un pedido, ERA tiene que actualizarse inmediatamente. El mecanismo de polling con backoff exponencial funciona mejor de lo que esperabamos para este tipo de negocio.

El hosting compartido tiene limites. A partir de cierto volumen de pedidos simultaneos, PHP en hosting compartido empieza a mostrar latencia. Tenemos en el roadmap la migracion a un VPS propio.

---

¿Quieres una plataforma de pedidos para tu negocio o tu municipio? Hablemos. Contactanos.

Te ha resultado util?

Si necesitas ayuda con tu proyecto web o app, estamos a un mensaje de distancia.

Contactar con Moicro