Códigos y perfiles
Un usuario consumidor es la persona. Lo que la máquina lee es su código. Lo que decide qué puede sacar es el perfil del código.
Código
Es el identificador físico que presenta el usuario. Tipos soportados: QR, NFC, FINGERPRINT (huella), CODE128, CODE39, PDF417, EAN13, UPCA, MAXICODE, MRZ.
Un código tiene:
- Valor (el ID que lee la máquina);
- Nivel: de operación (el valor solo existe y solo sirve ahí) o de cuenta (mismo código, saldo y cupo en todas las operaciones de la cuenta);
- hasta dos perfiles: uno vending y uno EAS. Debe conservar al menos uno;
- saldo y recarga si opera vending (ver Saldos);
- estado activo/inactivo, independiente del estado del usuario.
El nivel es del código, no del perfil: define dónde vale el código y con qué otros códigos compite por el mismo valor. Un valor no puede existir a la vez en la cuenta y en una de sus operaciones.
Perfil
Es la regla de consumo. Pertenece a una cuenta y a una línea de negocio, y no tiene nivel: dónde funciona lo define su lista de dispositivos habilitados.
Perfil vending
| Campo | Para qué |
|---|---|
| Período de recarga | Cada cuánto se acredita: diario, semanal, quincenal, mensual, trimestral, semestral, anual o fechas personalizadas. |
| Valor de recarga | Cuánto se acredita en cada período. |
| Saldo máximo | Techo del saldo subsidiado. |
| Crédito acumulable | Activo: el saldo previo se suma a la recarga. Inactivo: la reemplaza. |
| Días de consumo | Opcional. Días en que se puede dispensar. |
Perfil EAS
| Campo | Para qué |
|---|---|
| Productos | Lista de productos habilitados, cada uno con cantidad por período (o ilimitado). |
| Período | Ventana en la que aplica esa cantidad. |
| Tiempo entre entregas | Espera mínima entre dos entregas del mismo producto. |
| Días de consumo | Opcional, igual que en vending. |
Que un producto sea retornable o restrinja la entrega es un atributo del producto, no del perfil.
Dispositivos habilitados: una lista explícita
El perfil lleva la lista de dispositivos donde puede dispensar. Al crearlo, la app marca todos los de la cuenta y de esa línea, y tú desmarcas los que no apliquen; hay un atajo para marcar o desmarcar una operación entera, pero lo que se guarda son los dispositivos.
Dos consecuencias:
- Un dispositivo instalado después no entra solo. Hay que editar el perfil y marcarlo.
- Sin ningún dispositivo marcado, el perfil no dispensa en ninguna parte, aunque esté activo.
Código ↔ perfil: misma cuenta
La única regla de emparejamiento es la cuenta: el perfil debe ser de la cuenta del usuario. Si no, el servidor responde El perfil no pertenece a la cuenta del usuario. El nivel del código (cuenta u operación) no condiciona qué perfil puedes asignarle.
Cómo se autoriza una entrega
- El usuario presenta el código en un dispositivo.
- El dispositivo determina la línea de negocio; el código debe tener perfil de esa línea.
- Ese dispositivo debe estar en la lista de dispositivos habilitados del perfil.
- Si el código es de operación, el dispositivo debe ser de esa operación.
- Si hay días de consumo configurados, hoy debe estar habilitado.
- En vending: debe haber crédito suficiente para el precio. En EAS: debe quedar cupo y haber pasado el tiempo entre entregas.
- El usuario y el código deben estar activos, igual que el perfil.
Si algo falla, la entrega queda registrada en Entregas fallidas con el motivo.