Crear y Gestionar Meseros
Crea meseros con PIN, asigna mesas y gestiona su acceso a la interfaz de toma de pedidos.
💡 Antes de comenzar: Los meseros son empleados con rol "waiter" que acceden con PIN de 4 dígitos a una interfaz especial para tomar pedidos en mesas. El sistema sincroniza automáticamente entre Employee y Waiter.
Crear un Mesero
Paso a Paso
- Ve a /[slug]/admin/employees
- Haz clic en "Crear Empleado"
- Completa el formulario:
- Nombre: Nombre del mesero
- Apellido: Apellido
- DNI/ID: Documento de identidad (único)
- Email: Email único (opcional pero recomendado)
- Teléfono: Número de contacto
- PIN: 4 dígitos numéricos (ej: 1234)
- Rol: Selecciona "Waiter (Mesero)"
- Haz clic en "Guardar"
✨ Sincronización automática: Al crear un empleado con rol "waiter", el sistema automáticamente crea un registro duplicado en la tabla Waiter con el mismo ID. Esto permite gestión centralizada de empleados y funcionalidad específica de meseros.
Qué se Crea Automáticamente
Registros Creados
- Employee: Registro principal con:
- role = "waiter"
- PIN hasheado con bcrypt
- tenantId (negocio)
- isActive = true
- Waiter: Registro sincronizado con:
- Mismo _id que Employee
- Mismo PIN (hasheado)
- assignedTables = [] (vacío inicialmente)
- stats = {totalOrders: 0, totalSales: 0}
Información del Mesero
| Campo | Descripción |
|---|---|
| name, lastName | Nombre completo del mesero |
| Email único por tenant | |
| phone | Teléfono de contacto |
| pin | 4 dígitos para login (encriptado) |
| assignedTables | Mesas asignadas (se configuran después) |
| settings.commissionRate | % de comisión sobre ventas (opcional) |
| settings.color | Color de identificación (default: verde) |
Editar un Mesero
- Ve a la lista de empleados
- Encuentra al mesero (filtra por rol "waiter" si es necesario)
- Haz clic en el icono de Editar ✏️
- Modifica los campos que necesites:
- Nombre, apellido, email, teléfono
- PIN (si lo olvidó o necesita cambiarse)
- Estado activo/inactivo
- Haz clic en "Guardar Cambios"
✅ Sincronización bidireccional: Los cambios en Employee se sincronizan automáticamente al Waiter. El sistema usa updateOne() para evitar re-hashear el PIN si no cambió.
Desactivar un Mesero
Si un mesero ya no trabaja en el negocio:
- Edita el empleado
- Cambia el estado a "Inactivo"
- Guarda los cambios
Efectos:
- ❌ No podrá iniciar sesión con su PIN
- ✅ Se mantiene el historial de órdenes y turnos
- ✅ Las estadísticas se preservan
- ✅ Puede reactivarse en el futuro si vuelve
⚠️ No eliminar: Evita eliminar meseros permanentemente. Desactívalos para mantener la integridad de los datos históricos.
Resetear PIN Olvidado
Si un mesero olvidó su PIN:
- Edita el empleado/mesero
- En el campo "PIN", ingresa un nuevo PIN de 4 dígitos
- Guarda los cambios
- Comunica el nuevo PIN al mesero de forma segura
🔒 Seguridad: Los PINs están encriptados con bcrypt y es imposible recuperarlos. Solo puedes asignar un nuevo PIN.
Validaciones del Sistema
Al Crear Mesero
- DNI único: No puede haber dos empleados con el mismo DNI en el tenant
- Email único: Si se proporciona email, debe ser único en el tenant
- PIN único: El PIN no puede estar en uso por otro empleado/admin/cadete
- PIN válido: Debe ser exactamente 4 dígitos numéricos
- Rollback automático: Si falla la creación del Waiter, se elimina el Employee
Acceso del Mesero
Una vez creado, el mesero puede:
- Ir a
/[slug]/waiter/login - Ingresar su PIN de 4 dígitos
- Acceder a su panel de mesero
- Iniciar turno
- Tomar pedidos en sus mesas asignadas
- Ver estado de pedidos
- Cerrar turno al finalizar
💡 Siguiente paso: Después de crear el mesero, asigna mesas desde la sección de edición o desde el panel de gestión de mesas.
Configuraciones Opcionales
Tasa de Comisión
Puedes configurar un porcentaje de comisión sobre las ventas:
Ejemplo:
commissionRate: 5% → Si vende $10,000, gana $500 de comisión
Nota: Esta configuración está disponible en el modelo pero el cálculo automático de comisiones no está implementado actualmente.
Color de Identificación
Asigna un color único a cada mesero para identificarlo visualmente en reportes y dashboards:
- Default: Verde (#10b981)
- Útil cuando tienes múltiples meseros
- Se puede cambiar en cualquier momento
Buenas Prácticas
✅ PINs fáciles de recordar: Aunque deben ser únicos, elige PINs que el mesero pueda recordar fácilmente.
✅ Email obligatorio: Aunque es opcional, es recomendable para poder contactar al mesero y futuras funcionalidades.
✅ Asigna mesas inmediatamente: Después de crear el mesero, asígnale mesas para que pueda empezar a trabajar.
✅ Capacita sobre el PIN: Explica al mesero la importancia de no compartir su PIN y mantenerlo seguro.
Solución de Problemas
Error: "El PIN ya está en uso"
Otro empleado, administrador o cadete ya tiene ese PIN. Elige un PIN diferente. El sistema verifica contra todos los usuarios del negocio.
El mesero no aparece en la lista de empleados
Verifica que: (1) El empleado fue creado exitosamente, (2) No está filtrado por otro rol, (3) Está activo (isActive = true). Usa el buscador para encontrarlo por nombre.
Error al crear: "Rollback por fallo en Waiter"
El Employee se creó pero falló la sincronización con Waiter. Puede ser por: (1) Email duplicado en Waiter, (2) Error de conexión a base de datos. El sistema automáticamente eliminó el Employee para evitar inconsistencias. Reintenta con datos diferentes.
¿Puedo convertir un empleado existente en mesero?
Sí, simplemente edita el empleado y cambia su rol de "cashier"/"kitchen" a "waiter". El sistema sincronizará automáticamente y creará el registro de Waiter. Asegúrate de asignar mesas después del cambio.
El mesero no puede iniciar sesión con su PIN
Verifica: (1) El mesero está activo, (2) El PIN es correcto (4 dígitos), (3) El tenant está activo, (4) Está intentando acceder desde la URL correcta (/[slug]/waiter/login).
¿Te fue útil este artículo?