La Luna
Plataforma completa para el mayorista de frutas y verduras más importante de Maciel, Santa Fe.
Sitio web institucional + sistema de backoffice para gestión de pedidos, clientes y stock.
🌙
La Luna
Mayorista · Maciel, Santa Fe
6
Módulos admin
27
Endpoints API
7
Tablas en DB
✓
En producción
Sitio público

Sistema admin

La Luna es el mayorista de frutas y verduras más importante de Maciel, Santa Fe. Más de 15 años de trayectoria, múltiples sucursales, decenas de clientes mayoristas — y toda la operación gestionada por teléfono, WhatsApp y anotaciones en papel.
Sin presencia online, sin historial de pedidos, sin trazabilidad de pagos, sin control de stock por sucursal. Cada pedido era una conversación de WhatsApp manual sin registro. Cada mes, horas perdidas en la misma tarea.
El objetivo era claro: presencia digital que los posicione, y un sistema que les ahorre tiempo real todos los días.
Dos aplicaciones integradas
Web Institucional
- →Home con carrusel, valores de la empresa y sección mayorista
- →Página de sucursales: ubicación, horarios, contacto
- →Página mayorista con formulario de cotización
- →SEO local: meta tags, Open Graph, canonical
- →Responsive mobile-first
- →Carga rápida con React + Vite + code splitting
Backoffice Administrativo
- →Autenticación JWT con roles (Admin / Vendedor)
- →Gestión de pedidos con integración WhatsApp automática
- →Control de pagos: precio total vs. monto abonado
- →CRUD de clientes con historial y estadísticas por cliente
- →Stock por sucursal con historial de cambios auditado
- →Dashboard con gráficos de ventas y top clientes
Módulos del backoffice
/ventas
Pedidos
Listado paginado con filtros, control de pagos (precio vs. abonado), estado Pago/Impago, y generación automática de links WhatsApp con mensaje pre-formateado para cada cliente.
/clientes
Clientes
CRUD completo con soft delete. Página de detalle por cliente: total facturado acumulado, cantidad de pedidos, último pedido y historial completo.
/mercaderia
Stock por sucursal
Gestión de stock en 4 sucursales. Modos SET (cantidad exacta) y ADD (suma/resta). Historial de cambios con auditoría: quién hizo el ajuste, cuándo y cuánto.
/estadisticas
Dashboard
KPIs de ventas (total, cobrado, pendiente), gráficos de tendencia, barras mensuales y pie chart. Tabla de top clientes por volumen de compra con filtros por período.
Decisiones que importan
📱
WhatsApp integrado
Genera links wa.me con mensaje pre-formateado para cada pedido: cliente, descripción, precio formateado y dirección. Normaliza el número automáticamente desde cualquier formato.
📊
Auditoría de stock
Tabla historial que registra cada ajuste: usuario responsable, sucursal, cantidad anterior/nueva y timestamp. Trazabilidad completa sin pérdida de información.
⚡
Reportes en DB
Estadísticas calculadas con JOIN + GROUP BY en PostgreSQL. Queries de reporte por debajo de 500ms incluso con miles de pedidos, sin traer datos a memoria.
🔒
Soft delete + constraints
Clientes eliminados marcados como inactivos sin perder historial ni foreign keys. Check constraint en DB garantiza precioAbonado ≤ precio.
🗄️
Migraciones versionadas
Schema de DB con TypeORM migrations. Control de versión, reproducibilidad en cualquier entorno, rollback posible. Los cambios al schema son código.
📄
API documentada
27 endpoints REST documentados con Swagger disponible en /api/docs. Organizado en módulos por entidad. Facilita integraciones futuras.
Stack completo
Frontend
Backend
Infra