Sistema multiexpedición

Visión general

Sin duda, una parte fundamental del Commerce es la función que se encarga de gestionar el envío de los pedidos. Tan importante es tener una buena gestión del stock del catálogo como tener bajo control los envíos. La gestión del transporte y de los envíos es, en muchos casos, lo que más interacciones genera entre el usuario y el Commerce.

El sistema multiexpedición permite al Commerce generar una o más expediciones para servir un pedido y gestionar los transportes asociados. El número de expediciones dependerá de los almacenes de origen y de otras características, como los días de compensación. También se generarán múltiples entregas en función de los tipos de envío (que dependerán de los transportistas disponibles) y sus características (la prioridad y si es un tipo de envío restrictivo), así como del tipo de cálculo de envío (por unidades o por peso/importe de cesta de la compra). El sistema tendrá en cuenta todas estas características combinadas y mostrará los posibles envíos o expediciones y quién puede transportarlos. Luego el usuario seleccionará el tipo de envío del transportista que más le convenga.

Una vez que el usuario haya seleccionado cómo quiere que se le envíe el pedido y quién se encarga, se puede hacer un seguimiento de cada uno de los envíos desde la correspondiente sección de expediciones del BackOffice. En este apartado, además, se pueden habilitar cambios de estado en la expedición que pueden tener acciones vinculadas como, por ejemplo, mandar un correo electrónico al usuario con algún tipo de notificación.

Entregas

En general, en un Commerce estándar, cuando el usuario está en la parte final del proceso de compra decide cómo quiere recibir el pedido, es decir, tiene que elegir el tipo de entrega. Por lo tanto, la entrega, o forma de envío, es la manera en que se hace llegar el pedido al usuario que ha comprado. Podemos definirlo como el tramo desde que sale la mercancía del centro logístico del Commerce hasta que llega a su destinatario.

El usuario elige un tipo de entrega de entre una serie de opciones, las cuales dependerán de la disponibilidad de ubicaciones físicas configuradas como punto recogida y de los transportistas que se hayan definido en el Commerce.

Una entrega puede terminar dividiéndose en diferentes expediciones: una vez que el usuario selecciona el tipo de entrega, es posible que la mercancía deba transportarse de un origen a un destino. Este transporte puede hacerse de una vez (un solo envío) o puede dividirse en varios envíos o expediciones (multiexpedición). El motivo de la división se encuentra en el origen de la mercancía, es decir, los centros logísticos, y también en el tipo de transporte. A su vez, el número de expediciones dependerá de las características del almacén como, por ejemplo, los días de compensación (se explica con detalle más adelante).

Tipos de entregas

Existen dos tipos de entrega:

  • Entrega a domicilio: la mercancía se envía a la dirección que el usuario ha indicado en el momento de realizar el pedido. Estas entregas las reparte un transportista, el cual se encarga de recoger los paquetes correspondientes en el centro logístico de origen; pueden tener una sola expedición o varias.

  • Entrega en un punto de recogida: el pedido no se envía * , sino que debe irse a buscar a un punto de recogida. Los puntos de recogida pueden ser los que el sistema calcula automáticamente (a través de un radio de distancia del punto de recogida [consulta Ubicaciones físicas]), y se devuelven todas como posibles opciones de entrega.

En un proceso de compra, el sistema determina todas las opciones o posibilidades de entrega (tanto a domicilio como en punto de recogida) y las devuelve para que el usuario pueda escoger la que quiera; por ejemplo, en el caso de las entregas en un punto de recogida, es habitual mostrar las opciones en un mapa de la capa de presentación web y que el usuario elija la que más le convenga. Además, en cada entrega, el sistema calcula el número de expediciones en que se dividirá (tal como se explica en los siguientes apartados). Para hacerlo, se basa en la dirección de envío que el usuario ha indicado, en los transportes y en el canal asignado el cual, a su vez, como veremos, habilita los centros logísticos, almacenes y puntos de recogida.

* Existe una excepción, que se explica en la documentación del sistema multicanal: cuando se establece una relación a tres entre el canal, la ubicación física y el almacén.

Elementos

Como estamos viendo, la entrega es el elemento principal en el sistema multiexpedición, pero las opciones de entrega y su definición —incluidas las posibles expediciones— también están determinadas por los elementos que se especifican a continuación:

Canales

(consulta Sistema multicanal)

Un canal de venta es la entidad que sirve para definir una línea de negocio, entendiendo por “línea de negocio” cada uno de los segmentos en los que se quiere diferenciar el volumen de ventas. El canal no es algo que se pueda seleccionar, sino que son las características del usuario que navega por el Commerce las que harán que se active un canal u otro, según la configuración de cada uno.

Los canales deben tener, como mínimo, un almacén vinculado, lo que significa que solo los almacenes del canal asignado podrán suministrar stock a los pedidos realizados bajo ese canal. Los canales también pueden tener ubicaciones físicas, y únicamente las del canal asignado serán las que se habiliten como puntos de recogida y devolución o punto localizable en un mapa durante el proceso de compra.

En el canal también puedes definir una zona de influencia, es decir, el conjunto de áreas geográficas donde opera el canal. Esta zona de influencia deberá ser compatible con las del resto de los elementos asociados al canal (almacenes, ubicaciones físicas, etc.).

Como el canal es la entidad que habilita almacenes y ubicaciones físicas, es uno de los elementos clave para determinar las entregas.

Almacenes

(consulta Almacenes y centros logísticos)

Un almacén es una entidad que contiene stock de productos. Esta entidad puede ser física (con una dirección real en un mapa) o virtual. Puede contener stock de todo el inventario de productos del Commerce o solo de una parte. Un Commerce puede tener tantos almacenes como necesite, ya sea porque dispone de esas ubicaciones físicas reales de donde sale el stock y necesita reflejarlo en el Commerce o porque, por su logística, necesita tener almacenes virtuales (aunque físicamente no los tenga). Como los almacenes pueden ser virtuales, existe una entidad llamada “centro logístico” que agrupa a los almacenes y les proporciona un origen físico (una dirección en el mapa).

Además, el almacén puede tener habilitada la característica Días de compensación . Esto significa que el almacén no puede suministrar stock de forma inmediata, sino que tarda unos días. Esta fecha de entrega postergada afectará al número de entregas y de expediciones que debe calcular el sistema (consulta División de las expediciones).

Centros logísticos

(consulta Almacenes y centros logísticos)

El centro logístico es el punto de partida de la entrega porque es el lugar desde el cual sale la mercancía que compone un pedido. Un centro logístico es un grupo de almacenes que, por motivos logísticos, conviene que estén situados en la misma dirección física. Esta dirección es la que marcará el origen de las expediciones y, por lo tanto, el precio que costará el transporte en caso de que la entrega la gestione un transportista.

El centro logístico puede tener también una zona de influencia, que es el conjunto de áreas geográficas donde el centro puede servir expediciones. Esto significa que todos los almacenes que contiene también pertenecen a esa zona de influencia. Si la zona es incompatible con la del canal, el centro logístico y los almacenes que contenga quedan invalidados y no pueden suministrar stock.

La relación entre canal y almacén tiene asignada una prioridad, que será la que marque el orden en que debe salir el stock. Por lo tanto, de entre todos los almacenes del canal, el sistema primero extraerá stock del almacén definido como el primero. Si en este almacén no hay suficiente stock, irá a buscarlo al que esté definido como el segundo, y así sucesivamente. De esta manera, si los almacenes pertenecen a distintos centros logísticos, se generen tantos orígenes como centros logísticos haya involucrados. Esta no es la única causa por la que una entrega puede tener distintos centros logísticos. En general, el stock de cada producto puede asignarse al almacén que sea necesario por motivos logísticos; como consecuencia, un pedido puede incluir productos de diferentes almacenes, y esos almacenes pertenecer a distintos centros logísticos.

Ubicaciones físicas

Es muy habitual que las empresas que hay detrás de los Commerce también dispongan de una red de tiendas físicas. A menudo, estas tiendas tienen un papel importante en el canal online, principalmente como puntos de recogida y devolución de compras efectuadas en la tienda virtual. O a veces, el Commerce simplemente quiere mostrar que también tiene presencia física.

Una ubicación física es una entidad que representa un sitio real. Además, puede ser un punto localizable en el mapa, para lo cual se necesitan las correspondientes coordenadas. El mapa puede mostrar la red de tiendas físicas, puntos de recogida o puntos de devolución, o bien puede servir para cualquier otro propósito que necesite el Commerce.

La relación entre canal y ubicación física permite añadir estas características a la ubicación física (consulta Sistema multicanal):

  • Punto de recogida: simboliza una ubicación física donde el usuario puede ir a recoger su pedido. Habitualmente, son tiendas físicas de la misma empresa o cadena, pero también pueden ser de otro tipo, como establecimientos autorizados por la empresa como punto de recogida.

  • Punto de devolución : simboliza una ubicación física donde el usuario puede hacer la devolución de un pedido. También suelen ser tiendas físicas de la misma empresa o cadena, aunque podrían ser de otro tipo, como establecimientos autorizados por la empresa como punto de devolución.

  • Zona de radio: puedes definir un radio de distancia para la ubicación física. Las localizaciones geográficas que se encuentren en este radio dependerán de dicha ubicación.

    Ejemplo: Tienes un punto de recogida para el que has definido un radio de distancia de 5 km; si la dirección de un usuario se encuentra en ese radio, el sistema le indicará que tiene que recoger su pedido en dicho punto de recogida.

La ubicación física puede tener una zona de influencia, es decir, el conjunto de áreas geográficas donde opera. Si esta zona es incompatible con la del canal, la ubicación física queda invalidada dentro del canal y, por lo tanto, el punto de recogida o devolución no estará disponible.

Transportistas

(consulta Gestión de transportes)

Los transportistas son las entidades del Commerce que representan a los encargados de llevar a cabo las expediciones, es decir, los que sirven el pedido al domicilio del usuario. Un Commerce puede tener tantos transportistas como necesite, y cada uno de ellos tiene una estructura concreta con dos elementos que dependen de él:

------ Transportista
          |
          ------ Tipos de envío
                    |
                    ------ Zonas de envío

Para que un transportista sea completamente operativo debe tener definidos ambos elementos, aunque solo los tipos de envío afectan a las expediciones directamente.

Tipos de envío

Los tipos de envío también se suelen llamar “modalidad de envío” o “modalidad de reparto” y representan las diferentes formas de reparto que cada transportista pone a disposición del Commerce. Por ejemplo, es habitual que los transportistas tengan repartos en 72h, urgentes 24h, por barco, por avión, etc., cada uno con sus respectivas tarifas y tiempos. Estos servicios se trasladan al Commerce como tipos de envío con el transportista que corresponda. En la práctica, se trata de los métodos de envío (con los correspondientes portes) que el usuario seleccionará según le convenga (reparto en 72h, reparto urgente, etc.).

Las zonas de envío del transportista determinan dónde se puede repartir y habilitan qué tipos de envío son capaces de transportar la expedición. Además, las zonas de envío establecen, a través de sus intervalos, los diferentes rangos de peso o importe de expedición y los precios derivados del transporte para cada uno de ellos (normalmente, denominados “gastos de envío”). Si el destino de una expedición es incompatible geográficamente con las ubicaciones incluidas en las zonas de un determinado tipo de envío o, aún siendo compatible, su peso acumulado o importe no está dentro de los intervalos que se definen en las zonas del tipo de envío en cuestión, la expedición no se podrá transportar mediante dicho tipo de envío.

El tipo de envío puede tener prioridades y ser restrictivo o no. Se trata de dos características estrechamente relacionadas con las expediciones, las cuales se explican con detalle más adelante.

Expediciones

Una expedición es la entidad que simboliza el transporte o el traslado de la mercancía de la totalidad o parte de un pedido desde un punto de origen hasta un destino. El punto de origen es el centro logístico y el destino, la dirección de envío que el usuario ha indicado al realizar el pedido.

Como ya se ha comentado, las entregas se pueden enviar en una única expedición o dividirse en varias (multiexpedición). Para que el sistema cree múltiples expediciones, tienen que darse las condiciones necesarias, y la principal es que el Commerce tenga habilitada la característica de multiexpedición . Si no la tiene habilitada, aunque se cumplan el resto de las condiciones, el sistema no dividirá la entrega y siempre habrá una sola expedición.

Si el Commerce tiene activada la multiexpedición, la entrega podrá dividirse en función de los siguientes criterios, los cuales se explican detalladamente más adelante:

  • Fecha de entrega

  • Tipo de cálculo del envío

  • Origen de la expedición

  • Tipo de envío

Cuantos más criterios intervengan, más divisiones se podrán producir. Sin embargo, como el sistema intenta minimizar el número de expediciones, al final del proceso de cálculo intentará agrupar, siempre que sea posible, las expediciones que tengan como factores comunes el origen y el tipo de envío.

Puede haber productos que no necesiten envío como, por ejemplo, servicios o productos digitales. Estos productos o servicios, que no tienen activada la característica Calcular envío, estarán presentes en la cesta y, posteriormente, en el pedido, pero como no se tienen en cuenta en los cálculos de los gastos de envío, no aparecerán como parte de la entrega ni de las expediciones que salgan de ella. Por lo tanto, los productos que se incluyen en las expediciones deben tener habilitada la opción Calcular envío .

Cálculo de entregas y expediciones

El sistema determina todas las entregas que se pueden hacer de un pedido (tanto las entregas a domicilio como las entregas en un punto de recogida) y las devuelve. En todos los casos devolverá, como mínimo, una entrega a domicilio, que es la típica entrega estándar que se hace a través de transportista.

Entregas en punto de recogida

Las entregas en punto de recogida se crean como consecuencia de las ubicaciones físicas configuradas como punto de recogida que tiene el canal que se ha asignado al inicio del proceso de compra. Cada uno de estos puntos de recogida será una entrega (puede haber tantos como se necesiten), teniendo en cuenta que, de entre todos los puntos de recogida vinculados al canal, el sistema solo mostrará aquellos que sean compatibles con la dirección de envío del usuario. Este es el procedimiento:

  1. El sistema selecciona todos los puntos de recogida del canal que estén en el mismo país o zona de país que la dirección de envío que ha indicado el usuario.

  2. De entre todos los puntos de recogida devueltos, se filtran los que tengan la dirección de envío del usuario dentro de su radio de zona. Si, por ejemplo, el país tiene X puntos de recogida, para cada uno de esos X se evalúa si la dirección de envío del usuario queda dentro de su radio de zona. Solo serán válidos los que cumplan este filtro, por lo que se devolverán X o un número menor.

El resultado devuelto puede utilizarse como mejor convenga. Habitualmente, en las capas de presentación web, se muestra dentro de un mapa interactivo. De esta manera, el usuario puede escoger cómodamente dónde quiere ir a buscar el pedido.

Las entregas en punto de recogida formalmente no crean expediciones, aunque existe una excepción que se describe en Origen de la expedición.

Entregas a domicilio

Como hemos explicado, el sistema siempre devolverá una entrega a domicilio, como mínimo. Pueden existir días de compensación en alguno de los almacenes que sirve la mercancía del pedido o, como veremos en el apartado sobre la división de las expediciones, alguno de los productos puede tener provisión de reserva o provisión de stock (ambas implican una fecha futura de entrada de mercancía), es decir, puede haber algún tipo de fecha que retrase la entrega. En este caso, el Commerce puede tener activada la característica Expediciones por fecha , que sirve para indicar al sistema cómo tiene que tratar en las entregas las fechas de las demoras que suponen las provisiones o los días de compensación.

La característica Expediciones por fecha puede tener 3 valores:

  • Nunca: el sistema solo genera una entrega, cuya fecha de entrega será la más alejada de la fecha en curso de entre las fechas involucradas. Esto, además, implica que no se generarán múltiples expediciones a causa de la fecha de entrega (si bien no se descartan otros motivos).

  • Siempre: el sistema solo genera una entrega con diversas fechas de entrega. Esto implica que se podrá dividir la entrega en varias expediciones (como veremos en el apartado sobre la división de expediciones).

  • Ambos: el sistema genera dos entregas, una que tendrá como fecha de entrega la más alejada de la fecha en curso de entre las fechas involucradas, y otra que tendrá diversas fechas de entrega. El usuario debe poder escoger cómo quiere la entrega: por partes (diversas fechas de entrega y, posiblemente, diversas expediciones) o en una sola (fecha de entrega más alejada).

Las entregas a domicilio se pueden transportar en una sola expedición o en varias. Los criterios de división pueden ser cualquiera de los descritos anteriormente.

División de las expediciones

Una vez que se haya determinado la entrega, el sistema evalúa si es necesario dividir la expedición (podrá hacerlo siempre y cuando el Commerce tenga activada la característica de multiexpedición). El sistema considera la entrega que se debe transportar como una primera expedición. Si, por el motivo que sea, no se divide la expedición, esa entrega inicial se convierte en una única expedición.

Los productos de la entrega original se distribuirán en las diferentes expediciones que se creen, de manera que cada expedición se irá configurando con los productos que corresponda. Por ejemplo, si se genera una división debido a una fecha de entrega, en la nueva expedición estarán los productos cuyo stock deba extraerse del almacén que ha provocado esa división por fecha de entrega. Incluso se pueden distribuir las unidades de un determinado producto en varios grupos y que cada grupo se encuentre en una expedición diferente.

Examinaremos por orden las causas, pero antes es necesario explicar la gestión de stocks.

Gestión de stocks

Para que el sistema pueda dividir la entrega de forma adecuada en múltiples expediciones, es importante tener en cuenta si el Commerce tiene habilitada la gestión de stocks o no, es decir, si el Commerce puede controlar el número de unidades de cada uno de sus productos. El almacén es el elemento del cual se extrae el stock, por lo que el almacén que se asigne a un determinado producto será el que determine su origen de expedición (a través del centro logístico que lo contenga).

Como el almacén puede tener definidos días de compensación, la asignación del almacén a un producto afecta también a la fecha de entrega. Para poder suministrar las unidades del pedido, lo primero que hace el sistema es determinar qué almacenes debe asignar a cada producto .

Si el Commerce no tiene habilitada la gestión de stocks, el sistema escogerá el almacén del canal con mayor prioridad y lo asignará a cada uno de los productos. Luego buscará su centro logístico y lo definirá como punto de origen.

Como la característica de la gestión de stocks puede personalizarse para cada producto, si el Commerce tiene habilitada la gestión de stocks a nivel general podría ocurrir que alguno de los productos de la expedición tuviera una personalización que inhabilitara esa gestión. Eso significa que, particularmente para esos productos, no es necesario extraer stocks.

El sistema separa estos productos y los asigna al almacén y al centro logístico usando la estrategia anterior. Estos productos se incluyen en una expedición aparte (que también podría dividirse, si fuera necesario).

Si los productos de la expedición tienen habilitada la gestión de stocks, el sistema examina qué almacenes ha habilitado para cada uno de ellos el canal asignado (recordemos que solo se podrá extraer stock de los almacenes compatibles con el canal). Cada almacén tiene definida una prioridad, la cual marca el orden de salida del stock. Para cada producto, el sistema intenta extraer del almacén definido como el primero (por ejemplo, con prioridad 1) todas las unidades que se indican en el pedido. Si en ese almacén no hay suficiente stock, irá a buscarlo al que esté definido como el segundo (por ejemplo, con prioridad 2) y así sucesivamente. El proceso será el mismo si, en lugar de stock real, el producto dispone de stock en reserva (consulta Sistema de gestión de inventario).

Los productos tendrán varios almacenes asignados porque es posible que el sistema tenga que recurrir a más de uno para poder servir las unidades del pedido. Este hecho es fundamental porque provocará, tal como se verá más adelante, división en las expediciones.

Criterios de división
Fecha de entrega

Esta causa de división es la primera que evalúa el sistema. Como se ha comentado en el apartado de entregas, si alguno de los almacenes que sirve la mercancía tiene definidos días de compensación, este no podrá suministrar stock de inmediato, sino que tardará los días que se hayan especificado.

En caso de que el Commerce no tenga habilitada la gestión de stocks, el almacén asignado (según se ha explicado antes) puede tener días de compensación. Como consecuencia, la fecha de entrega se calculará sumando los días de compensación a la fecha actual. La fecha resultante será la fecha de entrega de una única expedición (todo el pedido) si el Commerce no tiene habilitada la multiexpedición. En caso de tener la multiexpedición habilitada, la expedición se dividirá en, como mínimo, dos expediciones (si en el pedido hay productos de otros almacenes sin días de compensación).

Si el Commerce tiene habilitada la gestión de stocks, tal como se ha explicado antes, los productos de la expedición pueden tener varios almacenes asignados. Si alguno de esos almacenes tiene definidos días de compensación, la fecha de entrega se calculará sumando los días de compensación a la fecha actual. Igual que antes, esta fecha resultante será la fecha de entrega de una única expedición (todo el pedido), en caso de que el Commerce no tenga activada la multiexpedición. Si la tiene activada, la expedición se dividirá en tantas expediciones como fechas de entrega diferentes haya.

Los días de compensación no es el único factor que puede contribuir a demorar la entrega de un producto. Si el producto tiene provisiones de reserva o provisiones de stock (consulta Sistema de gestión de inventario), la fecha de esas provisiones actuará, en la práctica, exactamente igual que los días de compensación, y ello provocará también la división de la entrega en varias expediciones. En caso de que la entrega solo tenga una expedición, la fecha de entrega será siempre la fecha más alejada a la actual.

Ejemplo: Para un pedido que se entrega a domicilio, se extrae stock de tres almacenes; uno de ellos (A1) no tiene ningún día de compensación definido; el otro (A2) tiene definidos 10 días de compensación; y, en el tercer almacén (A3), el producto que se debe extraer tiene una provisión de stock con fecha 30 del mes en curso.

En caso de que el Commerce no tenga habilitada la característica de multiexpedición, la entrega debe enviarse en una sola expedición, y el sistema escogerá como fecha de entrega la más alejada de entre todas las fechas de los almacenes involucrados. Si la suma de la fecha actual más los 10 días de compensación de A2 está más alejada que la fecha de provisión de stock de A3, la fecha de entrega del pedido será la de A2 (fecha actual + 10 días). Si la fecha resultante es anterior al 30 del mes en curso, entonces la fecha de entrega será la de A3 (día 30 del mes en curso) porque es la más alejada.

En caso de que el Commerce tenga la multiexpedición activada, la entrega se dividirá en varias expediciones, en función de las fechas de entrega: la expedición de A1 con entrega inmediata (este almacén no tiene definido ningún día de compensación), la expedición de A2 con fecha de entrega “fecha actual + 10 días” y la expedición de A3, con fecha de entrega a 30 del mes en curso. En total son tres expediciones: una de envío inmediato y dos que se irán enviando según las fechas de entrega de cada una de ellas.

Tipo de cálculo del envío

(consulta Gestión de transportes)

El cálculo de los gastos de envío puede basarse en intervalos de peso o de importe de cesta. En el primer caso, el sistema utiliza el peso de cada uno de los productos de la expedición para determinar el coste de los gastos de envío. Sin embargo, puede haber productos para los que, por sus características, no convenga basar el precio del transporte en el peso cuando sean varias las unidades que se deben transportar. Por eso, a veces, el cálculo deberá basarse en el número de unidades especificadas en la cesta y no en el peso del producto. La característica Tipo de cálculo de envío permite escoger la forma de cálculo. Si el valor es Peso , se usa el cálculo estándar lineal por peso. En cambio, si el valor es Unidades, el sistema no tiene en cuenta el peso del producto y usa el número de unidades indicado en la cesta en otro tipo de cálculo para determinar el precio que costará transportar el producto.

El sistema divide automática y momentáneamente los productos del pedido en expediciones por peso y en expediciones por unidades. Esta división sirve para realizar los diferentes cálculos de los gastos de envío. Luego el sistema intenta reunir los productos en una misma expedición, aunque podría ocurrir que esto no fuera posible. Por ejemplo, si los productos de la expedición por unidades están asociados a un tipo de envío especial, el sistema podría determinar que estos y los de la expedición por peso no se pueden transportar conjuntamente y, en consecuencia, divida la expedición. En la mayoría de los casos, esta división no se apreciará porque cuando el sistema reúna las expediciones no mostrará rastro alguno de división de las expediciones por este motivo, aunque es necesario saber que existe la posibilidad contraria. Por lo tanto, formalmente, el tipo de cálculo del envío es un factor que puede dividir las expediciones.

Origen de la expedición

Esta es otra de las causas habituales de división de las expediciones. Como cada centro logístico es un punto de partida, si en una entrega hay involucrados dos o más centros logísticos, la entrega se dividirá en tantas expediciones como orígenes tenga, es decir, se dividirá en dos o más expediciones.

Si el Commerce no tiene habilitada la gestión de stocks, tal como se ha explicado antes, se asigna un almacén. Como solo hay un origen, no habrá división de expediciones por este motivo (podría haberla por otros motivos).

Si el Commerce tiene habilitada la gestión de stocks, los productos que contiene la expedición pueden tener varios almacenes asignados (según se ha explicado antes). Esto significa que, si cada almacén pertenece a un centro logístico distinto, se generarán varias expediciones, una para cada origen. En cada una de esas expediciones aparecerá el producto en cuestión con las unidades que se hayan extraído de su respectivo almacén. Por lo tanto, puede ocurrir que las unidades de un mismo producto estén distribuidas en diferentes expediciones.

Si en un pedido se combinan orígenes diferentes y días de compensación o de provisión de stock, la entrega se dividirá primero según la fecha y luego, según el origen.

Retomando el ejemplo anterior: Para un pedido que se entrega a domicilio, se extrae stock de tres almacenes; uno de ellos (A1, que pertenece al centro logístico CL1) no tiene ningún día de compensación definido; el otro (A2) tiene definidos 10 días de compensación; en el tercer almacén (A3), el producto que se debe extraer tiene definida una provisión. Estos dos últimos almacenes pertenecen al centro logístico CL2.

En caso de que el Commerce no tenga habilitada la multiexpedición, la entrega debe enviarse en una única expedición. Sin embargo, como hay diferentes orígenes, esto no es posible. Por lo tanto, el sistema indicará que no se puede entregar el pedido.

Si el Commerce tiene activada la multiexpedición, la entrega se dividirá en un primer momento en tantas expediciones como centros logísticos haya, con lo que automáticamente se crearán dos expediciones: una para CL1 y otra para CL2. Como en CL2 existen fechas de entrega, la expedición de CL2 se dividirá, a su vez, en otras dos: una con fecha de entrega “fecha actual + 10 días” y otra con fecha de entrega a 30 del mes en curso. En total habrá tres expediciones: una de envío inmediato y dos que se irán enviando según las fechas de entrega de cada una de ellas.

Las multiexpediciones suelen estar relacionadas con las entregas a domicilio. Pero las entregas en punto de recogida también pueden necesitar transporte porque existe una excepción (consulta Sistema multicanal): cuando se establece una relación a tres entre el canal, la ubicación física y el almacén se puede activar la característica Envíos por transfer, la cual permite realizar una transferencia interna de stock. Esto significa que la ubicación física configurada como punto de recogida necesita envío y que, por lo tanto, necesita un transporte.

Tipos de envío

Los tipos de envío también son una causa de división de las expediciones. En general, es posible que los productos de una determinada expedición no se puedan transportar con el mismo tipo de envío. Esto implica que la expedición se tendrá que dividir entre los tipos de envío con los que se transporten todos los productos. Existen tres características de los tipos de envío que son clave para entender por qué se dividen las expediciones.

Una es la prioridad , pero, esta vez, entendida como la “envergadura o relevancia” del tipo de envío dentro de la gestión de transportes. Esta relevancia se expresa con un número que, cuanto mayor es, menos relevancia tiene (el 1 tiene mayor relevancia que, por ejemplo, el 10). Este concepto de envergadura o relevancia se puede asociar también a otras características, como el coste (más caro o menos caro), si es ecológico (más contaminante o menos contaminante), si es transporte frigorífico (más frío, menos frío o normal), tamaño del vehículo (más grande o menos grande), si es transporte para productos de mucho valor (más seguro o menos seguro) o cualquier otro criterio que requiera darle un “peso” al tipo de envío. El sistema siempre intenta asignar a la expedición el tipo de envío con el número de prioridad mayor, es decir, de menor relevancia: el transporte más barato, el menos contaminante o el que no necesita frío, el que usa el vehículo más pequeño, etc.

Otra característica es la restricción que puede ejercer un determinado tipo de envío sobre el resto. Esta característica es complementaria a las personalizaciones de transporte por producto (consulta Gestión de transportes) y sirve para determinar, en caso de que haya dos productos con personalizaciones de transporte distintas, mediante cuál de los dos tipos de envío debe transportarse todo. Los tipos de envío restrictivos:

  • Pasan a tener más “peso” que los tipos de envío no restrictivos (es decir, si el sistema tiene que elegir entre dos tipos de envío con la misma prioridad, elegirá el restrictivo).

  • También pueden tener una prioridad asignada, que sirve para marcar el orden entre los tipos de envío restrictivos (es decir, si el sistema tiene que elegir entre dos tipos de envío restrictivos, seleccionará el que tiene la prioridad con el número mayor).

  • Pueden asumir el transporte de productos sin personalización del transporte o pueden asumir el transporte de productos con personalización del transporte con tipos de envío no restrictivos y con una prioridad mayor que la del restrictivo.

La característica de restricción, junto con la de prioridad, puede forzar que una entrega se transporte mediante dos o más tipos de envío distintos, lo que implica que esta se dividirá en varias expediciones.

Otra característica de los tipos de envío son los intervalos que estos tienen definidos en sus zonas. Si la expedición tiene un peso o un importe que no encaja en ninguno de los intervalos establecidos en las zonas del tipo de envío, no se podrá transportar. En este caso, es posible que, dividiendo la expedición entre varios tipos de envío se pueda transportar en su totalidad.

La división de expediciones provocada por el tipo de envío es la que puede resultar conceptualmente más compleja y, si no se controla mínimamente, puede tener efectos inesperados para el administrador del Commerce. Por ello, es importante configurar las características de los tipos de envío y las personalizaciones del transporte por producto con especial atención.

Normas para la división

En los apartados anteriores se explican las causas de división de las expediciones. Sin embargo, el sistema sigue una serie de normas (sobre todo cuando intenta dividir las expediciones por tipo de envío) para decidir finalmente la cantidad de expediciones que se generará y los productos que las compondrán.

Como ya hemos visto, el sistema aplica primero las siguientes condiciones:

  • Si existe una fecha de entrega (p. ej., por el cálculo de los días de compensación del almacén o la fecha de una provisión de stock o de reserva), la expedición se dividirá.

  • Si un mismo pedido combina el tipo de cálculo del envío por peso y también por unidades, la expedición se dividirá.

  • Si existen diferentes orígenes, la expedición se dividirá.

  • Llegados a este punto, puede haber ya múltiples divisiones:

Después de dividir la entrega original en estas expediciones (color naranja), el sistema ahora evalúa si debe dividirlas a causa del tipo de envío. Para ello, tiene en cuenta las siguientes normas:

  • El sistema descarta los tipos de envío cuyas zonas son incompatibles con la dirección de envío del usuario.
  • Cuando los productos no tienen personalizaciones del transporte, el sistema tiene en cuenta todos los tipos de envío válidos (compatibles por zona).
  • Cuando los productos tienen personalizaciones del transporte, el sistema solo tiene en cuenta los incluidos en esas personalizaciones y que, además, sean válidos (compatibles por zona).
  • El sistema ordena los tipos de envío que quedan según el valor de la prioridad, y lo hace siempre de número mayor a menor (los números mayores serán lo primeros).
  • Los tipos de envío restrictivos tienen más “peso” que los tipos de envío no restrictivos cuando hay productos con personalizaciones del transporte.
  • El sistema siempre intenta asignar el tipo de envío con el número de prioridad mayor (los primeros después de ordenarlos). Sin embargo, debido al punto anterior:
    • (1) Si no hay productos con personalizaciones, el sistema tiene en cuenta todos los tipos de envío válidos (compatibles por zona). En la ordenación, los tipos de envío no restrictivos tienen preferencia frente a los restrictivos (es decir, los no restrictivos se colocan por encima de los restrictivos porque el sistema, siempre que puede, prefiere los tipos de envío no restrictivos).
    • (2) Si hay productos con personalizaciones, en la ordenación, los tipos de envío restrictivos tienen prioridad ante los no restrictivos (es decir, los restrictivos se sitúan por encima de los no restrictivos porque el sistema intenta que la expedición se envíe mediante el tipo de envío restrictivo; si resulta imposible, se envía mediante el tipo de envío no restrictivo).
  • El sistema siempre intenta minimizar el número de expediciones , de manera que coloca el máximo de productos en cada expedición. Por eso:
    • Los productos sin personalizaciones del transporte se pueden transportar con cualquier tipo de envío (tanto si es restrictivo como si no lo es).
    • Los productos que tienen definidas personalizaciones del transporte solo se enviarán mediante el tipo de envío asociado a la personalización. Existe una excepción, concretamente, cuando el tipo de envío es restrictivo (se explica en el punto (3) a continuación).
    • (3) Mediante los tipos de envío restrictivos se pueden transportar productos que tengan personalización del transporte, pero con tipos de envío NO restrictivos y que tengan una prioridad igual o superior a la del restrictivo (este es justamente el motivo por el cual existen los envíos restrictivos).
  • Cuando el sistema evalúa si un tipo de envío puede asumir el transporte de un conjunto de productos siempre examina que sus intervalos encajen con el peso y el importe de la expedición que resulte; en caso contrario, se descarta el tipo de envío.
  • El sistema intenta colocar el máximo de productos en cada expedición (justamente para minimizar el número de expediciones). Para lograrlo, intenta que, mediante cada prioridad (los tipos de envío de cada prioridad) se pueda enviar el máximo número de productos que esta tenga asociados. Veamos los procesos que se siguen en cada uno de los dos casos:
    • Si hay productos con personalización, tienen preferencia los tipos de envío restrictivos, tal como se indica en la norma (2):
      • Se empieza, como siempre, por la prioridad de mayor número (la primera de entre los tipos de envío restrictivos).
      • Si en esa prioridad hay más de un tipo de envío, significa que hay productos con personalización que apuntan a tipos de envío de la misma prioridad (recordemos que el sistema solo tiene en cuenta los incluidos en esas personalizaciones).
      1. Como la prioridad es restrictiva (sus tipos de envío lo son), asume el transporte de otros productos, de acuerdo con la norma (3). Por lo tanto, mediante esta prioridad se transportarán los productos que tenían alguna personalización de esa prioridad más los que pueda asumir teniendo en cuenta la prioridad que se está evaluando [según la norma (3)]. Este conjunto de productos puede ser distinto en cada iteración; dependerá de las personalizaciones que tenga asociadas cada producto, es decir, si tiene personalizaciones que afecten a tipos de envío de una prioridad u otra.
        El sistema evalúa si todos esos productos se pueden enviar mediante los tipos de envío de la prioridad que se está examinando, teniendo en cuenta que este proceso se repetirá, en caso necesario, para las prioridades restrictivas únicamente (las que se colocan por encima). Si todos los productos se pueden enviar mediante un solo tipo de envío, habrá una sola expedición. Si todos los productos se pueden enviar mediante más de un tipo de envío, se creará una sola expedición que contendrá los posibles tipos de envío para que el usuario pueda escoger con cuál quiere que se envíe esa expedición. Si no es el caso, se examina si se pueden enviar todos los productos, mediante una combinación de tipos de envío (por ejemplo, unos productos se transportan mediante un tipo de envío y el resto, mediante otro tipo de envío). En caso afirmativo, se crearán tantas expediciones como tipos de envío haya involucrados. Si no se han generado expediciones, se repite este proceso con la siguiente prioridad restrictiva.
      2. Si el proceso anterior acaba sin expediciones es porque no se han podido enviar todos los productos involucrados en cada caso (en cada prioridad). Se repite entonces el proceso 1, pero iterando sobre las prioridades no restrictivas (las que se quedan en el grupo de restrictivas).
      3. En caso de que tampoco pueda (no se genera ninguna expedición), el sistema vuelve a asumir productos como en el punto 1 y evalúa si alguno se puede enviar mediante alguno de los tipos de envío de la prioridad que se está examinando, teniendo en cuenta que este proceso se repetirá, en caso necesario, para las prioridades restrictivas únicamente (las que se colocan encima). Esto significa que se relaja la condición de transportar el máximo de productos en cada expedición. En caso afirmativo, se generan las expediciones correspondientes. Los productos sin envío se evaluarán más tarde para ver si se pueden enviar mediante tipos de envío de otra prioridad. Si no se han generado expediciones o quedan productos sin envío, se repite este proceso con la siguiente prioridad restrictiva.
      4. En caso de que no sea posible (no se pueden enviar todos los productos, ni siquiera creando varias expediciones), el sistema descarta productos asumidos y evalúa solo los que tienen personalización de prioridad igual a la que se está examinando, teniendo en cuenta que este proceso se repetirá, en caso necesario, para las prioridades restrictivas únicamente (las que se colocan por encima). Si alguno de esos productos se puede enviar mediante alguno de los tipos de envío, se generan las expediciones correspondientes. Los productos sin envío se evaluarán más tarde para ver si se pueden enviar mediante tipos de envío de otra prioridad. Si no se han generado expediciones o quedan productos sin envío, se repite este proceso con la siguiente prioridad restrictiva.
      5. En caso de que no se puedan crear expediciones, se repite el proceso 3, pero iterando sobre las prioridades no restrictivas (las del grupo de no restrictivas).
      6. Si tampoco se puedan crear expediciones, se repite el proceso 4, pero iterando sobre las prioridades no restrictivas (las del grupo de no restrictivas).
      7. En este punto es posible que haya productos sin personalización del transporte que no se puedan transportar mediante ningún tipo de envío de los que se están evaluando (recordemos que solo se han tenido en cuenta los incluidos en las personalizaciones). Para evitar esta situación, este grupo de productos se trata nuevamente, pero esta vez con los procesos que se usan cuando todos los productos son sin personalización (siguiente caso).
      8. Si, después de todas estas evaluaciones y procesos, hay productos que no se han podido incluir en alguna expedición, se agruparán bajo el nombre de “productos no entregables”. El usuario que está realizando el proceso de compra decidirá si elimina o no esos productos de la cesta para poder tramitar la compra.
    • Si todos los productos son sin personalización, los no restrictivos tienen preferencia, tal como se indica en la norma (1) (recordemos que, en este caso, el sistema tiene en cuenta todos los tipos de envío compatibles):
      1. Se empieza, como siempre, por la prioridad de mayor número (la primera de entre los no restrictivos).
      2. El sistema evalúa si todos los productos se pueden enviar mediante los tipos de envío de la prioridad que se está examinando, teniendo en cuenta que este proceso se repetirá, en caso necesario, para las prioridades no restrictivas únicamente (las que se colocan por encima). Si todos los productos se pueden enviar mediante un solo tipo de envío, habrá una sola expedición. Si todos los productos se pueden enviar mediante más de un tipo de envío, se creará una sola expedición que contendrá los posibles tipos de envío para que el usuario pueda escoger con cuál quiere que se transporte esa expedición. Si no es el caso, se examina si se pueden enviar todos los productos, aunque sea mediante una combinación de tipos de envío. En caso afirmativo, se crean tantas expediciones como tipos de envío haya involucrados. Si no se han generado expediciones, se repite este proceso con la siguiente prioridad no restrictiva.
      3. En caso de que no se puedan crear expediciones, se repite el proceso 2, pero iterando sobre las prioridades restrictivas (las del grupo de restrictivas).
      4. En caso de que no se genere ninguna expedición, el sistema evalúa si alguno de los productos se puede enviar mediante alguno de los tipos de envío de la prioridad que se está examinando, teniendo en cuenta que este proceso se repetirá, en caso necesario, para las prioridades no restrictivas únicamente (las que se colocan por encima). En caso afirmativo, se generan las expediciones correspondientes. Los productos sin envío se evaluarán más tarde para ver si se pueden transportar mediante tipos de envío de otra prioridad. Si no se han generado expediciones o quedan productos sin envío, se repite este proceso con la siguiente prioridad no restrictiva.
      5. En caso de que no se puedan crear expediciones, se repite el proceso 4, pero iterando sobre las prioridades restrictivas (las del grupo de restrictivas).
      6. Si, después de todas estas evaluaciones y procesos, hay productos que no se han podido incluir en alguna expedición, se agruparán bajo el nombre de “productos no entregables”. El usuario que está realizando el proceso de compra decidirá si elimina o no esos productos de la cesta para poder tramitar la compra.

Ejemplos

La división de las entregas en varias expediciones puede resultar bastante compleja. La mejor manera de entender por qué ocurren las divisiones es mediante ejemplos. Veamos algunos:

Ejemplo 1

Supongamos que el Commerce comercializa muebles y objetos de decoración. Habrá productos como, por ejemplo, una figura de porcelana, que puede ser transportada en un vehículo pequeño, de manera más económica. Habrá otros productos, como un armario, que necesitará un transporte especial en un vehículo de mayor tamaño y, en consecuencia, más caro.

En este caso, habrá dos tipos de envío: reparto especial ( R1 para objetos de grandes dimensiones) y reparto normal ( R2 para objetos de tamaño normal). A R1 se le asigna la prioridad 1 y consta de intervalos que contemplan rangos de mayor peso, pero también es más caro. A R2 se le asigna la prioridad 2 y consta de intervalos que contemplan rangos de menor peso, de tal manera que, un objeto pesado (como un armario) queda fuera de sus intervalos.

En una situación normal, el sistema asignará el tipo de envío con el número de prioridad mayor. En este caso, asignará R2 a las expediciones porque es el tipo de envío que el Commerce ha considerado más estándar (el que tiene el vehículo asociado más pequeño y, por tanto, el más económico). Supongamos, no obstante, que para R2 se han configurado intervalos de peso que encajan con el peso de un armario y se realiza la venta de uno. Como el sistema asignará el tipo de envío al vehículo pequeño (R2), el armario no se podrá transportar porque no cabe dentro del vehículo. Esto supondrá un problema para el Commerce porque los portes se han calculado con las tarifas del transporte pequeño; como tendrá que transportarlo con el vehículo grande correspondiente, también tendrá que asumir la diferencia en el coste.

Para que esto no ocurra, es necesario asignar una personalización del transporte en el producto. En este caso, se asigna el tipo de envío R1 al armario. Cuando un usuario compre un armario, el sistema detectará que tiene una personalización y, en lugar de asignar el tipo de transporte por la prioridad, asignará el que tiene personalizado. De este modo, la expedición la realizará R1, y el posible sobrecoste se repercutirá de manera adecuada.

Supongamos ahora que un usuario compra un armario y una figura de porcelana. El sistema detecta que el armario tiene una personalización y, en principio, asigna R1 para transportar la expedición. Como la figura de porcelana no tiene personalización del transporte, se puede transportar mediante cualquier tipo de envío. Como el sistema siempre intenta minimizar el número de expediciones, en la misma expedición se transportará el armario y la figura de porcelana, es decir, mediante R1.

Supongamos —para complicarlo un poco más— que ahora la figura de porcelana tiene R2 como personalización del transporte (porque, en condiciones normales, el Commerce prefiere que se envíe con un transporte normal). Si un usuario compra un armario y una figura de porcelana, el sistema detecta que cada producto tiene una personalización, por lo que, según la configuración, uno se debe transportar mediante R1 y el otro, mediante R2. Esta situación genera una división de la entrega original en dos expediciones: por un lado, se enviará el armario mediante R1 y, por el otro, la figura de porcelana con R2.

En caso de que se quiera evitar esta situación, se deberá configurar R1 como restrictivo. Los tipos de envío restrictivos pueden asumir el transporte de productos que tengan personalización con tipos de envío no restrictivos y prioridad con número más grande. Dado que tenemos R2 no restrictivo con prioridad 2 (mayor que la de R1), R1 (el vehículo grande) asumirá también el transporte de la figura de porcelana. Por lo tanto, en la misma expedición se transportarán el armario y la figura de porcelana.

Ejemplo 2

Este ejemplo se centra en la división a causa de los tipos de envío. Como se verá, pueden darse muchos casos. Para que el ejemplo sea lo más completo posible, expondremos situaciones parciales y su peor caso para poder proceder con el siguiente paso.

Si observas alguna incoherencia, no lo tengas en cuenta: hemos forzado las situaciones para poder profundizar en la explicación, ya que son casos poco probables.

Supongamos que tenemos configurados estos tipos de envío:

Tipos de envío

Prioridad

Restrictivo

T1

1

T2

1

T3

2

T4

2

NO

T5

3

T6

3

NO

T7

3

NO

T8

4

NO

Supongamos que tenemos una entrega con cuatro productos: P1, P2, P3 y P4. El sistema no ha dividido todavía esta entrega y llega el momento de decidir si hay que hacerlo a causa de los tipos de envío. Estos productos tienen personalizaciones del transporte:

Prioridad (restrictivo) - Tipo de envío

P1

P2

P3

P4

1 (R) - T1

X




1 (R) - T2





2 (R) - T3





2 - T4



X


3 (R) - T5

X



X

3 (R) - T6

X




3 - T7

X




4 - T8





Como existen productos con personalizaciones, solo se evalúan los tipos de envío que estén involucrados, y se ordenan por número de mayor a menor con el grupo de restrictivas primero:

Prioridad

Tipo de envío

3 (R)

T5 y T6

1 (R)

T1

3

T7

2

T4

Las situaciones que aparecen a continuación marcadas con (**) son casos particulares que se retomarán al final de este documento.

Proceso 1

El sistema empieza evaluando la prioridad 3 (R). Hay 2 tipos de envío asociados a esta prioridad. Además, hay una personalización del transporte asociada a T5 por parte de P1 y P4, y otra asociada a T6 por parte de P1. Como la prioridad es restrictiva (los tipos de envío de esa prioridad son restrictivos), pueden asumir el transporte de productos sin personalización o con personalización que tengan una prioridad con número mayor. En este caso, solo puede transportar P2.

Ahora el sistema tiene que buscar transporte a los productos P1, P2 y P4, y tiene T5 y T6 como posibles tipos de envío. Con el fin de determinar las expediciones que se van a necesitar para enviar P1, P2 y P4 (enviarlos todos):

  • El sistema evalúa si se puede enviar P1, P2 y P4 mediante T5 y T6.

    • En caso afirmativo, se genera una expedición que tendrá T5 y T6 como tipos de envío. El usuario tendrá que escoger si quiere que el reparto se haga mediante T5 o T6. El sistema ya sabe cómo transportar esos tres productos, pero todavía quedan otros por enviar; por lo tanto, pasa a la siguiente prioridad.

  • En este caso, no es posible realizar el transporte porque P4 tiene una personalización asociada a T5, la cual impide que T6 pueda transportar el producto.

  • El sistema evalúa si se puede transportar P1, P2 y P4 mediante T5.

  • En caso afirmativo, se genera una expedición que tendrá T5 como tipo de envío. Igual que antes, el sistema ya sabe cómo enviar esos tres productos, pero al quedar más productos por transportar, pasaría a la siguiente prioridad.

    • Supongamos que no puede porque el peso de P1 + P2 + P4 excede los rangos creados en los intervalos de T5.

    • El sistema evalúa si P1, P2 y P4 se pueden transportar mediante T6.

      • En caso afirmativo, se genera una expedición que tendrá T6 como tipo de envío. El sistema ya sabe cómo enviar esos tres productos, pero, como faltan otros por enviar, pasa a la siguiente prioridad.

    • En este caso no es posible porque P4 tiene una personalización asociada a T5, que impide que T6 pueda transportar el producto.

    • El sistema evalúa si se puede transportar P1, P2 y P4 mediante alguna combinación de T5 o T6.

      • (**) El sistema determina que P1 y P4 se pueden enviar mediante T5, y que P2 se puede transportar mediante T6. Se generan dos expediciones, una para P1 y P4 con T5 como tipo de envío, y otra para P2 con T6 como tipo de envío. El sistema ya sabe cómo transportar esos tres productos, pero al quedar otros por enviar, pasa a la siguiente prioridad.

    • (*) Supongamos que no se puede transportar P2 mediante T6 porque el peso o el importe, o una combinación de ambas condiciones, excede los definidos en sus intervalos. Al no poder transportar todos los productos que le corresponden, se pasará a la siguiente prioridad.

(**) Llegados a este punto, P1, P2 y P4 se envían de algún modo, es decir, se han incluido en alguna expedición que se transportará mediante T5, T6 o ambos. Nos queda P3 (Situación 1).

Proceso 1 (siguiente iteración)

Retomemos la última situación descrita (*) . El sistema pasa a la siguiente prioridad, es decir, 1 (R). Hay un tipo de envío restrictivo, T1, asociado a esta prioridad. Además, T1 tiene asociada una personalización del transporte por parte de P1. Como la prioridad es restrictiva, puede asumir el transporte de productos sin personalización o con personalización no restrictiva que tengan una prioridad con número mayor: P2 y P3. Con el fin de determinar las expediciones que se van a necesitar para transportar P1, P2 y P3 (enviarlos todos):

  • El sistema evalúa si se puede enviar P1, P2 y P3 mediante T1.

    • (**) En caso afirmativo, se genera una expedición que tendrá T1 como tipo de envío. Igual que antes, el sistema ya sabe cómo enviar esos tres productos, pero, al quedar otros productos por enviar, pasa a la siguiente prioridad.

  • (*) Supongamos que no puede porque el peso o el importe de P1 + P2 + P3, o una combinación de ambos, excede los rangos creados en los intervalos de T1.

(**) Llegados a este punto, P1, P2 y P3 se envían en una expedición que transporta T1. Nos quedaría P4 (Situación 2).

Proceso 2

De nuevo, retomemos la última situación descrita (*) . De momento, ni los tipos de envío de prioridad 3 (R) ni el de prioridad 1 (R) pueden enviar todos los productos que les corresponde. El sistema pasa a la siguiente prioridad. Como se ha acabado el grupo de tipos de envío restrictivos, se empieza por el grupo de no restrictivos, cuya primera prioridad es la 3. Asociado a esta prioridad existe un tipo de envío no restrictivo, T7. Además, T7 tiene asociada una personalización del transporte por parte de P1. Como la prioridad es no restrictiva, puede asumir el transporte de productos sin personalización. En este caso, puede enviar P2. Con el fin de determinar las expediciones que se van a necesitar para transportar P1 y P2 (enviarlos todos):

  • El sistema evalúa si se puede transportar P1 y P2 mediante T7.

    • (**) En caso afirmativo, se genera una expedición que tendrá T7 como tipo de envío. Igual que antes, el sistema ya sabe cómo enviar esos tres productos, pero, dado que faltan por transportar, pasa a la siguiente prioridad.

  • (*) Supongamos que no puede porque el peso o el importe de P1 + P2, o ambos, excede los rangos creados en los intervalos de T7.

(**) Llegados a este punto, P1 y P2 se incluyen en una expedición que transporta T7. Nos quedaría P3 y P4 (Situación 3).

Proceso 2 (siguiente iteración)

Continuemos con la última situación descrita (*) . El sistema pasa a la siguiente prioridad, es decir, 2. Hay un tipo de envío no restrictivo asociado a esta prioridad, T4. Además, T4 tiene asociada una personalización del transporte por parte de P3. Como la prioridad es no restrictiva, puede asumir el transporte de productos sin personalización. En este caso, puede asumir el envío de P2. Con el fin de determinar las expediciones que se van a necesitar para transportar P2 y P3 (enviarlos todos):

  • El sistema evalúa si se puede transportar P2 y P3 mediante T4.

    • (**) En caso afirmativo, se genera una expedición cuyo tipo de envío es T4. Igual que antes, el sistema ya sabe cómo transportar esos tres productos, pero, al quedar más por enviar, pasa a la siguiente prioridad.

  • (*) Supongamos que no puede porque el peso o el importe de P2 + P3, o ambos, excede los rangos creados en los intervalos de T4.

(**) Llegados a este punto, P2 y P3 se incluyen en una expedición que se envía mediante T4. Nos quedaría P1 y P4 (Situación 4).

Proceso 3

Siguiendo con el ejemplo, analicemos la última situación descrita (*) . Ni las prioridades restrictivas, ni las no restrictivas han podido enviar todos los productos que les correspondía. Ahora el sistema vuelve a empezar por las prioridades restrictivas, pero evalúa si puede enviar alguno de esos productos, es decir, se relaja la condición de transportar el máximo de productos en cada expedición. El sistema dejará los productos que no se pueden enviar mediante los tipos de envío con esa prioridad para evaluar si los puede transportar mediante los tipos de envío con las siguientes prioridades.

Volvemos a la prioridad 3 (R). Hay 2 tipos de envío asociados a esta prioridad. Además, T5 tiene asociada una personalización del transporte por parte de P1 y P4, y T6 tiene asociada una personalización del transporte por parte de P1.

Como la prioridad es restrictiva —los tipos de envío de esa prioridad son restrictivos—, puede asumir el transporte de productos sin personalización o con personalización que tengan una prioridad con número mayor. En este caso, puede asumir el transporte de P2 únicamente.

Ahora el sistema tiene que buscar transporte a los productos P1, P2 y P4, y tiene T5 y T6 como posibles tipos de envío. Con el fin de determinar las expediciones que se van a necesitar para transportar P1 o P2 o P4:

  • El sistema evalúa si se puede enviar P1 o P2 o P4 mediante T5 o T6.

    • Aquí se podría dar el caso de que solo P1 y P4 se puedan transportar mediante T5, y T6 no pueda asumir el envío de P2 (el cual quedará pendiente); o que P1 y P4 se puedan enviar mediante T5, y que T6 pueda asumir el envío de P2; o que se pueda enviar P1 mediante T5, y T6 pueda asumir el transporte de P2 (P4 se quedaría pendiente) o alguna combinación similar.
      El caso de éxito sería que se transportaran los tres productos. Igual que antes, el sistema ya sabe cómo enviar esos tres productos, pero, al quedar otros por transportar, pasa a la siguiente prioridad.

  • Para que la coherencia no se vea muy afectada, tomemos como caso negativo el primero, donde solo se envía P4 mediante T5, y quedan pendientes P1 y P2.

Para no alargar mucho el ejemplo, simplificaremos a partir de aquí las situaciones. Nos quedamos en el punto en que se ha enviado P4 mediante T5, y quedan pendientes P1, P2 y P3.

Proceso 3 (siguiente iteración)

Retomemos la última situación del ejemplo. El sistema pasa a la prioridad 1 (R). Hay un tipo de envío restrictivo asociado a esta prioridad, T1. Además, T1 tiene asociado una personalización del transporte por parte de P1. Como la prioridad es restrictiva, puede asumir el transporte de productos sin personalización o con personalización no restrictiva que tengan una prioridad con número mayor: P2 y P3. Por lo tanto, quedan P1, P2 y P3:

  • Si se puede transportar P1 o P2 o P3 (o los tres) mediante T1 se configurará la expedición correspondiente.

  • Supongamos, como caso negativo, que T1 asume el envío de P3, y que quedan pendientes P1 y P2.

Proceso 4

Siguiendo con el ejemplo, como quedan todavía productos por enviar se repetiría el proceso 3, pero sin asumir productos. Nos quedan por asignar transporte a P1 y P2. Empezamos por la prioridad 3 (R), que tiene asociados T5 y T6. Hay una personalización del transporte asociada a T5 por parte de P1 y P4, y T6 tiene asociada una personalización del transporte por parte de P1. Como ya se ha transportado P4 y no se pueden asumir productos, solo queda P1:

  • Si se puede transportar P1 mediante T5 o T6, se configurará la expedición correspondiente.

  • Supongamos, como caso negativo, que no se puede transportar P1 mediante ninguno de estos tipos de envío. P1 quedará pendiente.

Proceso 4 (siguiente iteración)

Siguiendo con el ejemplo, como todavía quedan productos, el sistema pasaría a la siguiente prioridad, es decir, 1 (R). En esta prioridad está T1, que tiene asociada una personalización del transporte por parte de P1. Como no se pueden asumir productos, solo queda P1:

  • Si se puede transportar P1 mediante T1, se configurará la expedición correspondiente.

  • Supongamos, como caso negativo, que no es posible. P1 quedará pendiente.

Proceso 5

Siguiendo con el ejemplo, como todavía quedan productos por enviar, se repetiría el proceso 3, esta vez usando prioridades no restrictivas. Queda por asignar transporte a P1 y P2.

Se empieza por la primera prioridad, es decir, la 3; esta tiene asociado el tipo de envío T7 y el producto P1. Como T7 puede asumir productos, podrá transportar P1 y P2:

  • Si se puede enviar P1 o P2 mediante T7, se configurarán las expediciones correspondientes.

  • Supongamos, como caso negativo, que se puede enviar P2 mediante T7, y que P1 queda pendiente.

  • (1) Supongamos, como caso negativo alternativo especial (veremos por qué), que se puede transportar P1 mediante T7 y que, debido al peso, queda pendiente P2.

Proceso 5 (siguiente iteración)

Como quedarán productos, se continúa con la prioridad 2, que está asociada a T4. Este tipo de envío puede transportar P3 y asumir P2, pero como de P3 ya se encarga T1 y como el único producto vinculado a T4 es P3, esta prioridad se ha quedado “vacía” y se descarta.

Sigue quedando pendiente P1.

(1) Para esta alternativa también se descarta la prioridad 2. Queda pendiente P2.

Proceso 6

Como quedan productos por enviar, se repite el proceso 5, pero sin asumir productos. Se empieza por la prioridad 3, la cual tiene asociados el tipo de envío T7 y el producto P1:

  • Si se puede transportar P1 mediante T7, se configura la expedición correspondiente.

  • Supongamos, como caso negativo, que no es posible.

(1) En esta alternativa, como no se pueden asumir productos mediante la prioridad 3, no se podrá transportar P2. Queda pendiente P2.

Proceso 6 (siguiente iteración)

Siguiendo con el ejemplo, el sistema pasa a la prioridad 2. Como hemos visto, el único tipo de envío en este caso es T4. Dado que está vinculado a P3, se descarta.

(1) En esta alternativa también se descarta la prioridad 2. P or lo tanto, queda P2 .

Proceso 7

Este proceso solo se ejecuta con el caso alternativo (1) que hemos indicado en el proceso 5. Es posible que haya productos sin personalización del transporte, como en el caso de P2, que ningún tipo de envío de los que se están evaluando (recordemos que solo se han tenido en cuenta los incluidos en las personalizaciones) ha podido transportar. Para evitar esta situación, estos productos se tratan nuevamente, pero esta vez con los procesos que se usan cuando todos los productos son sin personalización.

Cuando los productos no tienen personalización, se tienen en cuenta todos los tipos de envío compatibles por zona geográfica. Por tanto, es muy probable que si algún producto sin personalización que se está evaluando en los procesos que se dan cuando hay productos con personalización involucrados se queda fuera de todas las expediciones, es decir, no se puede asociar a ningún tipo de envío, en este segundo tratamiento encuentre algún tipo de envío que lo pueda transportar.

Siguiendo el ejemplo, es muy probable que se pueda transportar P2 mediante T2, T3 o T8, que son los tipos de envío que no se han tenido en cuenta por las personalizaciones del transporte.

Proceso 8

Si, llegados a este punto, quedan productos que no se pueden transportar por medio de ningún tipo de envío, se agrupan bajo el nombre de “productos no entregables”. En este caso, se crearía una agrupación que incluiría a P1. Esta agrupación puede mostrarse al usuario que está realizando la compra, quien decidirá si elimina o no esos productos de la cesta para poder tramitar la compra.

Situaciones alternativas (**)

Situación 1

Queda P3. Pasaría lo siguiente:

  • La siguiente iteración es 1 (R), que tiene como tipo de envío T1. Como está asociado a P1, se descartaría porque el producto ha sido asociado a otro tipo de envío en una iteración anterior.

  • El sistema pasaría a las prioridades no restrictivas, empezando por la 3. Está T7, mediante el cual solo se puede transportar P1 y P2. Como estos productos ya tienen transporte, se descarta.

  • El sistema pasaría a la prioridad 2. Está T4, con el que se puede enviar P3. Se crearía la correspondiente expedición y finalizarían los procesos.

  • Situación final: se crean 2 expediciones ; una para transportar P1, P2 y P4, mediante T5 o T6 (según se elija); y otra para transportar P3, mediante T4.

Situación 2

Queda P4. Pasaría lo siguiente:

  • Como no se puede transportar mediante los tipos de envío con prioridades restrictivas, el sistema evalúa los que tienen prioridades no restrictivas, empezando por la prioridad 3. En este caso, está T7, mediante el cual solo se puede transportar P1 y P2. Como estos productos ya tienen transporte, se descarta.

  • El sistema pasaría a la prioridad 2. En este caso, está T4, con el que solo se puede transportar P2 y P3, pero estos productos ya tienen transporte asignado. Por lo tanto, se descarta.

  • Volvemos a las prioridades restrictivas, empezando por la prioridad 3 (R), cuyos posibles tipos de envío son T5 y T6. Como en esta vuelta solo se exige que los tipos de envío puedan transportar alguno de los productos (se relaja la condición de transportar el máximo de productos en cada expedición), se comprueba que se pueda enviar P4 mediante T5. Se crearía la expedición correspondiente y finalizarían los procesos.

  • Situación final: se crean 2 expediciones ; una para transportar P1, P2 y P3, mediante T1; y otra para transportar P4, mediante T5.

Situación 3

Quedan P3 y P4. Pasaría lo siguiente:

  • La siguiente iteración es 2, cuyo tipo de envío es T4, el cual puede transportar P3. Se crearía la expedición y quedaría P4.

  • Volvemos a las prioridades restrictivas; se relaja la condición de transportar el máximo de productos por expedición. Se empieza por 3 (R), cuyos tipos de envío asociados son T5 y T6; P4 se puede enviar mediante T5. Se crearía la expedición correspondiente y finalizarían los procesos.

  • Situación final: se crean 3 expediciones ; una para transportar P1 y P2, mediante T7; otra para transportar P3, mediante T4; y otra para transportar P4, mediante T5.

Situación 4

Quedan P1 y P4. Pasaría lo siguiente:

  • Volvemos a los restrictivos; se relaja la condición de transportar el máximo de productos por expedición. Se empieza por 3 (R), cuyos tipos de envío son T5 y T6; supongamos que P4 se puede enviar mediante T5. Se crearía la expedición y quedaría P1.

  • La siguiente prioridad es 1 (R), que tiene como tipo de envío T1 y puede transportar P1. Se crearía la expedición correspondiente y finalizarían los procesos.

  • Situación final: se crean 3 expediciones; una para transportar P2 y P3, mediante T4; otra para transportar P4, mediante T5; y otra para transportar P1, mediante el tipo de envío T1.