La última unidad se ha vendido dos veces: cómo evitar la sobreventa entre tu tienda física y online

Acabas de confirmar un pedido online cuando alguien te avisa desde la tienda: esa misma pieza se ha vendido hace unos minutos en el mostrador.
El cobro es correcto. La referencia también. Hay dos Clientes esperando y una sola unidad que preparar.
Para evitar la sobreventa en tu tienda online necesitas entender qué sucede desde que un canal acepta una compra hasta que los demás conocen su efecto. Actualizar una cantidad forma parte del trabajo. Conservar el compromiso que acabas de adquirir con cada cliente es lo que da sentido a esa actualización.
¿Quién puede vender la última unidad? ¿Cuándo deja de estar disponible? ¿Qué ocurre mientras el pedido todavía no ha llegado al ERP?
Vamos a seguir una venta para localizar dónde aparece el conflicto.
1. Dos canales están ofreciendo la misma pieza
Imagina que vendes recambios y queda un disco de freno de la referencia DF-284. Es un ejemplo hipotético: las horas y los códigos nos ayudarán a seguir el recorrido.
La tienda física y el ecommerce comparten ese almacén. Ambos muestran una unidad disponible.
| Momento | Qué ocurre | Qué conoce cada canal |
|---|---|---|
| 10:00 | El ERP registra una unidad disponible | Mostrador y web pueden ofrecerla |
| 10:01 | Se confirma la venta en el mostrador | El sistema de gestión conoce el compromiso |
| 10:02 | La web acepta una compra de la misma referencia | Todavía conserva el valor anterior |
| 10:03 | Se actualiza la disponibilidad online | La web pasa a cero, pero ya ha aceptado el pedido |

La actualización puede haber funcionado exactamente como estaba prevista. Ha llegado después de que el segundo canal tomara su decisión.
Por eso conviene distinguir dos cuestiones: cuánto tarda en propagarse una venta y qué protección existe durante ese intervalo. Una frecuencia mayor puede reducir la exposición. Por sí sola, una sincronización periódica no garantiza que dos operaciones concurrentes nunca compitan por la misma unidad.
2. ¿En qué momento consideras comprometida una venta?
Un cliente añade la pieza al carrito. Otro inicia el pago. Un tercero realiza un pedido por transferencia.
¿Los tres están utilizando ya la última unidad?
La respuesta cambia según la configuración del canal y la política del negocio. Necesitas identificar qué acontecimiento genera un compromiso, cuánto dura y qué lo libera. Si cada sistema interpreta esos momentos de una manera distinta, las cifras pueden parecer razonables por separado y resultar incompatibles juntas.
La documentación de inventario de WooCommerce, por ejemplo, contempla un plazo de reserva para Pedidos pendientes de pago. Esa reserva tiene un contexto concreto; no podemos trasladar su significado a todos los estados o aplicaciones sin comprobarlo.
Para nuestro disco de freno, la política podría establecer que una venta confirmada en mostrador compromete la pieza y que un pedido online pendiente de pago la retiene durante un plazo definido. Lo siguiente es comprobar cómo se representa cada compromiso y cómo llega a los otros canales.
Una reserva que nadie libera puede ocultar mercancía vendible. Una reserva que otro sistema ignora puede permitir comprometerla dos veces.
3. El pedido está viajando, pero su efecto ya existe
Ahora cambiemos el orden: la compra llega primero al ecommerce.
La web acepta el pedido y deja de ofrecer el disco. El ERP aún muestra una unidad porque la operación está pendiente de incorporar.
Si durante ese intervalo una tarea vuelve a enviar el valor del ERP, podría devolver la pieza al escaparate online. No ha aparecido mercancía nueva; se ha vuelto a publicar un dato que todavía no recogía la venta.
Aquí necesitamos relacionar disponibilidad y pedido. Debe quedar claro cuándo el compromiso está pendiente de incorporar y cuándo ya forma parte del valor del ERP. Descontarlo en ambos momentos como si fueran ventas diferentes produciría el error contrario: reducir dos veces la disponibilidad.
En DistillSync, el punto de partida es conectar la información de la operación y las reglas que determinan el valor enviado al destino. Al revisar tu caso, interesa seguir una referencia y un pedido completos, además de comprobar la cantidad final. El módulo de Stock reúne este ámbito de integración.
Si trabajas con WooCommerce, la guía de disponibilidad, reservas y almacenes desarrolla ese recorrido para la tecnología. Aquí estamos decidiendo qué debe proteger el negocio cuando comparte mercancía entre canales.

4. Hay varias formas de gestionar la última unidad
Puedes compartir toda la disponibilidad, repartir cantidades por canal o retirar un margen de seguridad. Cada opción cambia qué puedes vender y qué necesitas coordinar.
| Criterio | Qué aporta | Qué debes comprobar |
|---|---|---|
| Disponibilidad compartida | Ofrecer mercancía al canal donde aparezca la demanda | Cómo se coordina la aceptación de operaciones simultáneas |
| Cupos por canal | Limitar cuánto puede comprometer cada uno | Cómo se reasignan unidades y se evita dejar Stock inmovilizado |
| Margen de seguridad | Reducir exposición ante retrasos o diferencias | Qué ventas puedes estar dejando de aceptar y cuándo revisar el margen |
| Validación antes de confirmar | Comprobar disponibilidad en el momento de decidir | Si los sistemas permiten también reservar o asignar, y cómo resuelven la concurrencia |

Consultar de nuevo no equivale necesariamente a conseguir una reserva. Dos compradores podrían recibir una respuesta positiva si la comprobación y la asignación no se coordinan.
Tampoco existe un margen de seguridad universal. Retirar dos unidades puede tener sentido para una referencia de alta rotación y dejar sin oferta un producto del que solo tienes una. La decisión debe considerar demanda, reposición y coste de incumplir una entrega.
5. Una cancelación también tiene que recorrer el camino
La web cancela el pedido. La pieza vuelve a aparecer disponible. Sin embargo, el ERP todavía la conserva comprometida.
Ahora el problema parece haberse invertido: el canal online y el mostrador vuelven a discrepar, esta vez al liberar mercancía.
Por eso la comprobación no termina al aceptar una venta. Incluye su cancelación, el fallo del pago y la devolución, cuando corresponda. Una devolución puede recuperar dinero y mercancía en momentos distintos; hasta recibir y revisar la pieza, quizá no deba volver a venderse.
Para una agencia que integra varios comercios, estas políticas forman parte del caso. Compartir ERP y plataforma ecommerce no significa que todos deban reservar, liberar o repartir stock de la misma forma.
6. La prueba que permite ver el conflicto
Puedes empezar con una referencia controlada, una unidad disponible y dos canales. El objetivo es observar el recorrido sin arriesgar un pedido real de un cliente.
Comprueba una venta por cada canal, una cancelación y una actualización que coincida con un pedido pendiente de incorporar. Anota la identidad de la operación, el estado de cada sistema y la disponibilidad que recibe cada destino.
La pregunta útil es: ¿puedo explicar por qué esta unidad se puede vender o por qué ha dejado de estar disponible?
Si necesitas corregir cantidades manualmente después de cada prueba, todavía falta localizar qué compromiso no está viajando o qué regla se está aplicando dos veces.

Evitar la sobreventa exige conservar el compromiso de cada canal
La última pieza concentra un problema que también aparece cuando tienes cien: varios canales toman decisiones sobre una mercancía compartida.
Evitar la sobreventa requiere definir el compromiso, conservarlo durante el recorrido del pedido y reconocer cuándo se libera. Después podrás elegir la frecuencia y las protecciones adecuadas para tu operación.
Puedes explorar cómo trabaja DistillSync con el stock de tus canales y comenzar la prueba desde el SaaS. Empieza por una referencia que conozcas bien: su recorrido te permitirá comprobar si la disponibilidad publicada representa lo que realmente puedes servir.