Introducción
Para garantizar que los pedidos con envío a domicilio se acepten únicamente cuando haya repartidores disponibles y para proporcionar estimaciones precisas en términos del tiempo de entrega estimado (EDT) y el costo de la entrega, la función Promise (Promesa) se implementará tanto para las entregas propias como para las entregas por medio de DSP.
Una vez que el usuariohaya seleccionado la ubicación de entrega y se hayan identificado las tiendas que realizan entregas en esta dirección, el sistema enviará solicitudes de promesas a estas tiendas.
Si hay tanto tiendas con envío como tiendas sin envío que realizan entregas en la ubicación del cliente, se dará preferencia a las tiendas con envío siempre que existan promesas válidas disponibles para ellas.
Se compararán las respuestas de promesa: cada respuesta de promesa incluirá un token de promesa, el precio y la hora.
Aquí hay un gráfico general que representa un mapa de procesos para esto:
¿Cómo funciona?
Generación de promesas por tienda
La generación de promesas se implementa por tienda, ya que esta se seleccionó por la zona de entrega, y las estimaciones también se proporcionarán en función de la proximidad del conductor a la tienda y al cliente. Cada tienda puede seleccionar sus preferencias de entrega: la más rápida o la más económica. La tienda genera una promesa según la información actual sobre los conductores y los DSP que tiene a disposición.
Para la configuración más económica, hay que hacer lo siguiente:
- Tanto para los pedidos “ASAP” como para los pedidos programados, siempre se prefieren los conductores propios. En caso de que no haya conductores disponibles, se planifica una ruta nueva para el conductor que se desocupe más rápido y el EDT se calcula de la siguiente manera:
- Tiempo que el conductor tardará hasta que termine su ruta de entrega actual + tiempo para terminar cualquier otra ruta previamente planificada + tiempo de espera (según el CMS) + 3 minutos + EDT al cliente
- Si no hay conductores propios disponibles para la tienda actual, se analizarán las promesas de entrega por medio de DSP: cada DSP genera una promesa que contiene el EDT (tiempo estimado de entrega), el EPT (tiempo estimado de recogida) y el costo.
- Se comparan los costos y se elige la promesa más económica.
- Si un DSP no puede proporcionar un costo de entrega estimado, se le dará una prioridad más baja en la comparación.
- Si hay varios DSP y ninguno proporciona el costo de entregaestimado, se seleccionará el primero de la lista y la promesa contendrá un valor “nulo” en el EDT.
- Si no hay conductores propios ni DSP disponibles, el campo Promise quedará vacío.
Para la configuración más rápida, hay que hacer lo siguiente:
-
Para pedidos “ASAP” y pedidos programados, se preferirán los conductores propios para hacer entregas.
-
Se calcula el EDT de cada conductor disponible y el EDT más rápido se incluye en la promesa.
-
En caso de que los conductores propios estén en ruta o no disponibles en ese momento, el algoritmo de la promesa analizará las opciones de los DSP.
-
Cada DSP genera una promesa, que contiene el EDT (tiempo estimado de entrega), el EPT (tiempo estimado de recogida) y el costo.
-
Los EDT se compararán y el más rápido se añadirá a la promesa.
-
Algunos DSP no proporcionan el EDT. En este caso, obtendrán un valor “nulo” y se les dará una prioridad menor en la comparación.
-
Si hay varios DSP y ninguno proporciona el EDT, el campo de promesa contendrá un valor “nulo”.
-
Si no hay DSP habilitados para la tienda actual o no hay DSP disponibles, se planificará una nueva ruta para el conductor que se desocupe más rápido y el EDT se calculará de la siguiente manera:
-
Tiempo que el conductor tardará hasta que termine su ruta de entrega actual + tiempo para terminar cualquier otra ruta previamente planificada + tiempo de espera (según el CMS) + 3 minutos + EDT al cliente.
-
-
Si no hay conductores propios ni DSP disponibles, el campo Promise quedará vacío.
Comparación de promesas
-
Se hará una comparación de las promesas de las tiendas que pueden realizar entregas en la ubicación indicada y se seleccionará la mejor en función de la preferencia del cliente, ya sea la más económica o la más rápida.
-
Las promesas que contienen valores nulos en el campo correspondiente, ya sea EDT o costo, recibirán un prioridad más baja en la comparación.
-
En caso de que el sistema deba seleccionar entre las mismas opciones, se preferirá la primera de la lista.
Flujo de verificación de promesas
Una vez que el cliente haya terminado de seleccionar los artículos para su pedido, se lo redirigirá a la página de pago. En este momento, se debe llevar a cabo la verificación de que la promesa sigue siendo válida:
-
El sistema hará otra llamada de verificación de promesa a la tienda seleccionada.
- Se generará la promesa y, si no está vacía, se comparará con la promesa anterior. Si los tokens coinciden, la promesa sigue siendo válida.
- Si los tokens no coinciden, se actualiza la promesa y se realiza una verificación adicional, si el tiempo y el costo siguen siendo los mismos.
- Si el tiempo o el costo han cambiado, el usuario recibirá la información actualizada y deberá confirmar el tiempo y el costo actualizados.
- Si no se pudo generar una nueva promesa, la app web o la app móvil notificará al usuario que la entrega no está disponible en esta tienda en este momento.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.