Cómo llegan los precios al comprador
Una lista de precios define cuánto cuesta cada variante. El comprador no elige la lista: la política comercial que le corresponde selecciona una, y el segmento al que pertenece la persona asigna esa política. Para que un grupo de clientes (por ejemplo, tus trabajadores o tus clientes VIP) vea precios distintos:- Crea la lista de precios en el panel y cárgala con esta API.
- Crea una política comercial que seleccione esa lista.
- Crea un segmento con esa política y asigna a las personas.
Endpoints
Listar las listas de precios
GET /prices/lists devuelve las listas activas con el id que necesitas para fijar precios.
sourcePriceListId en null es independiente: el precio de cada SKU es el que
tú fijas. Una lista con sourcePriceListId es derivada: toma el precio de la lista origen y le
aplica el ajuste (PERCENT_DOWN de 15.00 es un 15 % de descuento). En una lista derivada solo
necesitas fijar los SKUs que se apartan de la regla.
Fijar precios
POST /prices/set recibe hasta 100 ítems. Cada ítem identifica un par SKU + lista y lleva
exactamente uno de estos campos:
price: precio unitario plano. En una lista independiente es el precio de venta; en una lista derivada es un precio pactado que reemplaza al derivado.tiers: la escalera completa de tramos por cantidad.
200 siempre que el cuerpo sea válido. Cada fila trae su propio status, en el
mismo orden del pedido:
Reglas
- La escritura es absoluta: el valor enviado reemplaza al almacenado, no es un incremento.
priceytiersson excluyentes en un mismo ítem, y el que envías reemplaza al otro: un precio plano borra los tramos del par, y una escalera borra el precio plano.- Los precios viajan como string decimal, sin signo y con hasta cuatro decimales. Un tramo debe tener precio mayor a cero. Revisa Montos y moneda.
- Una escalera empieza en cantidad
1, es contigua, solo el último tramo queda abierto (maxQty: null) y tiene como máximo 15 tramos. Revisa Tramos por cantidad. - El SKU debe coincidir exactamente con el de la variante, incluidas mayúsculas y minúsculas.
- Un par SKU + lista repetido en el mismo pedido responde
400. - La API no elimina precios ni crea listas. Ambas cosas se hacen desde el panel.
Errores por fila
Una fila con error no afecta a las demás: las filas válidas del mismo pedido se guardan.
Flujo recomendado
1
Resuelve las listas una vez
Llama a
GET /prices/lists y guarda el id de cada lista con la que trabajas.2
Envía lotes de hasta 100 pares
Agrupa los cambios por SKU y lista. Puedes mezclar precios planos y tramos en un mismo lote.
3
Revisa las filas con error
Filtra los
results con status distinto de 200, corrige la causa (crear el SKU, activar la
lista) y reenvía solo esas filas.