Catálogos compartidos y personalizados en Magento 2 — Acceso, precios y rendimiento
Entidades clave
Los Shared Catalogs definen visibilidad y precios por grupo de clientes. El catálogo público es el defecto; los personalizados sirven a segmentos B2B.
- SharedCatalog (reglas de visibilidad/precio),
- Customer Group (enlace cliente→catálogo; una sola asignación a la vez),
- Asignación de productos (solo SKUs asignadas son visibles).
Integración: segmento ERP → grupo de clientes → shared catalog.
Reglas de visibilidad
- Categorías permitir/denegar: Denegar padre oculta hijos/productos.
- Allow/Deny por SKU: Ajuste fino tras categorías; simple/configurable/bundle.
- Conjunto de reglas & índice: Se materializa por grupo durante el reindex.
UI: estrategia de “denegar por defecto” en catálogos grandes.
Interacción con listas de precios & precios por cliente
- Descuento porcentual por catálogo (tier‑pricing).
- Precio fijo por SKU (custom pricing) prevalece sobre porcentaje/base.
Prioridad: Fijo > Porcentaje catálogo > Grupo/Tier > Base.
Ámbito & arquitectura
Asignaciones globales; precios por catálogo por website. Grupos globales: planificar en operaciones multi‑región.
Rendimiento: índice & caché
- Indexadores: `catalogpermissions_product`, `sharedcatalog_product_item` desnormalizan visibilidad/precio por producto×grupo.
- Búsqueda/filtros: Excluidos no se indizan para ese grupo.
- Cacheo de permisos: Usar repositorios/servicios; evitar consultas directas en frontend.
Nota: Reindex en lote tras cambios masivos; planificar ventanas.
APIs, eventos e integración
- REST/SOAP: `/V1/sharedCatalogs` para crear/asignar productos y precios.
- Observers: enganchar eventos de shared catalog para sync externo.
ERP: decidir catálogo por segmento y aplicar precios fijos por API.
Despliegue, pruebas & KPIs
- Grupo piloto con catálogo propio.
- UAT: visibilidad, precios, búsqueda/filtros, bloqueo por URL directa, precios en carrito/checkout.
- Rendimiento: latencias PLP/PDP/búsqueda e indexadores.
- Fases: migración progresiva.
