Caso de uso en un ecommerce de un cliente.
En este proyecto hemos creado un programa para monitorizar el stock de un proveedor. Nos permitirá analizar de forma automática las variaciones en el inventario para estimar las ventas.
El cliente nos indica que acaba de abrir un ecommerce y quiere hacer un estudio de los productos más vendidos por su distribuidor.
Actualmente, su proveedor principal le facilita un stock actualizado de aproximadamente 10.000 referencias, algunas de las cuales presentan ventas con cierta estacionalidad.
Este estudio va a permitir una primera selección de 600 productos para su tienda, una acertada adquisición de stock y un mejor enfoque en la promoción online de estos artículos.
Un requisito del cliente es tener esta información en una base de datos para poder hacer diversas consultas.
Paso 1. Descarga del fichero CSV.
El proveedor permite el acceso a un fichero csv con el stock actualizado. Nuestro bot va a descargar y procesar este fichero cada día desde el servidor del cliente.
Para esta acción, el bot se ejecuta desde nuestro servidor y comprueba que el fichero se ha recibido correctamente.
Paso 2. Estimación de las ventas y las reposiciones de stock
Para cada referencia, el programa consulta si ya existe el producto en la base de datos y calcula la diferencia actual de stock respecto a la lectura anterior. Si la diferencia es positiva (reposición de stock del proveedor), queda registrada la entrada de nuevo producto.
Si la diferencia es negativa registrará las ventas del día de ese artículo.
Paso 3. Informe diario por email.
El bot envía un resumen a primera hora de la mañana con las variaciones que desea conocer el cliente.
Una vez por semana realiza otro informe con los productos que se han dado de alta en el catálogo (novedades) y los que ya no están a la venta (artículos dados de baja).
Si existe algún tipo de problema en el proceso el email indicará el error, como por ejemplo: no poder acceder al fichero csv, no coincidir el número de productos del proveedor con los que se han introducido en la base de datos, etc.