←Todos los casos
LogísticaPlataformaApp móvil

Una operación de última milla, construida entera

Un pedido que sale de una tienda y acaba montado en casa de alguien toca muchas manos por el camino. Construimos las tres aplicaciones que lo sostienen: el portal donde las empresas lo piden, el sistema que lo reparte y lo controla, y la app con la que el profesional lo ejecuta.

Cliente

Bajo acuerdo de confidencialidad

Duración

Nueve meses de desarrollo continuo

Rol

Producto, backend, portal y app móvil

El cliente

Un proyecto que no podemos nombrar

Este caso se publica sin marca. El cliente prefiere no aparecer y respetamos el acuerdo: no hay nombres, ni capturas, ni logotipos.

Lo que sí podemos contar es el encargo. Había que convertir un servicio que ya se prestaba —llevar un producto a casa de alguien y dejarlo montado y funcionando— en una plataforma que varias empresas pudieran usar a la vez, cada una con su catálogo, sus tiendas y sus condiciones.

El reto

Un pedido, muchas manos, ninguna trazabilidad

Entre que alguien compra un producto y ese producto queda instalado en su casa hay una cadena larga: la tienda que lo vende, la plataforma que organiza el servicio, el profesional que lo ejecuta y el cliente final que espera sin saber a qué hora.

Cada eslabón tenía su propio problema. La empresa no sabía en qué punto estaba cada pedido. El profesional recibía trabajos por teléfono, sin saber si le compensaban ni si podía encadenarlos. El cliente final no tenía forma de seguir nada.

Y por debajo, una capa que no se ve pero que decide si el negocio es viable: quién puede ejecutar qué. Instalar según qué producto exige titulaciones y seguros concretos, y quien no los tiene no debería ni ver ese trabajo.

Había que construir las tres piezas a la vez, y que encajaran.

Nuestro enfoque

Tres aplicaciones, un solo dominio

Fuimos el equipo técnico del proyecto entero: producto, backend, portal web y app móvil. Tres bases de código con un único modelo de negocio detrás.

Nadie reparte el trabajo: lo eligen los profesionales

No hay una persona asignando servicios. Cada profesional ve los que puede ejecutar y toma los que quiere. Cuando un servicio se queda sin coger, su precio sube por tramos hasta que alguien lo acepta. Lo que se le paga al profesional y lo que se factura a la empresa son dos cifras independientes: el margen es la diferencia entre ambas, no un porcentaje fijo.

La documentación decide lo que se ve

Si un trabajo exige un carné o un seguro concreto, quien no lo tiene ni lo ve ni puede aceptarlo. Eso obligó a resolver el control documental antes que la visibilidad de los servicios: nadie puede descubrir que le falta un papel al intentar aceptar un trabajo que nunca aparece en su pantalla. Los documentos se validan con un modelo de lenguaje al subirlos y se enlazan con las categorías de servicio que habilitan.

Rutas que se calculan cuando alguien va a mirarlas

La app propone rutas encadenando servicios compatibles. Optimizar una ruta cuesta dinero y tiempo, así que separamos dos operaciones: una consulta barata que solo cuenta cuántos trabajos hay cada día, y el cálculo caro de la ruta únicamente cuando el profesional toca un día concreto.

Saber dónde está cada cosa, sin perseguir a nadie

La app transmite ubicación mientras el profesional tiene trabajo por delante, y solo durante su jornada. Un servicio atrasado de días anteriores dejaba esa ventana abierta para siempre y disparaba avisos en bucle; acotarla al día operativo lo resolvió.

Fotos que no mienten sobre de dónde vienen

Las fotos de antes y después son la prueba de que el trabajo se hizo. Al mirar el proceso descubrimos que los metadatos originales de la cámara no sobreviven a la captura, y que donde sí sobreviven —la galería del teléfono— es justo por donde entraría una foto vieja de otro sitio. Así que no fingimos una trazabilidad que no teníamos: guardamos metadatos propios y honestos, distinguiendo si la foto viene de la cámara o de la galería, y marcamos las que quedan lejos del destino o son de hace demasiado. Marcamos, no bloqueamos: el aviso es para quien revisa, no un muro para quien está trabajando.

El papel que la ley exige, resuelto por el camino

El transporte profesional de mercancías obliga a emitir un documento legal, y muchos profesionales no lo emitían por desconocimiento o por fricción administrativa. La plataforma lo genera como borrador y lo integra en el momento en que el profesional marca la mercancía como cargada, dentro del flujo que ya estaba siguiendo. No en un menú aparte: donde realmente está trabajando.

Firma en destino, y una revisión humana antes de pagar

El servicio se cierra con la firma del cliente final en el móvil, y esa misma firma sirve como acuse de entrega en el documento de transporte, sin pedirla dos veces. Después, antes de que se pague nada, una persona revisa el servicio en una cola preparada para ir rápido: uno cada vez, el más antiguo primero, con las fotos y la firma en grande y los avisos automáticos a la vista.

Incidencias con la evidencia delante

Cuando algo sale mal, la incidencia llega a la bandeja de la empresa en su portal, con las fotos que subió el profesional. Las imágenes viven en almacenamiento privado y se sirven autenticadas: no son enlaces que se puedan reenviar.

La geografía del negocio, no la del BOE

Canarias tiene dos provincias, pero un profesional de una isla no puede cubrir un servicio en otra aunque compartan provincia. Filtrar por provincia habría roto el reparto. Toda la plataforma distingue entre península, donde el filtro es provincial, y Canarias, donde la isla se resuelve por coordenadas. El texto de la provincia no sirve: llega escrito de cinco maneras distintas y a veces vacío.

Stack tecnológico

LaravelPHPPostgreSQLFilamentVueTypeScriptLivewireNativePHP

El método

Nueve meses sin romper lo que ya funcionaba

Una plataforma con tres clientes distintos comiendo de la misma API se rompe en cuanto alguien cambia algo sin mirar. La defensa fue la misma desde el primer día: escribir la prueba antes que el código, en las tres bases.

Y cada decisión de negocio quedó escrita con su porqué y con las alternativas que se descartaron. Es lo que permite, meses después, cambiar el modelo de cobro o el flujo de un documento legal sin volver a discutirlo desde cero.

3

aplicaciones

sobre un mismo dominio

9

meses de desarrollo

continuo y sin parar la operación

+8000

pruebas automatizadas

entre el sistema central y la app

Resultados

Dónde quedó

  • Las tres aplicaciones se completaron: portal para empresas, sistema central con sus paneles de operación y app móvil para profesionales
  • El producto llegó a piloto real con un gran retailer, con pedidos entrando por integración automática y servicios ejecutándose de punta a punta
  • Los profesionales se auto-asignan trabajos, encadenan rutas, emiten la documentación legal del transporte y cierran con la firma del cliente final
  • El control documental con IA filtra qué puede ejecutar cada profesional antes de que el trabajo le aparezca
  • El sistema quedó listo para desplegar
  • El despliegue se detuvo por un cambio de dirección del cliente, ajeno al producto

Por qué publicamos un caso que no llegó a producción

Porque lo que se construyó funciona, y porque medir a un equipo solo por los proyectos que salen adelante deja fuera la mitad del oficio.

El producto estaba terminado y probado. La decisión de no desplegarlo fue del cliente y no tuvo que ver con la plataforma. Contarlo de otra manera sería más cómodo y menos cierto.

¿Tu operación se coordina hoy por teléfono y hojas de cálculo?

Cuéntanos cómo trabajáis y te decimos qué construiríamos.