Sincronizar precios por cliente B2B desde el ERP a la tienda online es el punto más crítico y más complejo de cualquier integración B2B. Cada cliente tiene condiciones comerciales distintas: tarifas base negociadas, descuentos por volumen, rappels anuales, precios especiales por producto y condiciones de pago que afectan al precio. El ERP gestiona toda esta complejidad. La tienda online debe reflejarla con exactitud, porque si un cliente ve un precio distinto al negociado, pierde la confianza y deja de usar el portal.
El proceso, simplificado, tiene tres pasos: extraer las tarifas del ERP, transformarlas al formato que la tienda entiende y sincronizarlas asignando cada precio al cliente o grupo de cliente correcto. En la práctica, cada paso tiene complejidades que requieren un middleware como Integrafy para gestionar las transformaciones, resolver conflictos y mantener la sincronización actualizada sin intervención manual.
Paso 1: Entender cómo tu ERP gestiona los precios
Cada ERP tiene un modelo de precios diferente, pero la mayoría comparten estos conceptos. Tarifa base: el precio de lista del producto, normalmente por familia o grupo de artículo. Lista de precios: un conjunto de precios asociado a un grupo de clientes o a un mercado. Descuento por volumen: escalas que reducen el precio según la cantidad comprada (10-50 uds: -5%, 50-100: -10%, >100: -15%). Precio especial: un precio fijo para un cliente y un producto concreto, que anula cualquier otra regla. Rappel: un descuento retroactivo por alcanzar un volumen de compra en un periodo.
En SAP, estos conceptos se gestionan con condiciones de precio (tablas KONV/KONP) que se evalúan jerárquicamente. En Odoo, con listas de precios (pricelists) con reglas de descuento. En Business Central, con precios de venta y descuentos de línea. En Sage, con tarifas y promociones. El middleware debe conocer el modelo de precios del ERP para extraer los datos correctos.
Paso 2: Mapear tarifas del ERP a grupos en la tienda
La tienda online no puede replicar toda la complejidad de precios del ERP. Lo que sí puede hacer es asignar precios por grupo de cliente. PrestaShop tiene "grupos de clientes" con precios específicos. Shopify Plus tiene metafields y catálogos B2B. Magento tiene customer groups y tier prices. WooCommerce necesita plugins B2B.
El mapeo típico es: una lista de precios del ERP = un grupo de clientes en la tienda. Si el ERP tiene 5 listas de precios (tarifa distribuidores, tarifa grandes cuentas, tarifa taller, tarifa exportación, tarifa empleados), la tienda tiene 5 grupos de clientes. Cada cliente se asigna al grupo que corresponde a su lista de precios en el ERP. El middleware sincroniza esta asignación automáticamente.
Para precios individuales por cliente (un precio único para el cliente X en el producto Y), el middleware genera un "specific price" o un metafield por cada combinación cliente-producto. Esto es viable hasta cierto punto: 500 clientes × 10 productos con precio especial = 5.000 registros, manejable. 500 clientes × 1.000 productos = 500.000 registros, que puede afectar al rendimiento de la tienda.
Paso 3: Configurar la sincronización automática
La sincronización de precios debe ser automática y bidireccional en detección, unidireccional en escritura. Es decir: el middleware detecta cambios en las listas de precios del ERP (nueva tarifa anual, actualización de precios, nuevo cliente asignado a una lista) y los sincroniza hacia la tienda. Los precios nunca se modifican en la tienda: siempre vienen del ERP. Si un comercial negocia un nuevo precio, lo introduce en el ERP y el middleware lo lleva a la tienda.
La frecuencia depende del negocio. Si los precios cambian 1-2 veces al año (tarifas anuales), una sincronización semanal o manual es suficiente. Si hay promociones frecuentes, actualización de costes o volatilidad de precios, la sincronización debe ser diaria o en tiempo real. Integrafy soporta ambos modos: batch programado o eventos en tiempo real cuando el ERP notifica un cambio de precios.
Paso 4: Gestionar descuentos por volumen
Los descuentos por volumen (tier pricing) se gestionan diferente en cada plataforma. PrestaShop soporta "quantity discounts" por grupo de cliente. Magento tiene "tier prices" nativos. Shopify no tiene descuentos por volumen nativos en B2B (necesita apps o scripts). WooCommerce necesita plugins como "Dynamic Pricing".
El middleware mapea las escalas del ERP a la funcionalidad de cada plataforma. Si la plataforma no soporta descuentos por volumen nativos, hay dos opciones: el middleware calcula el precio final según la cantidad y lo envía como precio fijo, o se muestra una tabla de precios informativa y el precio se calcula en el checkout consultando al middleware o al ERP.
Paso 5: Validar precios en el pedido
Incluso con sincronización automática, puede haber discrepancias puntuales: un precio se actualizó en el ERP pero aún no se sincronizó, un bug en el mapeo, una condición de precio que el middleware no contempla. Por eso, el middleware debe validar el precio de cada línea de pedido antes de crearlo en el ERP.
La validación compara el precio del pedido web con el precio calculado por el ERP para ese cliente y ese producto. Si hay diferencia, el pedido se retiene con una alerta para revisión humana. Esto actúa como red de seguridad: el cliente puede ver un precio ligeramente incorrecto en la web (algo a corregir), pero el pedido no se procesa con un precio erróneo.
Errores frecuentes en sincronización de precios B2B
El error más grave es no gestionar el IVA correctamente. El ERP trabaja con precios sin IVA. La tienda puede mostrar con o sin IVA según la configuración y el grupo de cliente (B2B sin IVA, B2C con IVA). Si el middleware envía precios sin IVA y la tienda los muestra como si fueran con IVA (o viceversa), los precios están un 21% desviados. Este error se detecta rápido pero genera desconfianza inmediata.
Segundo error: no sincronizar las actualizaciones. Los precios cambian. Si la sincronización se configura una vez y no se mantiene, a los 6 meses la tienda muestra precios obsoletos. El middleware debe tener flujos de actualización periódicos y alertas cuando detecta que los precios del ERP han cambiado pero la tienda no se ha actualizado.
Tercer error: no testear con clientes reales antes de ir a producción. Las reglas de precio del ERP son complejas y a menudo tienen excepciones. Testa con 10-20 clientes reales, comparando precios de la web con los que el ERP calcula para ese cliente. Los primeros días en producción, monitoriza los pedidos para detectar discrepancias antes de que los clientes las reporten.
La sincronización de precios B2B no es un "configúralo y olvídate". Requiere monitorización continua, especialmente tras cambios de tarifa en el ERP. Integrafy incluye dashboards de monitorización que muestran el estado de sincronización, últimas actualizaciones de precios y alertas ante discrepancias detectadas.