Перейти к содержимому
DealsHub MCP CRM межкомнатных дверей

Ценообразование

Правила наценок без скрытой арифметики

Правила применяются последовательно как множители: ширина → срочность → комплект → фабрика → регион. Каждая наценка возвращается отдельной строкой — видно, из чего сложилась итоговая сумма, и ответ можно сохранить как снимок расчёта.

итог = базовая цена × (1 + ширина) × (1 + срочность) × (1 − комплект) × (1 + фабрика) × регион

Пять правил

Значения читаются из config/ai.php в секции ai.mcp.pricing.

Нестандартная ширина

Полотно шире порога требует дополнительного раскроя и фурнитуры.

+15 % при ширине больше 900 мм

Срочность

Заказ ставится вне очереди производства и доставки.

+25 % при urgent = true

Комплект

Скидка за заказ нескольких дверей одной позиции.

−10 % от 3 дверей в комплекте

Наценка фабрики

Правило фабрики берётся из oc_manufacturer.default_price_rule_id, множитель — из конфига.

+0…15 % в зависимости от производителя

Регион

Коэффициент доставки и логистики. Неизвестный регион получает значение default.

msk 1,10 · spb 1,08 · mo 1,05

Порядок и снимок

Правила не суммируются, а перемножаются по порядку. Ответ содержит базовую цену, итог, общий множитель и snapshot с параметрами расчёта.

Примеры расчёта

Базовая цена полотна — 10 000 ₽. Шаги показаны в том порядке, в котором их применяет calculate_price.

Стандартное полотно

Ширина 800 мм, без срочности, комплект из одной двери, регион по умолчанию.

  • Базовая цена 10 000,00 ₽
  • Правила не сработали — цена равна базовой.
Итого 10 000,00 ₽

total_multiplier = 1,0000

Нестандарт и срочность, Москва

Ширина 1 000 мм, срочный заказ, регион msk.

  • Базовая цена 10 000,00 ₽
  • Нестандартная ширина 1 000 мм ×1,15
    10 000,00 ₽ → 11 500,00 ₽
  • Срочный заказ ×1,25
    11 500,00 ₽ → 14 375,00 ₽
  • Регион Москва ×1,10
    14 375,00 ₽ → 15 812,50 ₽
Итого 15 812,50 ₽

total_multiplier = 1,5813

Комплект из трёх дверей, Санкт-Петербург

Скидка за комплект и региональный коэффициент без наценок за ширину и срочность.

  • Базовая цена 10 000,00 ₽
  • Комплект из 3 дверей ×0,90
    10 000,00 ₽ → 9 000,00 ₽
  • Регион Санкт-Петербург ×1,08
    9 000,00 ₽ → 9 720,00 ₽
Итого 9 720,00 ₽

total_multiplier = 0,9720

Что возвращает инструмент

Массив markups[] содержит по строке на каждое сработавшее правило: код, процент, сумму и цену до и после. Агент может показать расшифровку клиенту, не пересчитывая её самостоятельно.

base_price
Цена товара до наценок.
final_price
Итог после всех множителей, округлённый до копеек.
total_multiplier
Отношение итога к базовой цене.
markups[]
Расшифровка наценок по порядку применения.
snapshot
Параметры расчёта и дата — можно сохранить вместе с заказом.
calculate_price · result
{
  "product_id": 101,
  "name": "Zadoor Z-100",
  "currency": "RUB",
  "base_price": 10000.0,
  "final_price": 15812.5,
  "total_multiplier": 1.5813,
  "markups": [
    { "code": "non_standard_width", "percent": 15,
      "price_before": 10000.0, "price_after": 11500.0 },
    { "code": "urgent", "percent": 25,
      "price_before": 11500.0, "price_after": 14375.0 },
    { "code": "region", "percent": 10,
      "price_before": 14375.0, "price_after": 15812.5 }
  ]
}

Остальные параметры инструмента — в справочнике инструментов.

К инструментам