Aplicación Web

Montes del Acebo — APPCC

De «¿dónde está este lote?» a saberlo en segundos. Un sistema de trazabilidad que conecta cada lote desde el camión que lo entrega hasta el negocio que lo recibe: una visión del stock en tiempo real que sustituye las hojas de cálculo compartidas por información fiable y accesible.

  • Angular
  • Spring Boot
  • Java
  • PostgreSQL
  • Docker
  • Jenkins
  • OpenAPI

Hace un tiempo me contactó un cliente: una empresa de distribución de alimentación. El problema no era difícil de nombrar: mucho papeleo y demasiados sitios donde mirar. Los pedidos entraban por WhatsApp, se confirmaban por teléfono, se corregían con un SMS una hora después, y la mitad del estado del negocio vivía en la cabeza de alguien. Nadie podía decir con certeza dónde estaba nada.

El día se iba en preguntas que un sistema debería estar respondiendo. ¿Pedimos el pollo para el jueves? ¿Cuánto queda del lote del lunes? ¿A qué cliente le vendimos lo último del lote 90? ¿Ha salido ya esa entrega? Cada una era una llamada, una interrupción y unos minutos perdidos, multiplicado por todas las personas del almacén.

Una sola página, todos los campos, de golpe

Tras la primera reunión, el cliente me dio su visión del producto: una única pantalla, con todos los datos introducidos de una sola pasada —proveedor, precios, lotes, temperaturas, pesos— de arriba abajo, un solo formulario.

El boceto del propio cliente: recepción, stock, despieces y roles del personal, todo pasando por una sola hoja.

Para él, esa era la forma evidente. Para mí era un error grave, y se lo dije.

Por qué un único formulario gigante no se sostiene

Él seguía insistiendo, así que en lugar de discutir monté un prototipo desechable de esa idea exacta y se lo puse delante. La intención era hacer el problema tangible. ¿De verdad tenía sentido que la persona que recibe un palé en el muelle estuviera introduciendo precios de compra e IVA a la vez que anotaba los lotes que acababan de llegar? ¿En el mismo formulario? ¿Con los mismos permisos que la oficina?

Esa primera versión funcionaba, técnicamente. También fundía la recepción con la contabilidad, enseñaba todos los campos a todos los roles y convertía una tarea de treinta segundos en una pantalla con scroll.

El primer prototipo — un solo flujo para todo: recepción, precios, despiece, ventas e inventario, apretados en el mismo puñado de formularios sobredimensionados.

Definir lo que la app tenía que hacer de verdad

Así que seguimos hablando, y esta vez concretamos el trabajo real. No «digitalizar el papeleo», sino algo más acotado y más útil: saber cuándo llegó algo, qué se hizo con ello y a quién se vendió. Registrar la temperatura y las condiciones a la entrada y a la salida. Mantener cada fecha de caducidad pegada a su lote.

A partir de ahí, la lista de funcionalidades se escribió sola:

  • Trazabilidad completa de cualquier loteProveedor, cada despiece, cada comprador, reconstruido desde una única búsqueda.
  • Avisos de caducidadUna advertencia antes de que un lote caduque, no el descubrimiento cuando ya lo ha hecho.
  • Inventario en tiempo realStock disponible, reservado y en tránsito, actualizado según lo toca cada movimiento.
  • Albaranes automáticosGenerados a partir del propio movimiento, no reescritos en un documento aparte.
  • Entradas, salidas y despiecesLas tres operaciones que realmente cambian lo que hay en la cámara.
  • Permisos granulares por rolCada trabajador ve solo su parte de la app, que es también lo que la mantiene sencilla de usar.

Y un recorte de alcance que hizo la primera versión mucho más pequeña: sin precios. Una trabajadora ya llevaba bien la parte comercial por su cuenta, y lo único que el sistema tenía que hacer era permitirle asociar cada entrada y cada salida a un número de albarán. Todo lo relacionado con el dinero se quedó fuera.

El prototipo que lo resolvió

Con eso claro, reconstruí el prototipo alrededor del flujo real y se lo presenté. Puedes probar esa versión tú mismo en la demo en vivo. Cada pantalla responde a una de las preguntas que antes costaban una llamada.

«¿Dónde está este lote?»

Buscas un número de lote y el sistema reconstruye todo su historial: de qué proveedor vino, cada despiece por el que pasó y a qué negocios acabó llegando. Esa respuesta antes estaba repartida entre una factura, un cuaderno de despiece y una pila de albaranes. Ahora es un solo campo.

Un número de lote a la entrada, toda su genealogía a la salida: compra, cada despiece, cada venta.

«¿Llegó en condiciones?»

Cada entrega queda registrada contra su pedido de compra: temperatura a la llegada, una checklist de seguridad alimentaria, los números de lote del palé y el número de albarán. Nada entra en inventario hasta que existe ese registro, y el informe de recepción se descarga en PDF directamente desde la pantalla.

Temperatura, checklist, números de lote y albarán, capturados en el momento en que se descarga el camión.

«Se ha despiezado, ¿y ahora?»

El procesado es donde la trazabilidad suele romperse: un lote entra en una sala y sale convertido en una docena de productos. Registrar un despiece reparte el peso del lote original entre esos productos, y cada nuevo lote arrastra el historial del original. Por eso la búsqueda de la primera pantalla puede extenderse en lugar de detenerse en la puerta de la sala de despiece.

Un lote de pollo entero, dividido en alas, pechugas, muslos y huesos: cada salida sigue trazándose hasta el origen.

«¿Qué hay libre para vender?»

Peso disponible, reservado y en tránsito de cada producto, actualizado en el instante en que lo toca una compra, un despiece o una venta. Se acabó contar una cámara a mano para saber qué se puede comprometer de verdad con un cliente.

El stock como un número fiable, producto a producto, en tiempo real.

«¿Qué salió, y cómo?»

La salida refleja la entrada: temperatura, la misma checklist, fechas de caducidad por lote, un recuento de cajas y una línea de tiempo desde creado hasta preparado y entregado. Si un cliente llama por un lote seis meses después, la respuesta ya está en pantalla.

El mismo rigor a la salida que a la entrada, más una línea de tiempo completa de quién lo preparó y lo entregó.

De la primera clave de acceso a un MVP funcionando

Quería empezar a usarlo en cuanto hubiera algo que usar, así que me apoyé en una infraestructura que ya gestiono — Albgott, mi propia nube privada. Eso se saltó la fricción habitual de elegir un proveedor, comparar precios y montar un pipeline. Le di al proyecto su propia red aislada, le entregué unas credenciales, y desde el primer día pudo ver cómo se construía. En cuanto alcanzó una versión mínima viable, ya estaba trabajando sobre datos reales.

Es un sistema pequeño en escala. Pero hace lo único que una distribuidora de alimentación necesita de un software: nada se pierde, y nada tarda más en encontrarse que escribir un número de lote.