Administration - Smart Quote : Price Modififcation
Overview
Smart Quote exposes a deterministic way to maniuplate pricing set earlier in the Rules config.Price function.
This API allows Rules to modify pricing for:
- SKU items (non‑configured, standalone items)
- BOM items (configured products generated by the router/configurator)
- Tasks (labor, service, or time‑based components)
All operations are explicit, non‑chained, and audit‑friendly. Every call produces a single, isolated pricing adjustment event.
Function Foundation
config.Price
config.Price.
Notes: - Values must be decimal (m required after the number) - All other following calls are optional, but follow this syntax (no chaining like other config functions)
SKU (one or more non-configured items):
config.Price.Sku.Set(10.0m); config.Price.Sku.Add(5.0m); config.Price.Sku.Subtract(5.0m); config.Price.Sku.Multiply(2.0m);
Behavior: - Applies to all SKU items (must be at least one) - The adjustment is spread equally across all SKU items - If no SKU items exist, the call is a no‑op (still logged for audit) with warning
BOM (configured products):
config.Price.Bom.Set(10.0m); config.Price.Bom.Add(5.0m); config.Price.Bom.Subtract(5.0m); config.Price.Bom.Multiply(2.0m);
Behavior: - Applies to all Bom items (must be at least one) - The adjustment is spread equally across all Bom items - If no Bom items exist, the call is a no‑op (still logged for audit) with warning
Tasks (configured products):
config.Price.Tasks.Set(10.0m); config.Price.Tasks.Add(5.0m); config.Price.Tasks.Subtract(5.0m); config.Price.Tasks.Multiply(2.0m);
Behavior: - Applies to all Tasks (must be at least one) - The adjustment is spread equally across all Tasks - If no Tasks exist, the call is a no‑op (still logged for audit) with warning