Entregas y devoluciones LastMile: prueba, tracking y retorno
Entregas LMD- con POD (firma/foto/código/OTP), tracking público, reasignación y devoluciones LRT-.
Una entrega (LMD-) es «lleva este paquete a esta persona». Una devolución (LRT-) es lo inverso: «ve al cliente y trae la mercancía». Use entregas para los repartos diarios y devoluciones para rechazos.

El recorrido de una entrega#
- Cree la entrega: destinatario, dirección, teléfono, cantidades y bulto. Tipo normal: delivery.
- Despáchela a una ruta o conductor (pending → assigned). El conductor avanza en el móvil: in_transit al salir, arrived en la puerta (solo evento).
- Recoja el POD en la puerta → delivered, con hora y evento de tracking.
POD: prueba de entrega#
POD es «prueba de entrega». Cuatro métodos: firma en el teléfono, foto, código de barras u OTP (debe coincidir con el guardado). En el móvil, firma/foto/código es obligatorio.
El cliente lo rastrea solo#
Cada entrega lleva un token de 128 bits imposible de adivinar. Comparta el enlace; no requiere login. El cliente solo ve datos no sensibles: número, estado, destinatario, ETA y eventos; nunca teléfono ni dirección.
Fallos y devoluciones#
- Entrega fallida (in_transit → failed): motivo obligatorio. Puede reasignarse (failed → assigned). El timeline registra todos los eventos; la cancelación va como note.
- Cree la devolución (LRT-): debe vincular una entrega o recogida, más el motivo. Con «necesita recogida», el sistema crea la tarea y pasa a pickup_scheduled.
- El conductor la recoge (picked_up) → llega al centro (received_at_hub) → se reembolsa (refunded). Una devolución pending/cancelled aún puede eliminarse.