Monedero del miembro
El monedero del miembro es un sistema de saldo monetario que permite a los miembros prepagar servicios del cafe. En lugar de pagar en efectivo por cada sesion individual, un miembro puede cargar fondos en su monedero y el sistema deduce de ese saldo automaticamente mientras usa PCs, consolas o pide productos.
Arquitectura basada en creditos
El monedero usa un sistema de creditos en lugar de un saldo unico acumulado. Cada vez que se agregan fondos al monedero de un miembro, el sistema crea un nuevo credito de monedero. Cada entrada de credito es un registro individual con su propio saldo, origen, expiracion y restriccion de dispositivo. Este diseno proporciona:
- Trazabilidad completa del origen de cada unidad de saldo.
- Fechas de expiracion independientes por entrada de credito.
- Restricciones especificas por dispositivo (algunos creditos pueden ser utilizables solo en PCs, otros solo en consolas).
- Separacion clara entre fondos pagados y bonificaciones promocionales.
El saldo total del monedero del miembro es la suma de todos los valores restantes en sus entradas de credito activas.
Tipos de credito
Cada credito de monedero tiene un tipo de credito que identifica como los fondos ingresaron al sistema:
| Tipo de credito | Descripcion |
|---|---|
| Pagado | El miembro pago por estos fondos (efectivo, tarjeta u otro metodo de pago). Se crea al comprar un paquete de campana basado en dinero. |
| Bonificacion | Fondos promocionales otorgados como parte de una compra de paquete. Por ejemplo, "pague por 100 minutos y reciba 20 minutos equivalentes en credito de bonificacion". |
| Manual | Cargado manualmente por un cajero o administrador. Se usa para creditos de buena voluntad o acuerdos especiales. |
| Correccion | Un ajuste administrativo para corregir un error en el saldo del miembro. |
| Migracion | Fondos importados de un sistema anterior durante la migracion de datos. |
| Reembolso revertido | Fondos restaurados cuando un reembolso emitido previamente se revierte. |
El tipo de credito se establece cuando el credito se crea y no puede cambiarse despues. Sirve como una pista de auditoria permanente.
Estado del credito
Cada credito de monedero pasa por un ciclo de vida registrado por su estado:
- Activo: El credito tiene fondos restantes y no ha expirado. Los fondos pueden consumirse de este credito.
- Expirado: La fecha de expiracion del credito ha pasado. Los fondos restantes ya no son utilizables.
- Consumido: El saldo restante del credito ha llegado a cero a traves del consumo normal.
- Cancelado: El credito fue cancelado manualmente por un administrador, anulando cualquier saldo restante.
Consumo del monedero
Cuando se cobra al monedero de un miembro (por tiempo de sesion, un pedido u otro evento facturable), el sistema crea un registro de consumo de monedero que se vincula a una entrada de credito especifica y registra exactamente cuanto se dedujo.
Cada registro de consumo incluye un contexto que identifica que activo la deduccion:
| Contexto | Descripcion |
|---|---|
| Uso de sesion | Fondos consumidos para pagar el tiempo de uso de sesion. El sistema deduce del monedero mientras la sesion avanza. |
| Pago de monedero | Un pago directo desde el monedero (por ejemplo, cuando el miembro paga un pedido de productos usando el saldo del monedero). |
| Pedido | Fondos consumidos para pagar un pedido de productos en el mostrador del cafe o entregado al PC del miembro. |
| Reembolso | Un ajuste negativo creado cuando se procesa un reembolso, reduciendo el consumo para devolver fondos a la entrada de credito. |
Cada registro de consumo se vincula a la sesion, pedido o transaccion especifica que lo causo, permitiendo trazabilidad completa de auditoria.
Registro de saldo
Ademas de los registros de consumo a nivel de credito, el sistema mantiene un registro de saldo del miembro que registra cada evento que cambia el saldo general del monedero del miembro:
| Tipo de evento | Descripcion |
|---|---|
load |
Se agregaron fondos al monedero (nueva entrada de credito creada o una existente recargada). |
spend |
Se consumieron fondos del monedero (pago de sesion, pago de pedido). |
refund |
Se devolvieron fondos al monedero (reembolso de pedido, reembolso de sesion). |
adjustment |
Se realizo un cambio administrativo al saldo (correccion, cancelacion). |
Cada entrada del registro de saldo registra el monto del cambio y el saldo resultante, para que pueda reconstruir el saldo del miembro en cualquier punto en el tiempo leyendo el registro cronologicamente.
Restriccion de dispositivo
Cada credito de monedero tiene una restriccion de dispositivo que controla que tipos de dispositivos pueden consumir de el:
| Restriccion | Significado |
|---|---|
| Cliente | Utilizable en PCs cliente. Tambien utilizable en consolas a menos que el credito este explicitamente restringido. |
| Consola | Utilizable en consolas de juego. Tambien utilizable en PCs a menos que este explicitamente restringido. |
| Solo PCs | Utilizable exclusivamente en PCs cliente. Las sesiones de consola no pueden consumir este credito. |
| Solo consolas | Utilizable exclusivamente en consolas de juego. Las sesiones de PC no pueden consumir este credito. |
| Ambos | Utilizable en cualquier tipo de dispositivo sin restriccion. Este es el valor predeterminado. |
Cuando el sistema necesita deducir del monedero de un miembro, filtra los creditos disponibles por restriccion de dispositivo para asegurar que solo se cobren los creditos elegibles.
Categoria del monedero y gasto entre categorias
Los creditos del monedero pueden etiquetarse con una categoria de monedero (por ejemplo, "gaming" o "general"). Esto permite al cafe crear grupos de saldo aislados que solo pueden gastarse en ciertos contextos.
La opcion de gasto entre categorias en cada credito controla si sus fondos pueden usarse fuera de la categoria designada:
- Cuando esta deshabilitada (predeterminado), el credito solo puede consumirse en su propia categoria.
- Cuando esta habilitada, el credito tambien puede consumirse por transacciones en otras categorias.
Si un credito no tiene categoria de monedero asignada, se trata como un credito de proposito general y puede ser consumido por cualquier transaccion sin importar la categoria.
Como funcionan las recargas
Los fondos del monedero pueden agregarse de varias maneras:
Compra de paquete de campana: Cuando un miembro compra un paquete basado en dinero de una campana, el sistema crea automaticamente creditos de monedero basados en la definicion del paquete. Una sola compra de paquete puede crear multiples creditos (uno para la porcion pagada, otro para la porcion de bonificacion).
Carga manual: Un cajero puede agregar fondos manualmente al monedero de un miembro desde el panel de detalles del miembro. Esto crea una entrada de credito con el tipo "Manual".
Migracion: Durante la configuracion del sistema, los saldos existentes de un sistema anterior pueden importarse como entradas de credito con el tipo "Migracion".
Como se consume el monedero durante las sesiones
Cuando un miembro con saldo de monedero inicia una sesion, el sistema puede pagar automaticamente la sesion desde el monedero:
- El motor de precios de sesion calcula el costo por minuto basado en la franja de precios activa y cualquier descuento de nivel aplicable.
- A medida que la sesion avanza, el sistema deduce periodicamente el costo acumulado de los creditos de monedero elegibles del miembro.
- Los creditos se consumen en orden de fecha de expiracion (los creditos que expiran primero se usan primero) para minimizar el desperdicio por expiracion.
- Si el saldo del monedero se agota antes de que termine la sesion, el costo restante se cobra como pago en efectivo al cierre de la sesion.
- Cada deduccion crea un registro de consumo vinculado a la sesion como una entrada de "Uso de sesion".