.. _multicurrency: Мультивалютність ================ Закупівля за правилами організаторів може бути мультивалютною. Для того, щоб створити таку процедуру, обов'язково треба встановити конфігурацію `valueCurrencyEquality:false` та заповнити поле `funders`. Таким чином в учасників буде можливість додати прайс-ліст на кожну номенклатуру в різних валютах. Прайс-ліст допоможе наочно показати з яких частин формується загальна ціна учасника по кожній номенклатурі окремо. Створимо закупівлю з конфігурацією `valueCurrencyEquality:false` і полем `funders`, додамо лоти і активуємо її: .. http:example:: http/multi-currency/tender.http :code: Тепер учасник може зареєструвати пропозицію. Для донорської закупівлі (якщо є поле `funders`) обов'язковим є додавання `items` в біді. Якщо `items` в біді нема, буде згенерована помилка: .. http:example:: http/multi-currency/post-bid-without-items.http :code: Також для донорської закупівлі (якщо є поле `funders`) обов'язковим є додавання `value` в `items.unit` в біді. Якщо `value` в `items.unit` в біді нема, буде згенерована помилка: .. http:example:: http/multi-currency/post-bid-without-values-in-unit-items.http :code: Кількість `items` в пропозиції має співпадати з кількістю `items` в тендері на рівні лоту, вказаному в `lotValues`: .. http:example:: http/multi-currency/post-bid-with-items-less-than-in-tender.http :code: Ідентифікатори `items` в пропозиції мають відповідати ідентифікаторам `items` в тендері та належати до того самого `relatedLot`, який вказано в пропозиції: .. http:example:: http/multi-currency/post-bid-with-items-related-to-another-lot.http :code: До кожної номенклатури (items) учасник вказує ціну за одиницю. Він може вказувати різні валюти: .. http:example:: http/multi-currency/post-add-valid-bid.http :code: Вимоги до реєстрації пропозицій: * Значення Валюта для кожної ціни за одиницю має відповідати значенню Валюта для загальної ціни пропозиції * Загальна вартість цін за одиницю на рівні лоту може НЕ дорівнювати загальній ціні пропозиції * Значення ПДВ у ціні за одиницю повинно мати значення False * Якщо учасник планує зробити замовнику так звану знижку, він може для певних номенклатур у значенні ціна за одиницю вказати значення 0 Спробуємо змінити значення ПДВ в `bid.items.unit` яке буде відрізнятися від False і побачимо наступну помилку: .. http:example:: http/multi-currency/patch-invalid-bid-unit.http :code: Аукціон в таких закупівлях не передбачено. Оберемо переможця під час кваліфікації і подивимося на сформований контракт. Як ми можемо побачити всі ціни за одиницю переносяться у контракт: .. http:example:: http/multi-currency/contract.http :code: Загальна ціна пропозиції та ціна за одиницю коригуються як у бік збільшення так і у бік зменшення. При цьому загальна вартість цін за одиницю може не дорівнювати загальній ціні пропозиції. ПДВ можна змінювати на рівні контракту (повинна бути змінена як у contract.value так і у contract.items.unit.value одночасно). Відредагуємо ціни в контракті: .. http:example:: http/multi-currency/contract-patch.http :code: Далі активуємо контракт, щоб перевірити, чи можна змінити загальну суму цін за одиницю більше, ніж ми маємо в контрактній вартості: .. http:example:: http/multi-currency/contract-activated.http :code: