Saltar al contenido
← Trabajo
ERP

ERP de ropa deportiva

Un ERP para una empresa de ropa deportiva: de la compra al proveedor a la comisión del comercial.

  • JavaScript
  • Vite
  • Firebase
  • Chart.js

Un ERP web para una empresa que compra y vende ropa deportiva por varios canales y con comerciales a comisión. Nueve módulos —panel, inventario, compras, ventas, clientes, tesorería, comerciales, proveedores y configuración— sobre Firebase y sin framework de interfaz. Llegamos con una primera versión ya arrancada por otro desarrollador, que siguió aportando en paralelo. Lo nuestro es el rediseño completo, las comisiones, el margen neto real de cada venta, el reparto de lotes y la versión para móvil. El cliente es confidencial: las capturas son de una copia del ERP cargada con un año de datos de demostración. Los equipos son reales; la empresa, los clientes, los comerciales, las ventas y los importes, inventados.

Los nueve módulos

  • Panel
  • Inventario
  • Compras
  • Ventas
  • Clientes
  • Tesorería
  • Comerciales
  • Proveedores
  • Configuración

Cliente confidencial

El recorrido de una venta

  1. 01Compra
  2. 02Lote en inventario
  3. 03Venta con su margen
  4. 04Comisión del comercial

Lo que añadimos nosotros

  • Rediseño completo
  • Comisiones con su liquidación
  • Margen neto real
  • Reparto de lotes
  • Versión para móvil

Y además, se puede tocar

El cliente es confidencial. La demo, no.

Un panel de gestión con datos inventados: busca, filtra, abre una ficha y cámbiale el estado. Así se trabaja con lo que construimos.

Probar la demo

Lo que había y lo que añadimos

La base del recorrido ya estaba cuando llegamos: una compra daba de alta las unidades en el inventario, el buscador de ventas solo ofrecía lo que está en stock o reservado y eliminar una venta devolvía las piezas a stock. Sobre eso añadimos el estado «pendiente de entrada», para la mercancía comprada que todavía no ha llegado; la edición de ventas, que devuelve las piezas a stock y las vuelve a descontar; y el cálculo en vivo, mientras se rellena la venta, de la comisión del canal, los gastos de envío y el margen neto. Si la venta lleva comercial, genera su comisión, que se rehace o desaparece con ella. Y al salir de «reservada», los datos de la reserva se limpian solos.

Dos comisiones que no se mezclan

Hay dos comisiones distintas y el sistema las trata por separado a propósito. La del canal —la plataforma por la que se vende— sale del porcentaje guardado en ese canal y sí resta del margen de la venta. La del comercial sale de su propio porcentaje y no toca el margen: se apunta aparte, como un documento con su estado. Nace pendiente al crear la venta, se rehace si la venta se edita y desaparece si se elimina. Liquidarla no la borra: la marca como pagada, con su fecha. Dar de baja a un comercial lo saca del selector de ventas sin borrar sus ventas ni sus comisiones.

Lotes que se parten y ventas que se reparan solas

En el inventario, una fila es un lote con cantidad, no una pieza suelta. Si se reservan o venden menos unidades de las que tiene, el lote se parte en dos: el original se queda con lo que sobra y se crea uno nuevo solo con lo que se mueve, de modo que una pieza reservada y otra en stock nunca comparten fila. La venta guarda el lote exacto que tocó, junto con una copia de su procedencia y sus precios. Eso permite lo segundo: si una venta antigua apunta a un lote que ya no existe —porque se borró la compra de la que salía—, editarla o eliminarla no da error; el sistema recrea esas unidades en stock con los datos que la propia venta guardaba. Y al dar de alta una compra, dos líneas iguales se fusionan solas, salvo que el precio sea distinto: el mismo producto a otro precio es otro lote.

El móvil, los filtros y el panel

El ERP entero funciona en el móvil. Por debajo de 640 píxeles las tablas de listado se convierten en tarjetas sin una línea de JavaScript: cada celda lleva su etiqueta y el CSS la pinta delante del dato, así que los listados no tienen scroll horizontal. El inventario combina ocho filtros de selección múltiple y un buscador sobre dieciséis campos, y el desplegable de cada filtro se coloca por encima de la tabla para que no lo corte el scroll. El panel de inicio ya avisaba de poco stock y de piezas sin precio o sin foto; le añadimos el aviso de piezas paradas más de noventa días. Y el tema oscuro no es una segunda hoja de estilos sino treinta y cinco variables redefinidas, que se deciden antes de montar la interfaz.

Detalles

  • Margen neto real en cada venta

    La comisión del canal y los gastos de envío se restan al vender, y el margen se calcula en vivo mientras se rellena la venta.

  • Comisiones con su liquidación

    Cada comisión nace pendiente con su venta y se rehace si la venta cambia; liquidarla la marca como pagada, con su fecha, en vez de borrarla.

  • Lotes que se parten solos

    Reservar o vender parte de un lote crea otro con esas unidades, para que dos estados distintos nunca compartan fila.

  • Ventas antiguas que no se rompen

    Si el lote de una venta ya no existe, editarla o eliminarla recrea esas unidades en stock con los datos que la venta guardaba.

  • Listados que se hacen tarjetas en el móvil

    Por debajo de 640 píxeles cada fila de los listados es una tarjeta y cada dato lleva su etiqueta, sin JavaScript y sin scroll horizontal.

¿Tienes algo parecido entre manos?

Si necesitas algo así —una landing, una web, un ERP o una herramienta que no encuentras hecha—, cuéntanoslo y te contestamos con cómo lo haríamos, cuánto llevaría y qué costaría.

Cuéntanos tu proyecto

Correo copiado

Atajos de teclado

I
Inicio
S
Servicios
T
Trabajo
N
Nosotros
C
Contacto
E
Escribirnos
?
Esta ayuda
Esc
Cerrar