Revisión de pedidos ya asignados a un transportista
Antes de evaluar cualquier asignación nueva, el dispatcher revisa todos los pedidos que ya están con un transportista externo de un ciclo anterior, es decir, aquellos que un transportista tiene adjudicados pero con los que todavía no ha salido de la tienda.
Esto ocurre en el paso 1 de El ciclo de asignación, paso a paso, para cada tienda y en cada ciclo. Nunca afecta a pedidos nuevos ni a pedidos ya asignados a tu flota propia.
Las tres preguntas, en orden
Para cada pedido en manos de un transportista se hacen hasta tres preguntas. La primera que resuelve el pedido detiene la secuencia.
1. ¿El transportista lleva demasiado tiempo con este pedido?
Lo rige Tiempo máximo para aceptar (configurado por tienda y por transportista — ver Dónde vive cada ajuste).
- Límite superado y existe una alternativa real ahora mismo → el pedido se cancela con el transportista de inmediato y queda libre para reasignarse en este mismo ciclo.
- Límite superado pero no existe alternativa → el pedido se deja exactamente como está. Cancelarlo solo lo dejaría peor, sin ningún sitio mejor al que enviarlo.
- Límite no alcanzado → se pasa a la pregunta 2.
2. ¿La propia estimación del transportista para llegar a la tienda se está desviando demasiado?
Lo rige Tiempo máximo para llegar a la tienda (por tienda y por transportista).
Si la hora estimada de llegada del transportista a la tienda se ha desviado más allá de este límite, el pedido se cancela de inmediato, exista o no una alternativa. Una estimación poco fiable del propio transportista es motivo suficiente para desistir.
3. ¿Seguimos dentro de la ventana de cancelación gratuita y nuestra flota propia tiene hueco?
Lo rige Ventana de cancelación gratuita (por transportista, para toda la empresa).
Si la respuesta a ambas es sí, el pedido se marca como sin asignar, pero solo en la memoria de trabajo del dispatcher. No se guarda nada y no se cancela nada con el transportista todavía. El pedido simplemente vuelve a entrar en el proceso normal de asignación de esa tienda, igual que cualquier otro pedido sin asignar de ese ciclo.
No es una rutina especial de "probar con flota propia". A partir de aquí el dispatcher no tiene ninguna noción de que ese pedido estuviera con un transportista: pasa por Modo PG, Google OR-Tools y transportistas externos como todo lo demás, con las mismas reglas.
Si el proceso normal le asigna un repartidor propio, ocurren dos cosas en orden estricto:
- Se envía una cancelación real al transportista externo original.
- Solo si esa cancelación tiene éxito, se guarda la nueva asignación al repartidor interno.
Si la cancelación falla, el paso 2 no llega a ocurrir: no cambia nada y el pedido sigue con el transportista. Así se evita un estado confuso en el que un mismo pedido parece asignado en dos sitios a la vez.
Si el proceso normal no lo coloca con ningún repartidor propio, se descarta la marca en memoria. El pedido vuelve a estar exactamente como estaba —válidamente asignado al transportista— como si nada hubiera pasado. En este caso nunca se envía ninguna cancelación.
Las preguntas 1 y 2 se parecen pero comparan cosas distintas
Es la principal fuente de confusión de esta página.
| Pregunta | Qué compara realmente | Consecuencia |
|---|---|---|
| Tiempo máximo para aceptar | Tiempo real transcurrido: ahora, frente al momento en que se entregó el pedido al transportista. Solo falla cuando ha pasado de verdad suficiente tiempo de reloj. | Cancela, pero solo si existe una alternativa |
| Tiempo máximo para llegar a la tienda | La promesa del propio transportista: su estimación de llegada, frente al momento en que se le entregó el pedido. Nunca mira la hora actual. Puede fallar a los pocos segundos si su propia estimación ya es demasiado lejana. | Cancela haya o no alternativas |
| Ventana de cancelación gratuita | El mismo tipo de comparación que Tiempo máximo para aceptar (ahora frente al momento de asignación), pero con otra consecuencia: superarla no cancela nada por sí misma. Solo abre la puerta al intento sin compromiso con la flota propia descrito arriba. | Habilita el reintento sin riesgo |
Qué pasa si el intento con flota propia no sale bien
El pedido se excluye deliberadamente de la pasada de respaldo a transportistas de ese mismo ciclo: no se vuelve a evaluar frente a transportistas en esta ejecución.
Es intencionado. El pedido ya está válidamente asignado a un transportista, así que repetir la pasada de respaldo sería redundante en el mejor de los casos, y podría generar una segunda asignación en conflicto para un pedido que ya tiene una. El pedido continúa con su asignación existente hasta la siguiente comprobación relevante: un ciclo futuro, o un fallo real en el tiempo de entrega.
Por qué esto importa
Sin esta revisión, un pedido podría quedarse indefinidamente con un transportista lento o que no responde, o seguir ahí incluso después de que tu flota propia hubiera quedado libre para llevarlo antes.
El intento con flota propia es deliberadamente libre de riesgo: si no cuaja, el pedido se queda exactamente como estaba, el transportista ni se entera, y nunca se cancela nada sin tener ya un sustituto confirmado.