Ofertas a pedido en Magento 2 — Negociación, permisos y flujo
Entidades clave
Las ofertas negociables permiten acordar precios/condiciones antes del pedido:
- Oferta negociable: Contenedor del carrito con ítems solicitados, notas, adjuntos, fecha objetivo y vencimiento.
- Ítems: Precio de lista, descuento solicitado y precio negociado; comentarios por línea.
- Cronología/comentarios: Hilo entre comprador y comercial con eventos del sistema.
- Adjuntos: Archivos con límites y escaneo.
- Restricciones: Ámbito web/moneda, instantánea de precios, estimación de impuestos/envío.
- Vencimiento: Invalida precios al expirar.
- Auditoría: Registro inmutable de cambios.
- Bloqueos: Edición con bloqueo; verificación de versión al enviar.
- Estados: borrador → solicitada → negociación → aprobada → aceptada → convertida (o rechazada/vencida).
Roles & permisos
- Usuarios de empresa: crear/ver; permisos para enviar/aceptar.
- Aprobadores: aprobación interna por importe/categoría.
- Comerciales: ajustar precios, alternativas, plazos; fijar vencimiento y términos.
- Backoffice: finanzas/legal; políticas de descuento/margen.
Flujo extremo a extremo
- Solicitud: desde carrito/PDP ("Añadir a oferta"); notas/adjuntos/fecha.
- Enrutado: reglas por territorio/segmento; aviso por email/webhook.
- Negociación: contraofertas, sustituciones, bundles; límites de descuento y márgenes.
- Aprobaciones internas: umbrales → firma de manager antes de enviar.
- Aprobación del cliente: revisor corporativo valida líneas y condiciones.
- Aceptar y convertir: recalcular stock/impuestos; convertir a pedido de forma atómica; bloquear/archivar la oferta.
- Post‑pedido: PDF y auditoría accesibles desde el pedido.
Precios, impuestos y envío
- Fuente de precios: catálogo/precios de cliente; descuentos por línea/cabecera bajo políticas.
- Impuestos: estimar en negociación; consolidar al convertir.
- Envío: estimaciones y fijación al aceptar; re‑cotizar si cambian SLA/dirección.
Patrones de UI
- CTA Solicitar oferta (carrito/PDP) con control por rol.
- Detalle de oferta con precios propuestos/negociados, % de descuento, comentarios, adjuntos.
- Bitácora de cambios y acciones (revisar, aceptar, rechazar) con aviso de vencimiento.
Notificaciones
- E‑mails por estados; webhooks a CRM/ERP.
APIs/Observers/Contratos
- Repositorios/servicios para propuestas, aprobaciones y aceptación.
- Observers al enviar/aceptar para impuestos/stock/notificaciones.
- REST/GraphQL para headless y subida segura de archivos.
Rendimiento & fiabilidad
- Cacheo por versión; invalidar en cambios.
- Transacciones + idempotencia en oferta→pedido.
- Archivar versiones antiguas.
Despliegue, pruebas & KPIs
- KPIs: tiempo a primera respuesta/aceptación, % aceptación, descuento medio, delta de margen, tasa de vencimiento.
- Pruebas: matriz de roles/políticas, zonas fiscales/moneda, cambios de catálogo/precio, adjuntos, e‑mail/webhooks.
- Piloto: activar por segmentos/flags; formación y políticas publicadas.
