Gestión de inventario

Visión general

El sistema de gestión de inventario (IMS, por sus siglas en inglés) proporciona control sobre el stock de los productos que ofrece el Commerce. Pone a disposición del administrador del Commerce mecanismos para informar sobre la cantidad de unidades que entran de cada uno de los productos, permite gestionar la sustracción cuando se venden y ofrece varias formas de control de stock para así poder administrar el modo de trabajo de las provisiones de stock o de reserva.

Estos mecanismos proporcionan diferentes modos de trabajo con los pedidos cuando, por ejemplo, el stock se ha agotado temporalmente o cuando está por llegar. Gracias a ellos, el Commerce puede, en la práctica, gestionar pedidos como pendientes (backorder) o como ventas anticipadas (preorder). Además, puede implementar una estrategia de backordering (proceso de vender inventario que no tiene a disposición) cuando un producto agotado tiene una fecha de disponibilidad próxima y se anima al usuario a realizar la compra informando de esa fecha, o cuando un producto se debe pedir al proveedor o fabricar bajo pedido y se anima a hacer la compra indicando el tiempo de espera que conlleva.

Este sistema es especialmente relevante en contextos B2B, donde las cantidades compradas pueden ser elevadas y es necesario informar con todo detalle de la disponibilidad de unidades. En caso de que las unidades estén agotadas, es necesario informar de la cantidad y de las fechas de futuras entradas de stock y, de esta manera, adjudicar ese stock de manera ordenada y controlada para no vender más unidades de las esperadas y evitar situaciones similares al overbooking.

Además, el sistema provee de herramientas para gestionar automáticamente las reservas. De esta manera, el stock que va entrando a esas reservas se adjudica de forma desasistida y se pueden completar pedidos sin que sea necesaria la intervención del administrador del Commerce.

Stock

El stock es el número de unidades (existencias) que tiene un determinado producto. El sistema de gestión de inventario se encarga de su gestión, pero como los productos se ubican en almacenes (consulta Almacenes y centros logísticos), es en estos donde se informa de las existencias de cada producto y donde se realiza la extracción de unidades cuando se completa un pedido.

En general, existen dos maneras de informar sobre el stock dependiendo de si un producto tiene opciones o no. Si un producto no tiene opciones, el stock será el número de unidades de ese artículo. Si un producto tiene opciones que se deben escoger significa que el producto final que se envía tiene unas determinadas características. Por ejemplo, una camiseta es un producto, pero puede tener diferentes tallas y colores (opciones). La combinación concreta de talla y color, es decir, la combinación de los valores de las opciones, determinará el artículo correcto que se debe enviar y, por tanto, el artículo que debe tener stock. Si la camiseta tiene 3 colores (3 valores para la opción de color) y 3 tallas (3 valores para la opción de talla), el Commerce deberá proveer stock para todas las combinaciones de talla y valor (9 variantes o combinaciones en total).

También puede ocurrir que el producto tenga opciones, pero que no se combinen entre ellas, es decir, el producto final no supone un artículo diferente; o desde el punto de vista del stock, no supone tener diferente stock. Habitualmente, este tipo de opción no combinable es aquella que no cambia la naturaleza del artículo como, por ejemplo, una ampliación de garantía (los valores serían los diferentes años de ampliación) o una opción que permita seleccionar si el producto incluye o no el montaje. Para estas opciones no combinables no es necesario desglosar el stock, sino que es suficiente con asignar existencias al producto principal.

Como el sistema es flexible, se pueden dar situaciones de mala praxis; por ejemplo, un producto puede tener opciones de talla y color, pero no distinguirse los artículos finales con tallas y colores concretos. En ese caso, se proporciona stock del producto genérico sin apuntar a una combinación concreta. Esta forma de gestión es válida —el sistema la admite—, pero puede provocar problemas si se agota una combinación concreta: el sistema puede decir que hay stock porque el producto está en otras tallas y colores, pero luego no se puede servir el pedido porque contiene el producto en una combinación de talla y color que se ha agotado.

Ciclo de vida de un pedido

Un pedido tiene un ciclo de vida bien definido. El sistema de gestión de pedidos (OMS, por sus siglas en inglés) controla este ciclo y las acciones asociadas. El ciclo implica el paso por diferentes situaciones. Veamos todo esto con un poco de detalle desde el punto de vista del stock.

Cesta de la compra

La cesta de la compra simboliza un pedido que está en proceso. Cuando se le añade un producto, el sistema evalúa si hay suficiente stock. En un proceso sin intervención de reservas, si hay stock, este se añade; si no hay suficiente stock, el sistema devuelve un mensaje de error. El stock que el sistema lee es el que el producto tiene en ese momento, teniendo en cuenta que, cuando se añade un producto a la cesta, no se resta ni se reserva stock. La sustracción del stock, es decir, el proceso que va restando unidades al stock de los almacenes — recordemos que los almacenes contienen el stock de los productos — según la cantidad que figura como comprada de cada uno de los productos en un pedido, se realiza más adelante.

No obstante, cuando se solicita añadir un producto a la cesta en una cierta cantidad, el sistema hace una simulación de sustracción del stock para comprobar si es posible o no añadir el producto en la cantidad solicitada. Si hay suficiente stock, el sistema añade el producto con la cantidad solicitada. Si no hay suficiente stock, el sistema devuelve un mensaje de error. Si no hay stock, pero el producto admite reservas (como veremos más adelante), el sistema devuelve un mensaje indicando que se ha podido añadir el producto pero que, al no haber suficiente stock, algunas unidades se han quedado en reserva. Si a través de la simulación el sistema comprueba que para satisfacer la cantidad demandada es necesario extraer unidades que están en forma de provisión, devuelve un mensaje indicando que se puede añadir el producto, pero que habrá una fecha de entrega con demora. Esto se verá más adelante con detalle.

Por tanto, puede ocurrir lo siguiente: un usuario A añade un producto a la cesta de la compra sin problemas porque en el momento de hacerlo hay stock. Paralelamente, ese stock se sustrae a causa de otro pedido que ha finalizado un usuario B; cuando el usuario A quiere finalizar su pedido, el sistema le devuelve un mensaje de error y no puede comprar. Esto puede parecer un problema, pero hacerlo así evita otros inconvenientes mayores. Por ejemplo, supongamos que el sistema va restando stock cada vez que se añaden productos a la cesta de la compra. El usuario A añade un producto y provoca que este se agote. Un usuario B quiere comprar ese mismo producto, pero como ve que no hay existencias, se va a la competencia. En realidad, el usuario A no tenía intención de comprar en ese momento (quizá lo haga otro día). Resultado: el Commerce pierde una venta porque B ha comprado en otro lugar, el stock de ese producto se queda “en suspenso” hasta que A decide si termina o no la compra; si A vacía la cesta y se devuelve el stock, a lo mejor el Commerce ya lo ha repuesto y habrá hecho un gasto que quizá era innecesario, etc.

Para evitar esto, existe un sistema que bloquea el stock en la cesta durante unos minutos. No obstante, solo se recomienda cuando el volumen de ventas es muy alto, por ejemplo, en determinadas campañas donde se prevea una cantidad de ventas por minuto elevada.

Si el Commerce está implementando estrategias de backordering para alguno de sus productos, el usuario verá que esos productos se pueden comprar en reserva, así como la fecha en la que se servirán. Esto significa que, aunque no hay stock en el momento de realizar la compra, habrá disponibilidad en un futuro no muy lejano; el usuario puede finalizar la compra para asegurarse de que se le servirá el producto, aunque sea más tarde.

Los motivos para aplicar una estrategia de backordering pueden ser varios:

  • El Commerce tiene productos con disponibilidad limitada en cantidad y en tiempo, es decir, recibe unidades limitadas cada cierto tiempo. Si los usuarios piden los productos y el stock se agota, es posible que el Commerce necesite anunciar que dispondrá de stock (incluso puede anunciar la cantidad) en una fecha cercana para que los usuarios puedan comprar bajo reserva y asegurarse de que tendrán el producto. A estos pedidos se les suele llamar “pedidos pendientes” o “backorders”.
    Bajo esta modalidad también se pueden incluir otros casos parecidos; por ejemplo, un Commerce puede activar la compra bajo reserva siempre o solo de algunos productos sin especificar una fecha concreta porque garantiza que siempre va a haber disponibilidad y, cuando se agoten las existencias, se repondrán al cabo de poco tiempo.

  • El Commerce ofrece productos que todavía no han salido a la venta y de los que todavía no tiene stock físicamente. Es posible que necesite anunciar que en una fecha futura el producto estará a la venta con unidades limitadas, y que los usuarios pueden hacer una compra anticipada para asegurarse de que tendrán el producto. A estos pedidos con productos en reserva se les suele llamar “compra anticipada” o “preorder”.

  • El Commerce ofrece productos que tienen disponibilidad bajo demanda, bien porque se tienen que fabricar, bien porque se piden al proveedor cuando se realiza el pedido. Aunque estos pedidos no se consideran estrictamente “bajo reserva” (el sistema no los considera así), el usuario verá una fecha que indica que el producto se servirá con cierta demora. Por eso, hay quien considera, al menos de manera logística, que estos pedidos son bajo reserva.

Más adelante, se verán las configuraciones que se deben realizar para dar cobertura a todas estas estrategias. El resultado es que el usuario tiene constancia de que el producto no está disponible (por uno u otro motivo) y lo compra bajo reserva.

Finalización de la compra

El proceso de compra continúa con la elección del tipo de entrega que, en caso de ser envío a domicilio, implica la selección del transporte de la expedición o expediciones que tenga la entrega, y con la elección del método de pago. Con estas acciones se define finalmente el importe del pedido y se puede finalizar. Este proceso de finalizar pedido convierte la cesta de la compra en un pedido. Sin embargo, como el pedido todavía no está pagado, el sistema no realiza la sustracción del stock; de esta manera, se evitan situaciones con la cesta de la compra como las descritas anteriormente (pedidos que se deniegan o que no se acaban pagando).

Estados de pedido

Por definición, un pedido finalizado es un pedido pendiente de confirmación por parte de la pasarela de pago. Esto se define así porque hasta que no se tenga constancia del pago, el sistema tiene que considerar que el pedido está pendiente de pago. Esta situación puede durar unos minutos (el tiempo que se tarda en tramitar el pago y que la correspondiente pasarela responda) o puede durar más si se produce algún problema en la pasarela.

En realidad, los pedidos pendientes de confirmación por parte de la pasarela de pago tienen asignado el estado de pedido “Pend. pasarela de pago”. Los estados de pedido reflejan las situaciones en las que se encuentra el pedido. El sistema tiene algunos estados reservados para propósitos específicos, pero el administrador del Commerce puede crear los que necesite. Existen varios estados de pedido, pero estos son los que pueden tener más relación con el stock:

  • Pend. pasarela de pago

  • Denegados

  • Entrantes

  • Suprimidos

Pend. pasarela de pago

Los pedidos en Pend. pasarela de pago son aquellos que se han finalizado, pero están pendientes de pago. Una manera alternativa de definirlos es decir que son pedidos finalizados cuyo método de pago es una pasarela de pago online (con conexión). Una pasarela de pago online es un servicio que ofrecen algunas empresas y bancos para gestionar el envío y recibo de pagos en Internet. La ventaja de estos métodos es que el Commerce obtiene una respuesta casi inmediata por parte de la pasarela, la cual le notifica si acepta o deniega la transacción. Si la acepta, indica al Commerce que el pedido está pagado; si la deniega, significa que el proveedor de la pasarela ha encontrado algún problema que le impide validar la transacción.

Aunque no es frecuente, puede ocurrir que se realice un pago mediante pasarela online correctamente, pero, por el motivo que sea (fallo de comunicación, tiempo de respuesta muy largo, etc.), el resultado no se notifique al Commerce. También es posible que el usuario haya interrumpido el pago voluntariamente, lo que evita que la pasarela pueda enviar alguna notificación (esta situación es más frecuente). La consecuencia de todo esto es que el sistema no sabe si el pedido está pagado o no, por lo que no puede moverlo del estado Pend. pasarela de pago. Es muy recomendable que el administrador del Commerce revise esos pedidos para identificar posibles problemas y, sobre todo, gestionar los que sean correctos.

Como ya se ha comentado, el sistema no puede sustraer stock para estos pedidos porque no tiene constancia del pago.

Denegados

Los pedidos en Denegados son aquellos que el proveedor de la pasarela de pago ha denegado explícitamente. Al estar agrupados bajo un estado, el administrador puede gestionarlos de la manera que considere oportuna. Por definición, estos pedidos no son válidos y, lógicamente, el sistema no sustrae el stock indicado en ellos.

Entrantes

Cuando la pasarela de pago notifica al Commerce que se ha aceptado el pago, el sistema cambia el estado del pedido para indicar que ya se puede procesar. El estado que lo indica es Entrantes. Una vez que el pedido se encuentra en ese estado, se desencadenan las acciones que el administrador haya programado (este proceso lo puede activar cualquier estado). Hay una acción que se ejecuta de manera automática, sin necesidad de ninguna configuración: la sustracción de stock. Cuando el pedido se encuentra en el estado Entrantes, el sistema tiene confirmación del pago, y ya puede restar stock. El único estado en el cual se puede sustraer stock es Entrantes, y es importante tenerlo en cuenta. La razón es la que ya se ha mencionado: es el único estado que garantiza que el pedido está totalmente finalizado y pagado.

Los pedidos con método de pago offline (sin conexión) son aquellos en los que el pago se produce después. Estos pedidos pasan por el estado Pend. pasarela de pago muy brevemente y, acto seguido, pasan al estado Entrantes. Esto es así porque, aunque el pago no está realizado, no se puede considerar no pagado y se deben tratar igual que los pagos online con confirmación de pago. Por lo tanto, en la práctica, se puede considerar que los pagos offline pasan a Entrantes siempre.

Cuando el sistema sustrae el stock para un pedido que está en Entrantes (esto se verá con detalle más adelante) se pueden dar dos situaciones: que exista suficiente stock de todos los productos del pedido o que no haya suficientes unidades para servir parte o todo el pedido. El primer caso es una situación normal; el segundo se puede dar por dos razones:

  • El usuario ha comprado el producto en reserva.

  • El usuario compra el producto de forma normal, pero cuando el sistema intenta sustraer el stock, comprueba que no hay suficiente. Esto pasa cuando quedan pocas unidades, por ejemplo, solo una. En el momento de hacer la compra hay existencias, pero de manera paralela otro usuario compra el mismo producto unos segundos antes. Mientras este segundo usuario paga, el primero ve que todavía hay stock y finaliza la compra. Cuando el segundo usuario confirma el pago, se resta la unidad, de tal manera que cuando el primero acaba el pago un instante después, el sistema detecta que ya no queda stock. Este caso es bastante inusual y solo se da en Commerces con altos volúmenes de venta por minuto. Aunque sea una situación poco frecuente, puede ocurrir y, por lo tanto, es necesario mencionarla.

En ambos casos, el pedido debe marcarse de manera especial para indicar que no hay suficiente stock y evitar que, por ejemplo, se notifique que se ha hecho el envío antes de que se pueda preparar y enviar. El sistema lo marca como pedido con productos en reserva, es decir, falta stock de todos los productos solicitados, de algunos de ellos o de parte de la cantidad solicitada.

Las expediciones de los pedidos que tengan productos afectados por reservas no pueden procesarse hasta que el sistema compruebe que se puede suministrar la totalidad de los productos y las cantidades. Si el Commerce tiene habilitada la multiexpedición (ver Sistema multiexpedición), la entrega se dividirá en diferentes expediciones a causa de las fechas de entrega derivadas de las reservas (en caso de que las reservas sean de ese tipo, como veremos más adelante). Por tanto, es de esperar que haya expediciones con productos en reserva. Si el Commerce no tiene habilitada la multiexpedición, significa que habrá una única expedición que, por lo explicado antes, no podrá procesarse hasta que el sistema logre sustraer todo el stock solicitado, es decir, no podrá procesarse hasta que se reponga el stock que falte.

Si la expedición no se puede procesar significa que no se puede cambiar su estado, por lo que permanecerá en pendiente hasta que el sistema compruebe que hay stock para poderla enviar. Las expediciones tienen también sus estados reservados, de manera similar a los pedidos.

Suprimidos

Los pedidos se pueden eliminar. Con este proceso, al pedido se le asigna un estado especial llamado Suprimidos” y se devuelve el stock que se haya sustraído previamente.

Configuración

El sistema de gestión de inventario tiene dos grandes bloques: por un lado, la gestión del stock y, por otro, la gestión de las reservas.

Gestión de stock

De una manera general, la gestión del stock se puede activar o desactivar. Si está desactivada, el Commerce no sustrae stock, aunque se haya asignado a algún producto (se ignora). Esta característica se puede personalizar a nivel de producto, por lo que la gestión de stock se puede desactivar en productos concretos; esto resulta útil cuando los productos no tienen stock (por ejemplo, servicios) y no es necesario sumar o restar stock.

En ocasiones, puede ser necesario mostrar la disponibilidad del producto en la capa de presentación; se puede mostrar en formato cifra (número de unidades) o en formato texto (descripción de la disponibilidad). En caso de que se utilice texto, hay que definirlo en función de unos intervalos. Un ejemplo de definición de disponibilidad podría ser: si hay más de 10 unidades disponibles, el sistema deberá mostrar En stock; si hay entre 5 y 10, deberá mostrar Pocas unidades; y si hay entre 1 y 4, deberá mostrar Últimas unidades. Como se pueden crear tantas definiciones de disponibilidad como sea necesario, se puede vincular a cada producto cuál es la que tiene que usar, pero para no tener que hacerlo explícitamente, se puede definir una disponibilidad predeterminada de forma general.

Es posible que un Commerce quiera ocultar en la capa de presentación los productos que se quedan sin stock porque son artículos que no puede vender. Por eso, existe la característica Mostrar productos sin stock; cuando está activada, se muestran todos los productos; si está desactivada, el producto será visible mientras tenga stock, pero, una vez agotado, se ocultará.

Además de la gestión de stock y la disponibilidad, que se pueden personalizar, a nivel de producto se puede activar la característica Bajo demanda. Esta característica requiere de otra complementaria, Tiempo necesario para la demanda, que indica cuántos días se necesitan para preparar el producto. El concepto de productos bajo demanda engloba aquellos productos que se deben fabricar o que se deben pedir al proveedor, según sea necesario.

Si un usuario compra un producto que tiene la característica Bajo demanda activada, pueden pasar dos cosas: que haya stock y la compra sea normal (los productos bajo demanda pueden tener stock) o que no haya stock suficiente para cubrir la demanda. En este caso, el sistema devolverá los días de espera que tiene configurados, que se podrán mostrar al usuario para informarle de la situación.

Los productos bajo demanda tienen una necesidad específica: se deben poder vender de manera normal, independientemente de si hay stock o no. Los pedidos que contienen productos bajo demanda finalizan de la manera habitual, pero el sistema, de manera análoga a los productos bajo reserva, necesita marcarlos de alguna manera para que se puedan identificar y evitar que, por ejemplo, se notifique el envío antes de que esté disponible. En este caso, el sistema marca estos pedidos como pedido con productos bajo demanda”. A diferencia de los pedidos con productos en reserva, las expediciones de los pedidos que tengan productos bajo demanda se pueden procesar porque no necesitan que se reponga el stock que falta. El stock de estos productos es opcional, es decir: si hay stock, se sustrae; si no hay, se ignora.

Gracias a la marca especial mediante la que se distinguen los pedidos con productos bajo demanda, el administrador del Commerce podrá filtrarlos cómodamente en el BackOffice, identificar los productos en cuestión y saber cuántas unidades necesita mandar fabricar o pedir para poder satisfacer la demanda. Por su especial naturaleza, no es posible automatizar la gestión de estos pedidos, por lo que tendrán que atenderse con acciones concretas por parte del administrador: deberá pedir o mandar fabricar lo que falte y, una vez que lo reciba, tendrá que procesar el pedido de forma manual.

Gestión de reservas

Implementar una estrategia de backordering, entendida como el proceso de vender inventario que el Commerce no tiene disponible, requiere herramientas que permitan gestionar este tipo de ventas. La gestión de reservas permite al sistema trabajar con productos en reserva, es decir, con productos que no tienen stock y, además, facilita la configuración de estos.

Si la gestión de reservas está activada, el Commerce tendrá habilitada la modalidad de compra bajo reserva de sus productos. Dado que la gestión de reservas se puede personalizar a nivel de producto, es posible desactivarla en determinados productos. Cabe mencionar que, en caso de que se habiliten las reservas, es necesario poder mostrar también los productos que se hayan quedado sin stock. De lo contrario, los usuarios no los podrán comprar porque no los verán.

Por su naturaleza, los pedidos con productos en reserva necesitan una atención especial: dado que algunos de sus productos no tienen stock, es necesario identificar y controlar cuáles son esos pedidos, cuáles son los productos que no tienen stock y cuántas unidades faltan. La gestión de reservas se encarga de facilitar todos estos cometidos. Para empezar, los pedidos con productos en reserva se marcan de forma especial, por lo que los administradores del Commerce pueden filtrarlos cómodamente en el BackOffice.

Estos pedidos necesitan stock para que se puedan procesar, por lo que, una vez que se haya añadido stock, hay que indicarle al sistema que revise los pedidos con productos en reserva para saber si ya se pueden procesar o si todavía faltan unidades. Esta revisión, que consiste en hacer una simulación de sustracción del stock y ver si hay o no suficiente stock como para servir el pedido, se puede llevar a cabo de 3 formas:

  • De manera manual para un solo pedido: el administrador del Commerce indica que se revise el stock de un pedido en concreto. Si con la revisión se concluye que el pedido se puede servir, se hará la sustracción de stock real, el pedido dejará de estar marcado como “pedido con productos en reserva” y podrá continuar su proceso. En caso contrario, si todavía falta alguna unidad, seguirá marcado como “pedido con productos en reserva”.

  • De manera manual para un grupo de pedidos: el administrador del Commerce indica que se revise un conjunto de pedidos seleccionados previamente. Igual que antes, si la revisión concluye que hay pedidos que se pueden servir, se sustraerá el stock correspondiente y estos pedidos dejarán de estar marcados como “pedidos con productos en reserva”. El resto seguirán con la marca que tenían.

  • De manera automática: el sistema realiza la revisión en segundo plano de forma programada y desasistida de todos los pedidos que detecte que están marcados como “pedidos con productos en reserva”. Esta herramienta se activa o se desactiva desde la configuración de reservas.

Este proceso de revisión (manual o automático) tiene dos modos de funcionamiento:

  • Sustraer stock solo si el pedido está completo: este modo revisa si el pedido está completo, es decir, si se pueden servir todas las unidades reservadas que tiene con el stock que hay en el momento de hacer la revisión. En caso afirmativo, se sustrae el stock y el pedido deja de estar marcado como “pedido con productos en reserva”. En caso negativo, el pedido sigue con la marca que tenía. Este modo es igual que la manera manual para un grupo de pedidos, con la diferencia de que lo realiza el sistema.

  • Consumir stock gradualmente: este modo revisa si el pedido está completo. Si lo está, actúa como el modo anterior. Si no lo está, resta solo las unidades que puede y deja las demás en reserva (ver Sustracción del stock).

Por ejemplo, supongamos que un pedido contiene 3 productos; P1, P2 y P3. Dos de ellos, P1 y P2, no tienen problemas de stock, pero P3 es un producto en reserva. Se han comprado 10 unidades de P3. El Commerce ha repuesto stock y ha añadido 7 unidades de P3. Si se usa el primer modo, el sistema evalúa si hay suficiente stock. Al comprobar que faltan unidades de P3 (solo hay 7, pero se necesitan 10), no hace nada y deja a P3 con 10 unidades en reserva. Si se usa el segundo modo, el sistema sustrae todo el stock que puede; en este caso, 7 unidades. Por tanto, el sistema deja a P3 con 3 unidades (10 - 7) en reserva.

El proceso de revisión manual para varios pedidos o el automático, en el que también se revisan más de uno, necesita saber en qué orden se comprueban, teniendo en cuenta que el stock se va asignando a los pedidos que se revisan primero. El criterio de ordenación es la fecha de realización del pedido y se puede configurar para que los pedidos se ordenen de manera ascendente (los pedidos más antiguos primero) o descendente (los pedidos más nuevos primero).

Tipos de stock

Estrictamente hablando, solo existe un tipo de stock, que son las existencias de un determinado producto. Pero, desde el punto de vista logístico, de la manera en que se trata ese stock, se puede clasificar en 3 tipos:

  • Stock normal : es el stock que entra en un almacén de manera normal. El Commerce lo tiene físicamente en una estantería del almacén, por lo tanto, puede servirlo de manera inmediata.

  • Provisión de stock : es el stock que todavía no ha entrado, pero tiene una fecha de entrada y unas unidades concretas, es decir, se sabe el día que llegarán y en qué cantidad. Es aquel stock que el Commerce todavía no tiene físicamente, pero sabe que en una fecha concreta va a disponer de él y, a efectos prácticos, es como si lo tuviera. Las provisiones de stock se consideran stock formalmente, con la diferencia de que, en lugar de poderse servir de manera inmediata (como el stock normal), se sirve con demora (en la fecha de entrada que tenga configurada).
    Mientras haya stock en la provisión, se podrán vender unidades. Una vez que la fecha venza, la provisión deja de estar vigente. Por tanto, las provisiones de stock permiten vender unidades hasta que se agote su stock o hasta que venza la fecha.

  • Provisión de reserva : es el stock que se utiliza cuando hay una estrategia de backordering. Se trata destock en reserva que todavía no ha entrado, pero que se estima que entrará en una fecha y en una cierta cantidad. El stock de las provisiones de reserva establece el número de unidades que se permiten reservar. Es importante resaltar que el stock, aunque es en reserva, tiene una fecha de entrada. Esta fecha permite abordar estrategias tanto de compras anticipadas ( preorder ), como de pedidos pendientes ( backorder ). Los motivos de esas reservas son ligeramente distintos, pero en la práctica, es la reserva de unas ciertas unidades que tienen una fecha de entrada futura.
    Mientras haya stock en la provisión, se podrán reservar unidades. Una vez que la fecha venza, la provisión deja de estar vigente. Por tanto, las provisiones de reserva permiten reservar unidades hasta que se agote su stock o hasta que venza la fecha.
    Otro detalle importante es que, por su naturaleza de reserva, el sistema no puede considerar las provisiones de reserva como stock fiable que va a entrar con seguridad y en la fecha configurada (a diferencia de las provisiones de stock, que no se consideran unidades en reserva). En muchos casos, las provisiones de reserva entran en la fecha indicada y con las unidades especificadas, y así debería ser si el Commerce quiere dar fechas de entrega fiables. No obstante, el sistema considera que las unidades y la fecha son aproximadas.

Tanto la provisión de stock como la provisión de reserva es stock que el Commerce todavía no tiene, pero el propósito de estos stocks es distinto. En el caso de la provisión de stock, el Commerce considera que es stock normal que todavía no ha entrado; o, dicho de otra manera, es stock que, en lugar de servirse inmediatamente, se servirá en una fecha futura. Por eso el sistema no considera a los pedidos con productos que extraen su stock de las provisiones de stock como pedidos con productos en reserva, sino que los considera pedidos absolutamente normales.

En cambio, en el caso de la provisión de reserva, el Commerce considera que es stock que todavía no ha entrado, pero lo interpreta como el número de unidades que se pueden reservar de ese producto, ya sea para evitar que se vendan más de las que se espera recibir o para limitar el número de reservas que se puedan hacer de un producto. Es necesario marcar que esos productos reservados y las unidades de la provisión están en reserva; de esta manera, se podrán identificar y gestionar de forma específica junto al resto de los pedidos con productos en reserva.

Por lo tanto, en términos de gestión, existen dos tipos de reservas : las reservas que tienen fecha (provisión de reserva), y las reservas que indican que el producto se puede vender como producto en reserva (ahora no hay stock, pero lo habrá más adelante), pero no tienen una fecha de entrada concreta. Este matiz se debe configurar a nivel de producto mediante los siguientes modos:

  • Deshabilitado : el producto no admite reservas de ningún tipo. Cuando se agota el stock, el producto no se puede vender (el sistema no permite añadirlo a la cesta de la compra).

  • Con provisión de reserva : una vez que se agota el stock normal, las unidades del producto se pueden vender como unidades en reserva, pero como máximo solo se podrá reservar la cantidad que se haya introducido en la provisión. Una vez que se hayan reservado todas las unidades de la provisión, el producto no se podrá vender (el sistema no permite añadirlo a la cesta de la compra).

  • Sin provisión de reserva : una vez que se agota el stock normal, las unidades del producto se pueden vender como unidades en reserva sin ningún límite de cantidad. Los productos que admiten el modo Sin provisión de reserva son aquellos que el Commerce quiere que se vendan como reserva, sin restricción de unidades y sin imponer una fecha de entrada. El Commerce tiene el compromiso de reponer ese stock porque sabe que va a tener más, pero no quiere o no puede decir cuándo llegará ni en qué cantidad.

  • Ambos, con y sin provisión : una vez que se agota el stock normal, las unidades del producto se pueden vender como unidades en reserva y solo en la cantidad que se haya introducido en la provisión. Una vez que se hayan reservado todas las unidades de la provisión, las unidades del producto se pueden vender como unidades en reserva sin ningún límite. Es decir, el sistema primero usa las provisiones de reserva (las reservas que el Commerce tiene controladas en número y fecha de llegada) y luego, una vez agotadas, permite que el producto se venda sin límite como unidades reservadas y sin una fecha concreta. En este caso, una vez agotada la reserva que el Commerce tiene controlada, este tiene el compromiso de reponer el stock del resto de las unidades porque sabe que va a tener más, pero no quiere o no puede decir cuándo llegará, ni en qué cantidad.

Tanto la provisión de stock como la provisión de reserva marcan una fecha futura, es decir, el producto no se puede servir en el momento, sino que hay que esperar a que llegue. Este hecho hace que, un pedido con un producto con una provisión (del tipo que sea), tenga una demora en la entrega. El sistema informa de esta fecha de entrega y, por eso, es muy recomendable mostrarla en la capa de presentación: así el usuario sabe cuánto tiempo se va a retrasar (o cuándo se va a poner a la venta el producto, en caso de una venta anticipada).

Esta fecha de entrega con demora es uno de los motivos de división de las expediciones (consulta Sistema multiexpedición). En caso de tener habilitada la multiexpedición, el pedido se dividirá en tantas expediciones como fechas de entrega tenga (establecidas, en este caso, por las diferentes fechas de las provisiones). Si el Commerce no tiene habilitada la multiexpedición, el pedido solo tendrá una expedición, la fecha de entrega de la cual será la más alejada a la fecha actual de entre todas las fechas de provisiones involucradas.

Como las provisiones de stock y de reserva esperan stock en determinadas fechas, el IMS provee de un mecanismo automatizado en segundo plano que comprueba regularmente estos tipos de stock. Ejecuta los siguientes procesos:

  • Si hay provisiones de stock que no estén a 0(es decir, hay provisiones que todavía tienen stock sin consumir)con fecha vencida (es decir, la fecha de la provisión es anterior a la fecha en que se hace esta comprobación) el stock de esas provisiones pasa a ser stock normal. Por tanto, el sistema considera que el stock de la provisión ya ha llegado y, por eso, lo convierte en stock normal.
    Si hay provisiones de stock a 0 con fecha vencida, se hace limpieza y se eliminan.

  • A diferencia de las provisiones de stock, las provisiones de reserva, por su naturaleza de reserva, no se pueden considerar stock fiable que va a entrar. Por tanto, todas las provisiones de reserva con fecha vencida se eliminan. Como el sistema no puede usar las provisiones de reserva que no se han consumido (aún no están a 0) y tienen fecha vencida, y tampoco puede considerarlas stock que ha llegado, interpreta que debe hacer limpieza y eliminarlas.

Alta del stock

El proceso de alta del stock define qué almacenes son los que contienen el stock de un determinado producto, es decir, el stock apunta de manera directa a un almacén. Posteriormente, solo se podrá sustraer stock de las líneas que se den de alta. Si, posteriormente, se crean más almacenes, se pueden añadir nuevas líneas de stock que apunten a esos almacenes.

Antes hemos visto que se da información del stock dependiendo de si un producto tiene opciones o no. Veamos unos ejemplos.

Si un producto tiene opciones combinables, el stock se llena en el nivel de combinación de valores de opción. Por ejemplo, el Producto1 con opciones de talla y color, y combinación de talla (S, M, XL ) y color (Blanco, Negro), llenaría el stock para cada combinación, que serán:

  • Producto1 - S - Blanco

  • Producto1 - S - Negro

  • Producto1 - M - Blanco

  • Producto1 - M - Negro

  • Producto1 - XL - Blanco

  • Producto1 - XL - Negro

Si no tiene opciones o no las tiene combinables, el stock se llena en el nivel de producto, por ejemplo:

  • Producto1

En cada una de estas líneas se puede añadir stock del almacén que se necesite. Por ejemplo, si el Producto1 tiene stocks en dos almacenes, A1 y A2, se pueden crear los siguientes registros:

  • A1 - Producto1 - S - Blanco: 10 unidades

  • A1 - Producto1 - S - Negro: 8 unidades

  • A1 - Producto1 - M - Blanco: 15 unidades

  • A1 - Producto1 - M - Negro: 7 unidades

  • A1 - Producto1 - XL - Blanco: 4 unidades

  • A1 - Producto1 - XL - Negro: 10 unidades

  • A2 - Producto1 - S - Blanco: 10 unidades

  • A2 - Producto1 - S - Negro: 10 unidades

  • A2 - Producto1 - M - Blanco: 12 unidades

  • A2 - Producto1 - M - Negro: 16 unidades

  • A2 - Producto1 - XL - Blanco: 3 unidades

  • A2 - Producto1 - XL - Negro: 0 unidades

Si para un producto se crean nuevos valores de esas combinaciones, se podrán crear líneas de stock. Sin embargo, si se crean nuevas opciones que son combinables, como cada línea de stock debe ser para una combinación completa, habrá que eliminar todas las líneas de stock existentes y darlas de alta de nuevo incluyendo las combinaciones de esas opciones nuevas.

Si Producto1 no tuviera opciones combinables, se podrían crear estos registros:

  • A1 - Producto1: 10 unidades

  • A2 - Producto1: 5 unidades

Como, además, se tiene que poder informar de las provisiones de stock y provisiones de reserva, para cada una de estas líneas se puede informar de esas provisiones. Veamos un caso complejo en que el Commerce trabaja con ambos tipos de provisiones (si solo trabaja con uno de ellos, solo se necesitaría una de las líneas):

  • A1 - Producto1 - S - Blanco: 10 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha dd-mm-aaaa: 7 unidades

    • Provisión de reserva para A1 - Producto1 - S - Blanco para la fecha dd-mm-aaaa: 5 unidades

  • A1 - Producto1 - S - Negro: 8 unidades

    • Provisión de stock para A1 - Producto1 - S - Negro para la fecha dd-mm-aaaa: 3 unidades

    • Provisión de reserva para A1 - Producto1 - S - Negro para la fecha dd-mm-aaaa: 3 unidades

  • A1 - Producto1 - M - Blanco: 15 unidades

    • Provisión de reserva para A1 - Producto1 - M - Blanco para la fecha dd-mm-aaaa: 3 unidades

  • A1 - Producto1 - M - Negro: 7 unidades

    • Provisión de stock para A1 - Producto1 - M - Negro para la fecha dd-mm-aaaa: 2 unidades

    • Provisión de reserva para A1 - Producto1 - M - Negro para la fecha dd-mm-aaaa: 3 unidades

  • A1 - Producto1 - XL - Blanco: 4 unidades

    • Provisión de stock para A1 - Producto1 - XL - Blanco para la fecha dd-mm-aaaa: 4 unidades

    • Provisión de reserva para A1 - Producto1 - XL - Blanco para la fecha dd-mm-aaaa: 4 unidades

  • A1 - Producto1 - XL - Negro: 10 unidades

    • Provisión de stock para A1 - Producto1 - XL - Negro para la fecha dd-mm-aaaa: 2 unidades

    • Provisión de reserva para A1 - Producto1 - XL - Negro para la fecha dd-mm-aaaa: 2 unidades

  • A2 - Producto1 - S - Blanco: 10 unidades

    • Provisión de stock para A2 - Producto1 - S - Blanco para la fecha dd-mm-aaaa: 2 unidades

  • A2 - Producto1 - S - Negro: 10 unidades

    • Provisión de stock para A2 - Producto1 - S - Negro para la fecha dd-mm-aaaa: 4 unidades

    • Provisión de reserva para A2 - Producto1 - S - Negro para la fecha dd-mm-aaaa: 2 unidades

  • A2 - Producto1 - M - Blanco: 12 unidades

  • A2 - Producto1 - M - Negro: 16 unidades

  • A2 - Producto1 - XL - Blanco: 3 unidades

  • A2 - Producto1 - XL - Negro: 0 unidades

    • Provisión de stock para A2 - Producto1 - XL - Negro para la fecha dd-mm-aaaa: 2 unidades

Si Producto1 no tuviera opciones combinables, se podrían crear estos registros:

  • A1 - Producto1: 10 unidades

    • Provisión de stock para A1 - Producto1 para la fecha dd-mm-aaaa: 2 unidades

    • Provisión de reserva para A1 - Producto1 para la fecha dd-mm-aaaa: 1 unidades

  • A2 - Producto1: 5 unidades

    • Provisión de stock para A2 - Producto1 para la fecha dd-mm-aaaa: 1 unidades

    • Provisión de reserva para A2 - Producto1 para la fecha dd-mm-aaaa: 1 unidades

No es obligatorio tener provisiones de stock o de reserva para todas las combinaciones y/o todos los almacenes; en general, dependerá de cada situación. Las líneas de provisión dependen de la línea de stock concreta que se ha creado para una combinación: si no existe línea de stock para una combinación, no se pueden crear provisiones. Por ejemplo, un producto tiene una combinación del que no hay stock porque el Commerce nunca ha tenido, pero se prevé que en breve le lleguen 10 unidades. El Commerce quiere ponerlas a la venta de manera anticipada y, por tanto, necesita crear una provisión de reserva de 10 unidades para una fecha próxima. Para hacerlo, debe crear primero la línea de stock de la combinación, dejarla a cero y, a continuación, crear la provisión de reserva.

De igual modo, para una combinación se pueden crear tantas líneas de provisión como se necesite. Por ejemplo, para A1 - Producto1 - S - Blanco se podrían crear estos registros de stock:

  • A1 - Producto1 - S - Blanco: 10 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha AA-mm-aaaa: 3 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha BB-mm-aaaa: 2 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha CC-mm-aaaa: 1 unidades

    • Provisión de reserva para A1 - Producto1 - S - Blanco para la fecha EE-mm-aaaa: 4 unidades

    • Provisión de reserva para A1 - Producto1 - S - Blanco para la fecha FF-mm-aaaa: 5 unidades

Esto significa que la combinación A1 - Producto1 - S - Blanco tiene una provisión de stock de 3 unidades prevista para el día AA-mm-aaaa, una provisión de stock de 2 unidades prevista para el día BB-mm-aaaa y una provisión de stock de 1 unidad prevista para el día CC-mm-aaaa. Además, tiene una provisión de reserva de 4 unidades prevista para el día EE-mm-aaaa y una provisión de reserva de 5 unidades para el día FF-mm-aaaa.

Sustracción del stock

Una vez realizada el alta del stock, el sistema ya sabe qué almacenes tiene disponibles cada producto, si hay provisiones y las fechas en que entrarán esas provisiones. Para realizar la sustracción hay que recodar que existe una relación entre canal y almacén (consulta Sistema multicanal). Los canales deben tener almacenes vinculados, lo que significa que solo los almacenes del canal asignado podrán suministrar stock a los pedidos realizados bajo ese canal. Como el almacén tiene una zona de influencia determinada por el centro logístico, si esta área no es compatible con la del canal, el almacén queda invalidado dentro del canal y no podrá suministrar stock.

La relación entre el canal y el almacén tiene una prioridad que será la que marque el orden en que debe salir el stock (el orden siempre es de menor a mayor valor de la propiedad P rioridad). Por tanto, de entre todos los almacenes del canal, el sistema primero extraerá stock del almacén definido como el primero (por ejemplo, con prioridad 1). Si en este almacén no hay suficiente stock, irá a buscarlo al que esté definido como el segundo (por ejemplo, con prioridad 2) y así sucesivamente. Si no se pudiera suministrar todo el stock porque entre todos los almacenes no hay suficientes existencias, el producto se quedará en reserva si tiene habilitada esta característica (las unidades que no se pueden suministrar quedan en reserva); si no la tiene habilitada, no se podrá servir el pedido con la cantidad de producto que se ha solicitado.

Si hay provisiones, primero se sustrae el stock normal, luego se consumen las provisiones de stock y, por último, las provisiones de reserva. El stock normal o de provisión de stock se va consumiendo (restando) y, si se quedan unidades en reserva por no haber suficiente stock, las que ya se han sustraído se conservan bloqueadas en el pedido. Esas unidades ya no se pueden devolver al almacén para un posible consumo por parte de otro pedido. De esta manera, se garantiza que, cuando más tarde se reponga stock para cumplir con las reservas (puede que días más tarde), el pedido conserve todas las unidades sustraídas del almacén y se pueda servir en su totalidad. Si no se bloquearan esas unidades dentro del pedido, cualquier otro podría “robarlas”, lo que complicaría la compleción del primer pedido por falta de stock y provocaría confusión en las expediciones.

Como el stock de las provisiones de reserva son las unidades que se permiten reservar de una hipotética entrada de material en una fecha futura, cuando se consume este stock, en realidad, no se sustraen unidades, sino que se restan del stock configurado de la provisión para poder controlar el número de unidades reservadas. De esta manera, cuando se resta todo el stock de la provisión (se queda a 0), ya no se pueden hacer más reservas (a menos que esté habilitada la reserva sin provisión).

Cuando hay una reserva es porque en el momento en que el usuario realiza el pedido no hay stock. El stock que llegue posteriormente permitirá sustituir las unidades reservadas por unidades reales: por cada unidad reservada se restará una unidad del stock que ha entrado. Cuando todas las unidades reservadas se han sustituido por unidades normales (se han restado del stock normal), el pedido dejará de considerarse pedido con productos en reserva. Por tanto, con las provisiones de reserva se producen dos tipos de sustracciones: la que va restando unidades del stock configurado en la provisión para poder controlar el número de unidades en reserva y la que hace la sustracción real de stock, donde se resta una unidad del stock normal por cada unidad reservada. La fecha de la provisión de reserva es útil para proporcionar información sobre la fecha prevista de llegada del stock (y, si corresponde, provocar la división del pedido en expediciones) y para establecer una fecha de caducidad a las reservas, pero no tiene ningún papel en la sustracción.

Si el pedido está marcado como “pedido con productos en reserva” y la sustracción del stock está en modo Sustraer stock solo si el pedido está completo, el sistema comprueba si hay suficiente stock para cubrir las unidades en reserva. Si no hay stock suficiente, el pedido se queda igual. Si ha entrado suficiente stock, se realiza la sustracción de stock del pedido y este deja de estar marcado como “pedido con productos en reserva”.

Si el pedido está marcado como “pedido con productos en reserva” y la sustracción del stock está en modo Consumir stock gradualmente, el sistema resta todas las unidades que puede del stock que ha entrado, y el resto de las unidades quedan en reserva. Este proceso se va repitiendo hasta que el sistema haya restado todas las unidades del stock que va entrando. Cuando no queda ninguna unidad en reserva, el pedido deja de estar marcado como “pedido con productos en reserva”.

Otro detalle importante es que las provisiones de reserva se vinculan a una línea concreta de combinación y de almacén. Esto significa que se espera que la entrada de stock se realice para esa combinación y ese almacén concretos. Si la entrada nueva de stock se realiza para esa combinación, pero en otro almacén, la sustracción del stock no permitirá sustituir unidades reservadas por el stock nuevo porque el sistema interpreta que ese stock no es el que estaba previsto recibir. Las reservas normales (sin provisión) solo están vinculadas a la combinación (porque es lo que se reserva), pero no al almacén. Esto significa que la entrada de stock en cualquier almacén puede servir para sustituir unidades reservadas normales por unidades del nuevo stock.

Ejemplo

El Producto1 con opciones de talla y color, y combinación de talla (S, M, XL) y color (Blanco, Negro) tiene stock en dos almacenes, A1 y A2, los cuales pertenecen al mismo centro logístico (para simplificar). Las líneas de stock se han creado así:

  • A1 - Producto1 - S - Blanco: 10 unidades

  • A1 - Producto1 - S - Negro: 8 unidades

  • A1 - Producto1 - M - Blanco: 15 unidades

  • A1 - Producto1 - M - Negro: 7 unidades

  • A1 - Producto1 - XL - Blanco: 4 unidades

  • A1 - Producto1 - XL - Negro: 10 unidades

  • A2 - Producto1 - S - Blanco: 10 unidades

  • A2 - Producto1 - S - Negro: 10 unidades

  • A2 - Producto1 - M - Blanco: 12 unidades

  • A2 - Producto1 - M - Negro: 16 unidades

  • A2 - Producto1 - XL - Blanco: 3 unidades

  • A2 - Producto1 - XL - Negro: 0 unidades

Si tienes un orden de extracción por el que primero sirve A1 (prioridad 1) y después A2 (prioridad 2), el sistema primero agotará el stock de A1 de cada combinación y, cuando ya no pueda extraer stock para esa combinación, lo hará de A2.

Si se piden 15 unidades de Producto1 - S - Blanco, se extraerán las 10 unidades de A1 y 5 unidades de A2 de esa combinación.

Si en A1 hay stock solo para Blanco y en A2 solo para Negro:

  • A1 - Producto1 - S - Blanco: 10 unidades

  • A2 - Producto1 - S - Negro: 10 unidades

  • A1 - Producto1 - M - Blanco: 10 unidades

  • A2 - Producto1 - M - Negro: 10 unidades

  • A1 - Producto1 - XL - Blanco: 10 unidades

  • A2 - Producto1 - XL - Negro: 10 unidades

Debido a que Blanco solo lo sirve A1 y Negro, A2, una vez que se agote alguna combinación ya no se podrán suministrar más. Por ejemplo, si se piden 15 unidades de Producto1 - S - Blanco, solo se podrán suministrar 10 unidades; las otras 5 quedan en reserva, si Producto1 tiene habilitada esta característica. En caso contrario, no se podrá completar el pedido por falta de stock.

Supongamos que se crean provisiones de stock y de reserva. Para simplificar, nos centramos solo en la combinación Producto1 - S - Blanco :

  • A1 - Producto1 - S - Blanco: 3 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha 10-mm-aaaa: 2 unidades

    • Provisión de reserva para A1 - Producto1 - S - Blanco para la fecha 18-mm-aaaa: 2 unidades

  • A2 - Producto1 - S - Blanco: 2 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha 12-mm-aaaa: 2 unidades

    • Provisión de reserva para A1 - Producto1 - S - Blanco para la fecha 19-mm-aaaa: 3 unidades

Si durante el proceso de compra el cliente añade 15 unidades a la cesta, el sistema procede de la siguiente forma:

  1. Extrae stock de A1 y resta las unidades correspondientes de la cantidad pedida. Como la cantidad pedida es mayor que el stock que contiene el almacén, el sistema lo extrae todo: 15 - 3 = 12 unidades.

  2. Como quedan unidades pendientes, el sistema extrae ahora de A2. Dado que la cantidad pendiente es mayor que el stock que contiene este almacén, el sistema lo extrae todo: 12 - 2 = 10 unidades.

  3. Una vez agotado el stock normal, siguen quedando unidades pendientes. Pasamos ahora a las provisiones de stock, empezando por el almacén de más prioridad que, en este caso, es A1, el cual contiene una provisión para la fecha 10-mm-aaaa.
    Como la cantidad pendiente es mayor que el stock que contiene el almacén, el sistema lo extrae todo: 10 - 2 = 8 unidades.

  4. Como quedan unidades pendientes, pasamos a A2, que contiene una provisión de stock para la fecha 12-mm-aaaa. Puesto que la cantidad pendiente es mayor que el stock que contiene este almacén, el sistema lo extrae todo: 8 - 2 = 6 unidades.
    Si Producto1 no tiene habilitadas las reservas, el sistema devolverá un error informando de que no hay suficiente stock.

    Si suponemos que Producto1 tiene activada la reserva en el modo Con provisión de reserva:

    1. Una vez agotado el stock de las provisiones de stock, como el producto admite reservas, el sistema extrae stock de las provisiones de reserva empezando por el almacén de más prioridad, A1, el cual contiene una provisión para la fecha 18-mm-aaaa.
      Como la cantidad pendiente es mayor que el stock que contiene el almacén, se extrae todo: 6 - 2 = 4 unidades.

    2. Como quedan unidades pendientes, pasamos a A2, el cual contiene una provisión de reserva para la fecha 19-mm-aaaa. Dado que la cantidad pendiente es mayor que el stock que contiene este almacén, el sistema lo extrae todo: 4 - 3 = 1 unidades.
      Como no se permiten reservas sin provisión, el sistema devolverá un error informando de que no hay suficiente stock.

      Si suponemos que Producto1 tiene activada la reserva en el modo Ambos, con y sin provisión:

      1. Como todavía hay una cantidad pendiente, el sistema la pone en reserva: 1 unidad. El sistema informa de que se ha añadido el producto, pero que hay unidades en reserva y con fechas de entrega con demora; en concreto y debido a las provisiones, hay fechas de entrega para el 10-mm-aaaa, el 12-mm-aaaa, el 18-mm-aaaa y el 19-mm-aaaa.

      2. Si el Commerce tiene habilitada la multiexpedición, se genera 1 expedición a causa del origen, es decir, el centro logístico, y otras 4 debido a las fechas de entrega con demora, concretamente, con fechas de entrega para el 10-mm-aaaa, el 12-mm-aaaa, el 18-mm-aaaa y el 19-mm-aaaa.
        Si el Commerce no tiene habilitada la multiexpedición, se genera 1 expedición con fecha 19-mm-aaaa, que es la fecha de entrega más alejada a la actual.

      3. Se permite finalizar el pedido.

 

El resultado final es que, si Producto1 admite reservas con y sin provisión, se puede añadir a la cesta de la compra con la cantidad solicitada. Esto permite finalizar el pedido con normalidad. Cuando el pedido esté pagado y su estado cambie a Entrantes, se realizará la sustracción real. Como en este caso hay reservas involucradas, el sistema procede de la siguiente manera:

  1. Extrae stock de A1 y se lo resta a la cantidad pedida. Como la cantidad pedida es mayor que el stock que contiene el almacén, se extrae todo: 15 - 3 = 12 unidades.
    El sistema registra que se han extraído 3 unidades de la línea de stock A1 - Producto1 - S - Blanco. A1 se queda con 0 unidades.

  2. Como quedan unidades pendientes, el sistema extrae ahora de A2. Como la cantidad pendiente es mayor que el stock que contiene este almacén, lo extrae todo: 12 - 2 = 10 unidades.
    El sistema registra que se han extraído 2 unidades de la línea de stock A2 - Producto1 - S - Blanco. A2 se queda con 0 unidades.

  3. Una vez agotado el stock normal, siguen quedando unidades pendientes. Pasamos ahora a las provisiones de stock, empezando por el almacén de más prioridad que, en este caso, es A1, el cual contiene una provisión para la fecha 10-mm-aaaa.
    Como la cantidad pendiente es mayor que el stock que contiene el almacén, se extrae todo: 10 - 2 = 8 unidades.
    El sistema registra que se han extraído 2 unidades de la línea de provisión de stock A1 - Producto1 - S - Blanco para la fecha 10-mm-aaaa. La provisión se queda con 0 unidades.

  4. Como quedan unidades pendientes, pasamos a A2, el cual contiene una provisión de stock para la fecha 12-mm-aaaa. Dado que la cantidad pendiente es mayor que el stock que contiene este almacén, se extrae todo: 8 - 2 = 6 unidades.
    El sistema registra que se han extraído 2 unidades de la línea de provisión de stock A2 - Producto1 - S - Blanco para la fecha 12-mm-aaaa. La provisión se queda con 0 unidades.

  5. Una vez agotado el stock de las provisiones de stock, como el producto admite reservas, el sistema extrae stock de las provisiones de reserva empezando por el almacén de más prioridad, A1, el cual contiene una provisión para la fecha 18-mm-aaaa.
    Como la cantidad pendiente es mayor que el stock que contiene el almacén, se extrae todo: 6 - 2 = 4 unidades.
    El sistema registra que se han extraído 2 unidades en reserva de la línea de provisión de reserva A1 - Producto1 - S - Blanco para la fecha 18-mm-aaaa. La provisión se queda con 0 unidades.

  6. Dado que quedan unidades pendientes, pasamos a A2, el cual contiene una provisión de reserva para la fecha 19-mm-aaaa. Puesto que la cantidad pendiente es mayor que el stock que contiene este almacén, se extrae todo: 4 - 3 = 1 unidades.
    El sistema registra que se han extraído 3 unidades en reserva de la línea de provisión de reserva A2 - Producto1 - S - Blanco para la fecha 19-mm-aaaa. La provisión se queda con 0 unidades.

  7. Como todavía hay una cantidad pendiente, el sistema registra que hay 1 unidad en reserva para A1 - Producto1 - S - Blanco.

  8. El sistema detecta que hay 6 unidades en reserva: 2 por A1 - Producto1 - S - Blanco para la fecha 18-mm-aaaa, 3 por A2 - Producto1 - S - Blanco para la fecha 19-mm-aaaa y 1 unidad con reserva normal. Marca el pedido como pedido con productos en reserva .

  9. Si el Commerce tiene habilitada la multiexpedición, se genera 1 expedición a causa del origen, es decir, el centro logístico, y otras 4 debido a las fechas de entrega con demora, concretamente, con fechas de entrega para el 10-mm-aaaa, el 12-mm-aaaa, el 18-mm-aaaa y el 19-mm-aaaa. Se procesa la expedición normal. Las 4 restantes quedan a la espera de que haya una entrada de stock.
    Si el Commerce no tiene habilitada la multiexpedición, se genera 1 expedición con fecha 19-mm-aaaa, que es la fecha de entrega más alejada a la actual y que queda a la espera de una entrada de stock.

 

Después de esta sustracción, el stock queda de la siguiente manera:

  • A1 - Producto1 - S - Blanco: 0 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha 10-mm-aaaa: 0 unidades

    • Provisión de reserva para A1 - Producto1 - S - Blanco para la fecha 18-mm-aaaa: 0 unidades

  • A2 - Producto1 - S - Blanco: 0 unidades

    • Provisión de stock para A1 - Producto1 - S - Blanco para la fecha 12-mm-aaaa: 0 unidades

    • Provisión de reserva para A1 - Producto1 - S - Blanco para la fecha 19-mm-aaaa: 0 unidades

Esto significa que no queda stock normal, no queda stock de provisiones de stock y no se permiten más unidades reservadas bajo provisión porque se han agotado todas las reservas. Si se realizara otro pedido en el que se incluyera Producto1 - S - Blanco, el sistema añadiría esta combinación a la cesta de la compra, pero en reserva. Además, el pedido se ha quedado con 6 unidades en reserva, por lo que se necesitará una entrada de stock.

Ampliemos el ejemplo con lo que pasaría si el Commerce añadiera stock a la combinación Producto1 - S - Blanco.

a) Si la sustracción del stock está en modo “ Sustraer stock solo si el pedido está completo ”:

Supongamos que para esa combinación entra el siguiente stock:

  • A1 - Producto1 - S - Blanco: 4 unidades

  • A2 - Producto1 - S - Blanco: 2 unidades

Hay 6 unidades en reserva y, en principio, también han entrado 6 unidades nuevas. Examinemos esto con detalle:

  • Han entrado 4 unidades en A1 y hay 2 unidades reservadas vinculadas a una línea de stock creada en este almacén. La cantidad pendiente es inferior al stock y se extrae; todavía quedan 2 unidades de stock (4 - 2) en A1. De A1 no quedan reservas pendientes.

  • La reserva normal se puede sustituir por la entrada de stock de A1, que todavía tiene 2 unidades y podría suministrarle una.

  • Han entrado 2 unidades en A2 y hay 3 unidades reservadas vinculadas a una línea de stock creada en este almacén. La cantidad pendiente es superior al stock y se extrae todo, pero todavía queda 1 reserva pendiente, que solo puede ser sustituida por stock en A2.

Por tanto, el pedido no se puede completar por culpa de la reserva de A2. El pedido no consume ninguna de las 6 unidades que entran y sigue con las mismas 6 reservas.

El stock, por tanto, queda intacto:

  • A1 - Producto1 - S - Blanco: 4 unidades

  • A2 - Producto1 - S - Blanco: 2 unidades

Supongamos que hay una segunda entrada de stock de 1 unidad para A1 y 1 unidad para A2, y que el stock que quedaba anteriormente todavía no se ha consumido. El stock queda así:

  • A1 - Producto1 - S - Blanco: 5 unidades

  • A2 - Producto1 - S - Blanco: 3 unidades

El sistema procede de la siguiente manera:

  • Hay 5 unidades en A1 y hay 2 unidades reservadas vinculadas a una línea de stock creada en este almacén. La cantidad pendiente es inferior al stock y se extrae; todavía quedan 2 unidades de stock (4 - 2) en A1. De A1 no quedan reservas pendientes.

  • Hay 3 unidades en A2 y hay 3 unidades reservadas vinculadas a una línea de stock creada en este almacén. La cantidad pendiente es igual al stock y se extrae todo; el stock de A2 queda a 0. De A2 no quedan reservas pendientes.

  • La reserva normal se puede sustituir por la entrada de stock de A1, que todavía tiene 3 unidades y podría suministrarle una.

Por tanto, el pedido se puede completar. Tras realizar la sustracción, el stock queda así:

  • A1 - Producto1 - S - Blanco: 2 unidades

  • A2 - Producto1 - S - Blanco: 0 unidades

 

b) Si la sustracción del stock está en modo “ Consumir stock gradualmente” :

Supongamos que para esa combinación entra el siguiente stock:

  • A1 - Producto1 - S - Blanco: 4 unidades

  • A2 - Producto1 - S - Blanco: 2 unidades

Hay 6 unidades en reserva y, en principio, también han entrado 6 unidades nuevas. Examinemos esto con detalle:

  • Han entrado 4 unidades en A1 y hay 2 unidades reservadas vinculadas a una línea de stock creada en este almacén. La cantidad pendiente es inferior al stock y se extrae; todavía quedan 2 unidades de stock (4 - 2) en A1. De A1 no quedan reservas pendientes.

  • Han entrado 2 unidades en A2 y hay 3 unidades reservadas vinculadas a una línea de stock creada en este almacén. La cantidad pendiente es superior al stock y se extrae todo, pero todavía queda 1 reserva pendiente, que solo se puede sustituir por stock en A2.

  • La reserva normal se puede sustituir por la entrada de stock de A1, que todavía tiene 2 unidades y podría suministrarle una; le queda 1 unidad.

Por tanto, el pedido no se puede completar por culpa de la reserva de A2, pero el pedido ha consumido stock a causa de las reservas.

El stock, por tanto, queda así:

  • A1 - Producto1 - S - Blanco: 1 unidad

  • A2 - Producto1 - S - Blanco: 0 unidades

Supongamos que hay una segunda entrada de stock de 1 unidad para A1 y 1 unidad para A2, y que el stock que quedaba anteriormente todavía no se ha consumido. El stock queda de la siguiente forma:

  • A1 - Producto1 - S - Blanco: 2 unidades

  • A2 - Producto1 - S - Blanco: 1 unidad

El sistema procede así:

  • Hay 2 unidades en A1 y no hay ninguna unidad reservada vinculada a una línea de stock creada en este almacén. No se sustrae stock.

  • Hay 1 unidad en A2 y hay 1 unidad reservada vinculada a una línea de stock creada en este almacén. La cantidad pendiente es igual al stock y se extrae todo; el stock de A2 queda a 0. De A2 no quedan reservas pendientes.

  • No hay reservas normales, por lo que el sistema no tiene que hacer ninguna sustracción más.

Por tanto, el pedido se puede completar. Tras esta sustracción, el stock queda así:

  • A1 - Producto1 - S - Blanco: 2 unidades

  • A2 - Producto1 - S - Blanco: 0 unidades