Depot OS — Cupones de Descuento
¿Qué es el Módulo de Cupones?
Es la herramienta para gestionar códigos promocionales específicos que tus clientes o cajeros introducen manualmente al momento del pago. A diferencia de las promociones generales (que se aplican solas al cumplir reglas), los cupones permiten realizar campañas dirigidas (ej. "CUMPLE50" o "VERANO20"), premiar la lealtad de clientes particulares y dar seguimiento puntual al retorno de inversión de tus esfuerzos publicitarios.
Estructura de beneficios del cupón
Al crear un cupón, puedes definir el tipo de recompensa que recibirá el cliente al canjearlo:
- Descuento Porcentual: Reduce un porcentaje directo sobre el total de la compra (ej. "20% de descuento").
- Descuento por Monto Fijo: Resta una cantidad de dinero específica al ticket (ej. "$100 pesos de descuento").
- Artículo de Regalo (Cortesía): Permite al cliente obtener un artículo específico de tu menú de forma completamente gratuita (ej. "Una rebanada de pastel gratis").
Límites de uso y control de fraude
Para evitar el abuso y resguardar la rentabilidad del negocio, los cupones cuentan con filtros restrictivos:
- Cupón de Uso Único: El código se desactiva automáticamente después de su primer canje, ideal para compensar a un cliente o enviarle un regalo de cumpleaños personalizado.
- Límite de Redenciones Máximas: Permite acotar el número total de usos permitidos a nivel global (ej. "Válido para los primeros 100 clientes"). Una vez alcanzada la meta, el código se inhabilita solo.
- Fecha de Expiración: Establece una fecha límite de validez. Transcurrido ese día, el sistema rechazará el código si se intenta ingresar en caja.
- Restricción por Sucursal: Puedes configurar si un cupón es válido en todos tus establecimientos o si se restringe a una sucursal en particular.
Canje y validación en caja (Checkout)
El proceso de redención en Depot OS es instantáneo y seguro:
- Ingreso del código: El cajero (o el cliente en su app móvil) escribe el código en el campo de cupones de la pantalla de pago.
- Validación en tiempo real: El sistema comprueba al segundo que el cupón exista, que esté activo, que cuente con usos disponibles, que no haya expirado y que aplique en la sucursal actual.
- Aplicación inmediata: Si el cupón es válido, la pantalla muestra el descuento aplicado y el total final a cobrar. Al confirmar la venta, el sistema consume el uso del cupón y lo asocia permanentemente al pedido para su posterior auditoría.
Historial de canjes y desactivación rápida
El administrador tiene control total sobre las campañas activas:
- Seguimiento de Canjes: Permite ver el listado de todos los tickets y compras donde se ha utilizado un cupón, detallando la fecha, la sucursal y el monto de descuento otorgado.
- Revocación al instante: Si detectas un mal uso de un cupón o deseas finalizar una campaña antes de tiempo, puedes revocar el código con un solo clic, inhabilitando su uso de forma inmediata en todas las cajas.
Configuración y Parámetros del Sistema
Las configuraciones asociadas al control de cupones de descuento y a las restricciones de la tienda virtual externa de cara al cliente se gestionan a nivel empresa en la base de datos.
Estructura del Modelo de Cupones (DB)
El sistema modela y audita el canje de códigos promocionales mediante dos tablas en la base de datos:
coupons(Catálogo de Cupones):code: Clave alfanumérica única guardada en mayúsculas.type(Mecánica de Beneficio):percent(porcentaje de descuento),fixed(monto fijo),free_item(artículo de cortesía gratis).value: Valor numérico del beneficio (ej.15para el 15% o precio del artículo para cortesía).articleId: Referencia al producto gratuito. Requerido para `type = 'freeitem'`._maxUses/usesCount: Límite máximo de redenciones y contador incremental de uso.status: Estado del cupón (active,usedsi llegó al límite,expiredsi superó la fecha límite,revokedinhabilitado por administrador).branchId: Restringe el uso del cupón a una sucursal específica.
coupon_redemptions(Historial de Canjes):- Registra el canje exacto de la orden. Campos:
couponId,orderId,redeemedByEmployeeId(empleado que procesó el cobro) yamountDeducted(monto final descontado).
- Registra el canje exacto de la orden. Campos:
Referencia del Esquema de Configuración (Cupones y Tienda en Línea)
| Parámetro / Key | Tipo | Valor por Defecto | Descripción y Efecto Operativo |
|---|---|---|---|
enableCoupons | boolean | false | Uso de cupones: Habilita el campo de texto en caja y checkout para validar e ingresar códigos promocionales de descuento. |
acceptingExternalOrders | boolean | true | Habilitar tienda en línea: Interruptor maestro de ventas online. Si es false, la tienda virtual rechaza cualquier pedido de forma inmediata. |
onlinePrepTimeMinutes | select | "30" | Tiempo de preparación online: Tiempo promedio prometido al cliente final en la app móvil para recoger (15, 30, 45, 60 min). |
onlineMinOrderTotal | select | "0" | Monto mínimo online: Compra mínima requerida para autorizar checkout en la tienda virtual (Sin mínimo, $100, $200). |
onlineMaxActiveOrders | select | "0" | Capacidad máxima online: Límite de pedidos simultáneos activos en línea antes de pausar la tienda (Sin límite, 5, 10, 20 pedidos). |