Skip to main content
Son permisos explícitos: deben marcarse uno por uno en Integraciones externas; las integraciones existentes no los reciben automáticamente.
Pensado para tiendas en línea y otros canales de venta: consulta las listas de precios de una sucursal, sincroniza precios en lote y calcula las promociones de un carrito con el mismo motor que el POS de FileXpress, para que el precio final coincida en todos los canales.

Listas de precios

Primero la lista predeterminada (is_default: true) y luego el resto por nombre. Errores: 404 Branch not found (sin branch_id o de otro negocio).

Precios de una lista

Ordenado por nombre de producto. Errores: 404 Price list not found (inexistente o de otro negocio); 422 validación.

Actualizar precios

Crea o actualiza en lote los precios de una lista (sincronización desde la tienda). Requiere pricing.write.
Reglas
  • Si el producto ya tiene precio en la lista se actualiza; si no, se crea.
  • Los productos que no pertenecen a la sucursal de la lista (o no existen) no se aplican y se devuelven en rejected; el resto sí se guarda.
  • Si un product_id se repite en el arreglo, se toma el último.

Promociones

Ordenadas de mayor a menor priority. Errores: 404 Branch not found.

Calcular promociones de un carrito

Reglas
  • Solo se evalúan promociones activas cuya fecha de inicio y fin incluyen el día de hoy.
  • Por ítem gana una sola promoción: la de mayor prioridad que aplique al producto (por producto, categoría o marca) y cumpla min_quantity.
  • percentage descuenta un porcentaje; fixed, un monto fijo (sin superar la base); override_price, la diferencia hasta el precio especial.
  • Un combo aplica cuando están en el carrito todos sus productos: descuenta la suma de sus precios unitarios menos combo_price.
  • Si la sucursal no tiene promociones vigentes, los ítems se devuelven sin campos de promoción y order_discounts vacío.
  • El cálculo no guarda nada: úsalo para mostrar el precio final y luego envía los descuentos al crear la venta.

Errores