# Логіка калькулятора кінцевої ціни авто

Документ описує всі формули, таблиці та коефіцієнти, які використовує
калькулятор `lib/calculator.js` (server-side, Node) для розрахунку кінцевої
вартості авто з аукціонів США під ключ в Україні. Фронт ходить у нього
через `POST /api/calc` і `POST /api/calc/batch`; meta для UI (список
штатів / портів / опцій) — через `GET /api/calc/meta`.

Логіка реверс-інженерована з API
`https://api-lubeavto.azurewebsites.net/api/calculator/calculate` (станом
на 2026 р.) і відтворена локально без серверної залежності. Перевірено
на ~80 сценаріях — total збігається з Lube ≤ $1.

> До травня 2026 калькулятор жив у фронтовому `js/calculator.js`. Перенесли
> на бекенд як IP-захист — тарифи й формули більше не видно у `view-source`.

---

## 1. Аукціонний збір

| Аукціон | Формула |
|---|---|
| **Copart / IAAI** | `tier(price) + $60` для `price ≤ $14999`; `$1180` для `$15000 ≤ price ≤ $15999`; `290 + 0.06 × price` для `price ≥ $16000` |
| **Manheim** | окрема тарифна сітка (без націнки) |

### Сітка Copart / IAAI (з націнкою +$60)

| Ціна ≤ | Збір | Ціна ≤ | Збір | Ціна ≤ | Збір |
|---|---|---|---|---|---|
| $49 | $131 | $1499 | $540 | $7499 | $1030 |
| $99 | $131 | $1599 | $540 | $7999 | $1050 |
| $199 | $205 | $1699 | $555 | $8499 | $1090 |
| $299 | $240 | $1799 | $575 | $8999 | $1110 |
| $349 | $265 | $1999 | $595 | $9999 | $1110 |
| $399 | $280 | $2399 | $615 | $10499 | $1140 |
| $449 | $305 | $2499 | $650 | $10999 | $1140 |
| $499 | $315 | $2999 | $685 | $11499 | $1140 |
| $549 | $340 | $3499 | $730 | $11999 | $1150 |
| $599 | $350 | $3999 | $780 | $12499 | $1165 |
| $699 | $365 | $4499 | $840 | $14999 | $1180 |
| $799 | $390 | $4999 | $865 |  |  |
| $899 | $410 | $5999 | $915 |  |  |
| $999 | $425 | $6499 | $975 |  |  |
| $1199 | $465 | $6999 | $995 |  |  |
| $1299 | $485 | $7499 | $1030 |  |  |
| $1399 | $500 | $7999 | $1050 |  |  |

Для `price ≥ $16000` діє лінійна формула: `290 + 0.06 × price`.
Приклади: $20k → $1490, $50k → $3290, $100k → $6290.

### Сітка Manheim

| Ціна ≤ | Збір | Ціна ≤ | Збір |
|---|---|---|---|
| $1000 | $225 | $30000 | $710 |
| $3000 | $280 | $40000 | $810 |
| $5000 | $340 | $50000 | $885 |
| $7000 | $390 | $60000 | $935 |
| $9000 | $425 | $70000 | $1035 |
| $11000 | $465 | $80000 | $1135 |
| $13000 | $495 | $100000 | $1335 |
| $15000 | $525 | $110000 | $1435 |
| $25000 | $655 | $999999999 | $1555 |

---

## 2. Тип ТЗ (vehicleType)

Тип транспортного засобу одночасно впливає на:
- надбавку до морського фрахту,
- вартість доставки Клайпеда → Львів.

| Тип ТЗ | Klaipeda → Lviv | Надбавка до фрахту (фікс) | Pickup-надбавка |
|---|---|---|---|
| Легковий (Automobiles) | $800 | $0 | — |
| Кросовер (Crossover) | $900 | +$100 | — |
| Позашляховик (SUVs) | $950 | +$100 | — |
| Мотоцикл (Moto) | $450 | $0 | — |
| Бус / Пікап (PickupTrucks) | $1200 | $0 | **× 2 базової вартості** |

---

## 3. Тип палива (fuelType)

| Паливо | Вплив на акциз | Вплив на фрахт |
|---|---|---|
| Бензин (Gas) | стандартна формула ДВЗ | без надбавки |
| Дизель (Diesel) | вища база ДВЗ | без надбавки |
| Гібрид (Hybrid) | формула як у Gas | **+$150** до фрахту (як Electro) |
| Електро (Electro) | окрема формула за кВт·год | **+$150** до фрахту (Pickup +$300) |

Hybrid Lube вважає «не-чистим ДВЗ» і додає електро-надбавку до фрахту,
але акциз — за бензиновою формулою.

---

## 4. Об'єм двигуна (для ДВЗ і гібридів)

База акцизу залежить від типу палива і об'єму:

| Паливо | engine ≤ 3.0 л | engine > 3.0 л | engine > 3.5 л |
|---|---|---|---|
| Gas / Hybrid | base = 50 € | base = 100 € | base = 100 € |
| Diesel | base = 75 € | base = 75 € | base = 150 € |

---

## 5. Ємність батареї (для Electro)

Акциз для електромобілів: `excise = batteryCapacity × 1.111` USD
(тобто €1 за 1 кВт·год батареї за внутрішнім курсом Lube ~1.111).

Приклад: Tesla Model Y, 82 кВт·год → акциз = 82 × 1.111 = **$91.10**.

---

## 6. Рік випуску — коефіцієнт віку

`ageCoef = max(1, age − 1)` де `age = currentYear − releaseYear`.

| Рік випуску | age | ageCoef |
|---|---|---|
| 2026 (current) | 0 | 1 |
| 2025 | 1 | 1 |
| 2024 | 2 | 1 |
| 2023 | 3 | 2 |
| 2022 | 4 | 3 |
| 2020 | 6 | 5 |
| 2018 | 8 | 7 |
| 2015 | 11 | 10 |
| 2010 | 16 | 15 |
| 2008 і старше | 18+ | 17+ |

Lube **не обмежує** ageCoef згори (на відміну від офіційного українського
лімту 15) — для авто 2008 р. і старше коефіцієнт продовжує рости лінійно.

---

## 7. Акциз — повна формула

### Електромобілі
```
excise_USD = max(1, batteryCapacity) × 1.111
```

### ДВЗ і гібриди
```
base    = (fuel == Diesel)
            ? (engine > 3.5 ? 150 : 75)
            : (engine > 3.0 ? 100 : 50)   // Gas, Hybrid
ageCoef = max(1, age − 1)
excise_EUR = base × engine × ageCoef
excise_USD = excise_EUR × 1.182           // внутрішній курс Lube для ДВЗ
```

Lube використовує **різні** курси €→$:
- Electro: `1.111` (≈ NBU EUR/USD)
- ДВЗ: `1.182` (NBU + ~6.4% надбавки)

---

## 8. Документи на експорт авто

| Тип документів | Вартість |
|---|---|
| Відкриті штати США (Usa) | $150 |
| Закриті штати США (Usa closed) | $200 |
| Канада (Canada) | $350 |
| Менхейм (Manheim) | $250 |

---

## 9. Штат аукціону (USA)

Кожен штат має закріплений «найближчий» порт відправлення та медіанну
вартість доставки авто з аукціону до цього порту. Дані агреговані з
525 міст довідника Lube.

Приклади:

| Штат | Порт | Медіанна доставка |
|---|---|---|
| New Jersey (NJ) | Elizabeth, NY | $270 |
| New York (NY) | Elizabeth, NY | $357 |
| California (CA) | Los Angeles, CA | $300 |
| Florida (FL) | Florida, FL | $345 |
| Georgia (GA) | Savannah, GA | $370 |
| Texas (TX) | Houston, TX | $345 |
| Illinois (IL) | Chicago, IL | $270 |
| Hawaii (HI) | Los Angeles, CA | $1800 |
| Wyoming (WY) | Chicago, IL | $1020 |

Повна таблиця — у `js/calculator.js` (`STATE_DATA`).

---

## 10. Вартість доставки по США (cityValue)

Числове поле, яке визначає вартість буксиру з міста аукціону до порту
відправлення. Підставляється автоматично при виборі штату (медіана), але
користувач може вручну ввести точніше значення для свого міста.

Це значення додається в total **напряму**; на митну вартість і ПДВ —
**не впливає** (Lube ігнорує його при обчисленні `customsValue`).

---

## 11. Порт відправлення (США / Канада)

| Порт | Klaipeda | Odesa |
|---|---|---|
| New York, NY (Elizabeth) | $850 | $1250 |
| Chicago, IL | $1000 | $1500 |
| Houston, TX | $1000 | $1400 |
| Savannah, GA | $900 | $1150 |
| Florida, FL | $900 | $1300 |
| Los Angeles, CA | $1575 | — |
| Oakland, CA | $1575 | — |
| Montreal, CA | $1575 | — |
| Vancouver, CA | $2400 | — |

Західні порти США та Канади **не обслуговуються через Одесу** — при
виборі такого порту разом з Одесою калькулятор автоматично перемикається
на Клайпеду.

Базова вартість фрахту далі модифікується надбавкою від типу ТЗ (див. п. 2)
і палива (див. п. 3).

---

## 12. Порт призначення (Klaipeda / Odesa)

### Клайпеда (Литва) — стандартний маршрут
- Вигрузка з порту Клайпеда: **$400**
- Доставка Клайпеда → Львів: **= vehicleCoefficient** (див. п. 2)
- Доставка на митницю: **$80**
- Проходження кордону + спец. транспорт: **$110**
- Брокерські послуги в Клайпеді: **$250**

### Одеса (Україна) — пряме розмитнення
- Вигрузка з порту + брокер (об'єднано): **$670**
- Без додаткових ланцюжків (авто розмитнюється безпосередньо в Україні)

---

## 13. Митна вартість

Lube ігнорує введені користувачем `cityValue`, `documentsFee` та
`seaFreight` при обчисленні митної вартості — використовує жорстко
зашите «довідкове» значення фрахту:

```
customsValue = 1.01 × (price + auctionFee) + $1616
```

Це база для розрахунку мита та ПДВ.

---

## 14. Ввізне мито

```
duty = customsValue × 0.10        // для ДВЗ і гібридів
duty = 0                          // для електромобілів (звільнені)
```

---

## 15. ПДВ 20%

```
VAT = (customsValue + duty + excise) × 0.20    // для ДВЗ і гібридів
VAT = customsValue × 0.20                      // для електро (Lube
                                              //   виключає акциз з бази)
```

---

## 16. Курси USD / EUR (НБУ)

- USD/UAH: за замовчуванням `41.50`
- EUR/UAH: за замовчуванням `46.00`

Співвідношення EUR/USD = 46.00 / 41.50 ≈ **1.108** — точно як НБУ.
Курси редагуються в формі калькулятора.

Курси впливають **тільки** на конвертацію `total USD → total UAH` для
відображення. Внутрішня конвертація акцизу EUR → USD у Lube жорстко
зашита (1.111 для Electro, 1.182 для ДВЗ).

---

## 17. Комісія MoeAvto

Фіксована: **$600** (за замовчуванням, можна змінити).

---

## 18. Страхування

Опційний платіж (ввімкнений за замовчуванням):
```
insurance = 0.01 × (price + auctionFee)    // 1% від суми лоту + збір
```

---

## 19. Комісія за переказ коштів у США

Опційний платіж (ввімкнений за замовчуванням):
```
transferFee = 0.01 × (price + auctionFee)  // 1% від суми лоту + збір
```

---

## 20. Підсумкова формула (total)

```
total = price
      + auctionFee
      + cityValue           // доставка по США (вхід)
      + documentsFee        // документи на експорт
      + sea                 // фрахт із надбавкою
      + portChain           // ланцюжок Клайпеди або $670 для Одеси
      + serviceFee          // комісія MoeAvto $600
      + insurance           // якщо ввімкнено
      + transferFee         // якщо ввімкнено
      + duty                // мито
      + excise              // акциз
      + VAT                 // ПДВ
```

де `portChain`:
- **Klaipeda**: `$400 + vehicleCoef + $80 + $110 + $250 = vehicleCoef + $840`
- **Odesa**: `$670`

---

## Перевірка точності

Сценарії, перевірені проти Lube API (різниця всіх total ≤ $1 — лише
floating-point округлення):

| Сценарій | local | Lube |
|---|---|---|
| Auto Gas $8k NY → Klaipeda 2023 2.0L | $16575.49 | $16575.54 |
| Crossover Electro $8k Atlanta GA 82kWh 2023 | $15487.28 | $15487.28 |
| Auto Diesel 2.5L $12k Chicago 2018 | $23777.00 | $23777.32 |
| Pickup Gas 4.0L $25k Houston 2020 | $44453.25 | $44453.74 |
| SUV Hybrid 2.0L $5k Florida 2015 (Manheim) | $13123.21 | $13123.46 |
| Auto Electro 75kWh $15k LA → Klaipeda 2024 | $24618.48 | $24618.49 |
| Auto Gas 2.0L $8k Savannah → Odesa 2023 | $15905.49 | $15905.54 |
| Pickup Diesel 5.0L $50k IAAI 2021 | $81166.45 | $81167.19 |

Скріншот Lube ($8k Crossover Electro Atlanta) → Lube показує **$15,557**;
наш калькулятор з тими ж параметрами видає **$15,557**.
