Saltar a contenido

US-014 — Vigencia y expiración de cotizaciones

Detalle de la historia

Historia

Como cliente de FleteChat, quiero ver claramente la vigencia de mi cotización y saber cuándo vence, para no asumir que un precio de hace semanas sigue valiendo y evitar sorpresas al aprobar.

Persona de usuario

Aplica a todo cliente verificado que recibe una cotización. Aplica también a FleteChat: la regla de vigencia protege sus tarifas de ser aplicadas fuera de su ventana de validez.

Contexto de negocio

Las tarifas logísticas cambian: suben con el combustible, bajan con promociones, varían con capacidad de rutas. Una cotización sin fecha de expiración se vuelve un pasivo para FleteChat (clientes que intentan aprobar meses después al precio viejo) y una trampa para el cliente final (aprueba creyendo que el precio sigue y después se entera de un ajuste).

La regla es simple: toda cotización tiene una ventana de validez comunicada desde el momento de la emisión. Pasada esa ventana, FleteChat no aprueba automáticamente al precio original: primero valida contra el catálogo vigente si los precios y los servicios siguen igual. Si siguen iguales, le propone al cliente aprobar al precio original con fecha de aprobación actualizada; si cambiaron, arma una cotización nueva tomando los mismos datos que el cliente ya proporcionó y se la presenta con el precio actualizado para que decida. El cliente nunca tiene que volver a contar su caso.

Diálogo de referencia

Vigencia visible en la cotización

Agente: ... Total: USD 1,260.00. Tiempo de tránsito estimado: 12 días. Vigencia: 7 días (hasta el 24/04/2026). Avíseme si la quiere aprobar.

Cliente intenta aprobar una vencida — precios siguen vigentes

Cliente: Apruébeme la cotización C128.

Agente: Esa cotización venció el 15/04 (hace 3 días). Déjeme revisar si los precios siguen vigentes... Listo: todos los cargos y servicios siguen iguales en nuestro catálogo. Para confirmar: voy a iniciar la aprobación al precio original, USD 1,260.00, Bogotá → Miami, LCL DDP. ¿Avanzo?

Cliente: Sí.

Agente: Le envié a su correo c@empresa.com y por aquí el enlace al formulario del embarque. Ábralo, complete los datos operativos y envíelo. Con eso le preparo las instrucciones y el enlace final para aprobar formalmente, todo al precio original. (detalle del flujo de tres pasos: intención → formulario → aprobación formal en el correo de instrucciones; ver historia de aprobación de cotización por WhatsApp.)*

Cliente intenta aprobar una vencida — precios cambiaron

Cliente: Apruébeme la cotización C150.

Agente: Esa cotización venció el 24/04 (hace 3 días). Al revisarla encontré que las tarifas cambiaron desde la emisión. Le preparé una cotización nueva con los mismos datos (Bogotá → Miami, LCL DDP, con entrega en bodega e inspección previa):

  • Flete marítimo LCL — USD 845.00 (antes USD 820.00)
  • Manejo portuario origen — USD 95.00
  • Gastos de agencia destino — USD 140.00
  • Entrega en bodega en destino — USD 120.00
  • Inspección previa al embarque — USD 85.00

Total: USD 1,285.00 (antes USD 1,260.00)

Vigencia: 7 días. ¿La apruebo con este precio actualizado? (si el cliente confirma, se inicia el flujo de aprobación de tres pasos sobre la cotización nueva — ver historia de aprobación de cotización por WhatsApp.)

Cliente pregunta cuándo vence

Cliente: ¿Cuándo se me vence la cotización que me pasaste ayer?

Agente: La cotización C150 vence el 24/04/2026, le quedan 6 días.

Criterios de aceptación

Comunicación al emitir

  1. Toda cotización emitida incluye explícitamente su fecha de vencimiento (o duración restante) en el mensaje al cliente.
  2. La vigencia aplicada es la definida por FleteChat en el parámetro correspondiente; FleteChat no la altera ni la amplía por iniciativa propia.

Validación al intentar aprobar una vencida

  1. Cuando una cotización está vencida y el cliente pide aprobarla, FleteChat no la aprueba automáticamente al precio original: primero valida contra el catálogo vigente si los cargos y servicios incluidos siguen iguales.
  2. Si todos los cargos y servicios siguen vigentes con el mismo precio, FleteChat declara al cliente que la cotización venció pero que los precios no cambiaron, repite la cotización completa, y dispara el flujo estándar de aprobación de tres pasos (ver historia de aprobación de cotización por WhatsApp): intención confirmada → envío del enlace al formulario operativo → generación y envío del correo con instrucciones y enlace de aprobación formal → click del cliente = aprobación formal. En este caso, la cotización queda renovada con nueva fecha de vigencia a partir del momento del click.
  3. Si algún cargo o servicio cambió (precio distinto, servicio descontinuado, nuevo cargo obligatorio, combinación ya no soportada), FleteChat arma automáticamente una cotización nueva reutilizando todos los datos que el cliente ya había proporcionado (ruta, modalidad, Incoterm, carga, suplidor, servicios opcionales elegidos) y se la presenta con el desglose actualizado, resaltando qué cambió respecto de la anterior. Si el cliente confirma la intención de aprobarla, FleteChat inicia sobre la cotización nueva el mismo flujo de tres pasos.
  4. La cotización nueva hereda el nivel corporativo y cualquier condición preferencial que tenía la original, aplicada al catálogo vigente.
  5. El bloqueo de auto-aprobación aplica aunque el cliente haya dicho "aprobado" antes del vencimiento pero el click formal del correo de instrucciones caiga después: FleteChat se basa en la fecha del click de aprobación formal, no del intento inicial ni del envío del formulario.

Consulta de vigencia

  1. El cliente puede pedirle a FleteChat en cualquier momento cuándo vence una cotización específica, por número o por referencia implícita ("la de ayer", "la de Miami"), y FleteChat responde con la fecha exacta y los días restantes.
  2. Al presentar una cotización vieja en una conversación retomada, FleteChat indica el estado (vigente, vencida con precios iguales, vencida con precios cambiados) antes de cualquier acción.

Trazabilidad

  1. Tanto la aprobación formal (click en el enlace del correo de instrucciones) de una cotización vencida al precio original como la generación automática de una cotización nueva quedan registradas con referencia cruzada a la cotización original y con el resultado de la validación de vigencia de precios (qué comparó, qué cambió, qué no).

Propagación de la vigencia a enlaces del ciclo

  1. Los enlaces del ciclo de aprobación (enlace al formulario operativo, enlace de aprobación formal, cualquier otro enlace firmado del ciclo) no tienen expiración propia: están ligados a la cotización y su validez se resuelve en cada acceso y en cada submit/click contra la vigencia de la cotización (ver historias del formulario operativo y de aprobación por WhatsApp). Por diseño, toda extensión de la vigencia de la cotización se refleja automáticamente en los enlaces, sin regeneración.
  2. Cualquier cancelación de la cotización en curso (por ejemplo, por decisión de FleteChat) invalida los accesos posteriores a los enlaces del ciclo; FleteChat avisa al cliente por WhatsApp y aplica la lógica de cancelación correspondiente.

Edge cases

  • Tarifas cambiaron dentro de la ventana de vigencia. La cotización mantiene el precio emitido hasta su fecha de vencimiento; el cliente aprueba al precio cotizado, no al nuevo.
  • Cotización vencida con un solo cargo modificado. FleteChat arma la cotización nueva reutilizando los datos del cliente y se la presenta con el desglose actualizado, sin pedirle al cliente que repita información.
  • Cotización vencida con un servicio opcional descontinuado. FleteChat lo declara al cliente, propone alternativas equivalentes si las hay en el catálogo, o emite la cotización nueva sin ese servicio y lo aclara.
  • Cotización vencida con combinación ruta+modalidad ya no soportada. FleteChat declara que esa combinación ya no está disponible y ofrece handoff humano (ver historia de handoff por combinación no soportada); no genera cotización nueva en automático.
  • Validación de vigencia toma más de un mensaje de WhatsApp de latencia aceptable. FleteChat avisa explícitamente ("déjeme revisar si los precios siguen vigentes") antes de iniciar la validación y presenta el resultado en cuanto lo tiene; si la validación falla técnicamente, declara la falla y ofrece handoff.
  • Cliente pide extender manualmente la vigencia. FleteChat valida contra el catálogo vigente si los precios y las condiciones de la cotización siguen iguales. Si siguen iguales, propone extender la misma cotización por el período estándar de vigencia (ver PR-063), conservando el mismo código CNNN, y al confirmar el cliente, actualiza la nueva fecha de vencimiento y se la reenvía por WhatsApp y correo con el nuevo plazo. Si los precios o las condiciones cambiaron, FleteChat lo declara y ofrece armar una cotización nueva con los mismos datos del cliente y el precio actualizado (mismo flujo de re-cotización automática descrito en los criterios de aceptación). En ningún caso el cliente tiene que volver a proveer sus datos.
  • Cotización emitida cerca del fin de la jornada de FleteChat. La vigencia se cuenta en tiempo real (horas corridas) según PR-065, sin considerar horarios hábiles. La configurabilidad de ese comportamiento se rige por PR-072.
  • Cliente corporativo con tarifa preferencial cuya vigencia del nivel vence antes que la vigencia de la cotización. La cotización emitida se respeta hasta su vencimiento, porque el cliente aprobó contra ese precio. Una re-validación post-vencimiento del nivel usará la tarifa estándar vigente.

Tamaño, prioridad y tipo

  • Tamaño: S
  • Prioridad: P0 — proteger el precio emitido es una regla central del negocio.
  • Tipo: feature

Premisas

La historia está redactada bajo las siguientes premisas. Si alguna cambia, la historia debe revisarse y ajustarse en consecuencia. Todas deben ser confirmadas por el cliente antes de cerrar la historia.

  • PR-063 — Vigencia estándar. La vigencia por defecto de una cotización es de 7 días corridos desde su emisión. Este valor es parametrizable por FleteChat.
  • PR-064 — Validación de vigencia de precios al expirar. Al intentar aprobar una cotización vencida, FleteChat valida automáticamente contra el catálogo vigente si los cargos y servicios siguen iguales. Si siguen iguales, ofrece aprobarla al precio original con fecha de aprobación actual. Si cambiaron, arma una cotización nueva con los mismos datos y precio actualizado para que el cliente decida. El cliente nunca vuelve a proveer sus datos.
  • PR-065 — Conteo en tiempo real. La vigencia se cuenta en horas corridas (por ejemplo, 7 × 24 horas para una ventana de 7 días), no en días hábiles.
  • PR-072 — Configurabilidad del criterio de conteo. El criterio de conteo de la vigencia es un parámetro configurable por FleteChat, con valor por defecto conforme a PR-065 (horas corridas). Cualquier configuración alternativa debe quedar documentada en el catálogo de parámetros de FleteChat.
  • PR-066 — Reutilización de datos al re-cotizar. Cuando se genera una cotización nueva a partir de una vencida, FleteChat reutiliza todos los datos operativos y comerciales del cliente (ruta, modalidad, Incoterm, carga, suplidor, servicios opcionales, nivel corporativo). El cliente solo interviene para aprobar el nuevo precio o pedir ajustes.

Refinamiento y Definition of Ready

Notas

Fecha Participantes Acuerdo / Nota
2026-04-17 Kaeus Versión inicial.
2026-04-18 Kaeus Regla reescrita de "bloqueo duro" a "validación automática de vigencia de precios": si precios siguen iguales se ofrece aprobar con fecha nueva; si cambiaron se arma cotización nueva reutilizando datos. Códigos cortos CNNN. Edge case de extensión manual reformulado: proponer extender la misma cotización si los precios siguen vigentes. PR-072 añadida (configurabilidad del conteo).
2026-04-18 Kaeus Aprobación interna: pase a 🔵 Refinada.

Checklist

  • ✅ Historia escrita en formato Como / Quiero / Para
  • ✅ Persona de usuario identificada
  • ✅ Contexto de negocio documentado
  • ✅ Criterios de aceptación observables y pass/fail
  • ✅ Edge cases relevantes listados
  • ✅ Tamaño y prioridad asignados
  • ⬜ Premisas PR-063 a PR-066 y PR-072 confirmadas por el cliente
  • ⬜ Reglas de negocio aplicables aprobadas
  • ⬜ Requerimientos funcionales aplicables aprobados
  • ⬜ Historia aprobada formalmente por el cliente