Table of Contents |
---|
Посилання:
- PRD
- Вимоги до майданчиків
- Вимоги до Порталу
- Вимоги до BI (ДОДАТИ)
Голосарій
Аукціон закритого типу - аукціон, в якому з моменту активації модуля аукціону до моменту завершення аукціону електронною торговою системою не відображається (не публікується) жодна інформація, що подана учасниками в заявах про участь або доданих до них документах, а також цінові пропозиції, які були змінені протягом часу, відведеного на оновлення таких пропозицій; Роль спостерігача на МА передбачена і протягом перебігу МА відображає в полі інформації тільки текст "Учасники подають закриті цінові пропозиції". Після завершення МА, інформація щодо ставок відкривається і Спотерігач може побачити Учасників і їх ставки.
Обсяг активу - встановлена виставлений Організатором обсяг (кількість матеріалу, щодо якої учасник має намір набути право на підтримку) активу, яку учасники можуть придбати; Одиниці виміру із словника словника unitCode
Оголошення Процедура - процедура оголошення з продажу на аукціоні на підвищення ставок, з декількома переможцями
...
Учасник - суб’єкт господарювання, який має намір взяти участь в аукціоні, пройшов пройшов процедуру реєстрації в електронній торговій системі, отримав відповідне підтвердження про реєстрацію для участі в аукціоні та індивідуальний код учасника відповідно до Регламенту роботи електронної торгової системиЕТС;
Цінова пропозиція - ціна, яку пропонує Учасник за одиницю виставленої Організатором продукції. Розмірність одиниць Одиниці виміру вказує Організатор при публікації оголошення процедури (тонна, кілограм, ящик тощо). Ціна за одиницю декларується учасником та подається в ЕТС до закінчення кінцевого строку подання заяв про участь в аукціоні або в ході проведення аукціону шляхом оновлення такої цінової пропозиції.
Мінімальний розмір цінової пропозиції учасника - найменша ціна за одиницю, яку може вказати учасник в своїй заявці на участь. Мінімальний розмір цінової пропозиції учасника вказує Організатор при публікації оголошенняпроцедури, чим обмежує мінімально можливу ставку.
Крок аукціону (мінімальний крок аукціону) – мінімальна надбавка, на яку в ході електронного аукціону (або на етапі подання закритих цінових пропозицій) може здійснюватися підвищення цінової пропозиції. Розмір мінімального кроку аукціону визначається організатором аукціону в діапазоні від 1 до 10% від стартової ціни лота.
Валідна ставка - це ставка, що більша або дорівнює стартовій ціні
Мета створення процедури та нормативні засади
Визначається механізм процедури, що може використовуватись для продажу лоту з розподілом обсягу лоту між кількома переможцями - продаж частинами.
З метою проведення аукціонів на підвищення ціни з кількома переможцями в межах системи Prozorro.Sale реалізовано sellingMethod: basicSell-multiAwards (partialAwards, fractionalAwards, spreadAwards). Така процедура надає змогу Замовнику здійснити продаж лоту, в рамках аукціону, необмеженій кількості учасників, а учаснику придбати саме ту кількість обсягу лота, що йому потрібна.
Загальна інформація про роботу процедури
Критерієм вибору переможця є цінова пропозиція, що складається з ціни за одиницю та кількість одиниць.
...
За результатами аукціону пропозиції учасників сортуються по ціні від найбільшої до найменшої та кваліфікуються ті учасники, яким вистачило запропонованого Організатором аукціону обсягу. У випадку дискваліфікації одного з учасників, кваліфікація переходить до наступного учасника в черзі .лише протягом періоду кваліфікації. По завершенню періоду кваліфікації визначається "умовний переможець" у якого є можливість придбати нерозподілений залишок.
Особливості процедури
НАЙБІЛЬШЕ ПРОЦЕДУРА СХОЖА НА basicSell-english та renewables-multiAwards
- На етапі публікації Процедури:
- в В одній процедурі може бути тільки один лот (item)
- після публікації Організатор має можливість редагувати процедуру під час tenderPeriod. Редагування певних полів призводить до деактивації заяв на участь.Організатор на етапі публікації вказує:
- Обсяг, який реалізується (procedure.items[0].quantity)
- Одиницю виміру обсягу (procedure.items[0].unit)
- із словника unitCode
- ЦБД приймає тільки
- BX - ящик
- D64 - блок
- E50 - одиниця
- GRM - грам
- H87 - штуки
- KGM - кілограм
- LTR - літр
- MTQ - метри кубічні
- RM- пачка
- TNE - тонни
- Мінімальну ціну на одиницю обсягу, яку приймає ЦБД в заявах на участь (procedure.value.*)
- Мінімальний обсяг, який може викупити учасник (procedure.minimalPart)
- Крок аукціону (procedure.minimalStep)
- В процедурі може продаватися "скоропорт" (procedure.isPerishable)
- На етапі подання заяв на участь:
- учасник Учасник може подати тільки одну заяву на участь в одному аукціоні
- учасник Учасник в заяві на участь вказує бажану :
- Бажану кількість обсягу активу
- (bids[].quantity)
- Бажана кількість не може бути менше за Мінімальний обсяг, що вказав Організатора (< procedure.minimalPart)
- Цінову пропозицію за одиницю обсягу (bids[].value.*)
- Аукціон:
- аукціон Аукціон продажу частинами
- Учасник може робити ставку >= мінімальному кроку аукціона (procedure.minimalStep)
- Кваліфікація:
- кількість Кількість переможців необмежена
- наявність Наявність необмеженої кількості учасників, що кваліфікуються
- Учасники, що очікують кваліфікації Переможців НЕ можуть відмовитись від очікування
- Можливість можливість учаснику, що очікує викупити нерозподілений залишок, який має бути не менше, ніж Мінімальний обсяг, який вказав Організатор.
Опис класифікаторів
Під час публікації процедури з запиті необхідно передати для item:
Обовʼязковий Основний класифікатор - CAV
- на рівні ЦБД можливість обрати:
- 03000000-1 Сільськогосподарська, фермерська продукція, продукція рибальства, лісівництва та супутня продукція та всі вкладені коди
- 09000000-3 Нафтопродукти, паливо, електроенергія та інші джерела енергії та всі вкладені коди
- 14000000-1 Гірнича продукція, неблагородні метали та супутня продукція та всі вкладені коди
- 15000000-8 Продукти харчування, напої, тютюн та супутня продукція та всі вкладені коди
- 18000000-9 Одяг, взуття, сумки та аксесуари та всі вкладені коди
- 19000000-6 Шкіряні та текстильні, пластмасові та гумові матеріали та всі вкладені коди
- 22000000-0 Друкована та супутня продукція та всі вкладені коди
- 24000000-4 Хімічна продукція та всі вкладені коди
- 3000000044000000-9 Офісна та комп’ютерна техніка, устаткування та приладдя, крім меблів та пакетів програмного забезпечення та всі вкладені коди44000000-0 Конструкції та конструкційні матеріали0 Конструкції та конструкційні матеріали; допоміжна будівельна продукція (крім електроапаратури) та всі вкладені коди
- на рівні ЦБД можливість обрати:
- Не обовʼязковий Додаткові класифікатори - CPVS,
CVZU(CVZU - про землю. ЇЇ в цій процедурі немає, тому краще прибрати цей Додатковий класифікатор)
Посилання на legalName
...
basicSell-multiAwards - legal_names.json
Timeline процедури
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
legalName endpoint
Timeline процедури
Публікація процедури
Створення
...
процедури
Anchor | ||||
---|---|---|---|---|
|
- Інформація про Організатора аукціону (sellingEntity)
- Ідентифікатори Організатора аукціону (Код ЄДРПОУ або ІПН або паспорт) (sellingEntity.identifier)
- Адреса Організатора аукціону (повна адреса) (sellingEntity.address)
- Інформація про контактну особу (sellingEntity.contactPoint)
- Номер лоту (lotId)
- Повну назву Аукціону (заголовок) (title)
- Опис аукціону (description)
- Банківські рахунки організатора (bankAccounts)
- Гарантійний внесок (guarantee)Розмір кроку аукціону (minimalStep)
- Мінімальна ціна за одиницю обсягу (value)
- Сума (value.amount) Розмірність одиниці
- Валюта (value. valuePer
- currency)
- Мінімальна частка, яку може викупити учасник (minimalPart)
- Інформація про лот (items)
- Опис лоту (items.description)
- Класифікатор лоту (items.classification)
- Обсяг лоту (items.quantity)
- Одиниці виміру (items.unit) із переліку:
- BX - ящик
- D64 - блок
- E50 - одиниця
- GRM - грам
- H87 - штуки
- KGM - кілограм
- LTR - літр
- MTQ - метри кубічні
- RM- пачка
- TNE - тонни
- Документи
- Дата проведення аукціону (auctionPeriod.startDate)
Повний перелік полів в Swagger (ДОДАТИ ПОСИЛАННЯ)
Редагування
...
процедури
Протягом періоду редагування (rectifiactionPeriod) Організатор аукціону має право самостійно вносити зміни в опис лоту та оголошення щодо продажу лота в ЕТСполя та документи процедури .
Організатор має можливість внести зміни в поля які він заповнював самостійно під час публікації аукціону, окрім Дата проведення аукціону (auctionPeriod.startDate) та всіх автогенерованих полів:
Для внесення змін Організатор має попередньо завантажити документ - "Погодження змін до опису лоту. Опис причин редагування." (documentType: clarifications). Цей документ має містити перелік змін, які вносяться в оголошенняв оголошення, причину внесення таких змін. Він має бути доступний для завантаження в період редагування (rectificationPeriod) та є обов'язковим для подальшого внесення змін в поля процедури.
...
Expand |
---|
previousAuctionId tenderAttempts sellingEntity lotId title description accessDetails bankAccounts x_documentRequirements x_additionalInformation value valueAddedTaxCharged discount guaranteeminimalStep minNumberOfQualifiedBids items registrationFeedocuments minimalPart |
Періоди процедури
Технічна назва | Бізнесова назва | Дата початку | Дата завершення | Результат завершення | Коментар | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Період редагування | Дата та час публікації процедури в ЦБД | За 5 к.д. о 18:00 до auctionPeriod.startDate (може припадати на НЕ робочий день) Приклад: якщо auctionPeriod.startDate == 07.10.2024, то rectificationPeriod.endDate == 01.10.2024 о 18:00 | Редагування полів процедури більше недоступне |
| ||||||||||||||||
tenderPeriod | Період подання пропозицій | Дата та час публікації процедури в ЦБД | о 20:00 в день, що передує дню початку аукціону auctionPeriod.startDate (може припадати на НЕробочий день) | Статус процедури змінюється: active_tendering → active_auction |
| ||||||||||||||||
questionPeriod | Період запитань | Дата та час публікації процедури в ЦБД | Може припадати на НЕробочий день. о 2018:00 за 1 р.д. до початку аукціону | - |
| ||||||||||||||||
enquiryPeriod | Період відповідей | Дата та час публікації процедури в ЦБД | о 2018:00 за 1 р.д. до початку аукціону | - |
| ||||||||||||||||
auctionPeriod | Період аукціону | Завжди припадає на робочий день. Якщо розрахована дата - вихідний, то стар старт Аукціону буде в найближчий будній. Дата вказується організатором при публікації процедури. ЦБД приймає тільки auctionPeriod.startDate >= datePublished + 8 к.д. Верхню кількість днів - не обмежуємо Приклад: якщо datePublished == 25.09.2024, то auctionPeriod.startDate >= 03.10.2024 АБО якщо Організатор передав параметр isPerishable == true, то ЦБД приймає тільки auctionPeriod.startDate >= datePublished + 2 к.д. Верхню кількість днів - не обмежуємо Приклад: якщо datePublished == 25.09.2024, то auctionPeriod.startDate >= 27.09.2024 | Момент завершення роботи модуля аукціону | Статус процедури змінюється: active_auction → qualification OR unsuccessful | Залежить від наявності поданих заяв на участь (за умови наявності не менш ніж 2-х заяв на участь).
| ||||||||||||||||
qualificationPeriod | Період кваліфікації | qualificationPeriod.startDate == auctionPeriod.endDate | qualificationPeriod.endDate == qualificationPeriod.startDate + 20 р.д. о 18:00 | На рівні ЦБД: відсутній На рівні майданчика: за 24 години до завершення, надсилання повідомлення Організатору про завершення періоду кваліфікації. |
|
Статуси процедури
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Технічна назва | Бізнесова назва | Перехід з | За умови | Коментар | |||||
---|---|---|---|---|---|---|---|---|---|
active_tendering | Прийняття заяв на участь | - | Автоматично. В момент створення процедури | ||||||
active_auction | Аукціон | active_tendering | Автоматично. Завершився період прийому заяв на участь. В момент auctionPeriod tenderPeriod.startDateendDate | У визначену дату та час ЦБД, за наявності необхідної кількості заяв (перевірка кількості поданих заяв відбувається на рівні ЦБД, для проведення аукціону необхідно не менше 2 заяв на участь), змінює статус процедури з “Прийняття заяв на участь” (active_tendering) на “Аукціон” (active_auction). | |||||
active_qualification | Очікується опублікування протоколу | active_auction АБО active_tenderingАБО active_awarded | Автоматично. Завершився АукціонМодуль Аукціону АБО Автоматично. Завершився tenderPeriod і на момент tenderPeriod.endDate присутній тільки один валідний бід. АБО Автроматично. Якщо протягом qualificationPeriod попереднього учасника дискваліфіковано на етапі підписання договору, наявні учасники, що очікують, то починається кваліфікація першого учасника зі переліку з підписання нового протоколу. Процедура повторно набуває статусу active_qualification | В момент набуття процедурою вперше статуса active_qualification в обʼєкті процедури створюються Awards[] | В момент набуття процедурою вперше статуса active_qualification в обʼєкті процедури створюються Awards[] | ||||
| active_awarded | Очікується підписання договору | active_
|
|
| ||||
complete | Аукціон завершено | active_qualification | Ручна дія. Організатор надсилає запит на зміну procedure.status: active_qualification → complete | Термінальний статус. Тільки якщо в процедурі відсутні contracts[] у статусі pending і awards[] у статусі pending, Організатор аукціону може натиснути | complete | Аукціон завершено | active_awarded | Ручна дія. Організатор надсилає запит на зміну procedure.status: active_qualification → complete | Термінальний статус. Після завершення роботи із договором (contracts[]), Організатор аукціону натискає на кнопку “Завершити аукціон”. Після чого майданчик Організатора надсилає запит до ЦБД щодо зміни статусу процедури на “Аукціон завершено”. При виконанні дії зміни статуса на complete ЦБД перевіряє:
|
unsuccessful | Аукціон не відбувся | active_tendering active_qualificationactive_awarded | Автоматично. Якщо на момент tenderPeriod.endDate відсутні заяви на участь; АБО Якщо Організатор дискваліфікував всіх Учасників на етапі підписання протоколів АБО Якщо Організатор дискваліфікував Учасника на етапі підписання договоручи договорів | Термінальний статус. | |||||
cancelled | Аукціон скасовано | active_tendering active_auction active_qualification active_awarded | Ручна дія. Організатору доступна опція "Скасування" Процедури. Для скасування процедури, Організатору необхідно:
Після цього, при натисканні кнопки, надсилається запит на скасування. Статус процедури автоматично змінюється → cancelled | Термінальний статус. Для зміни статусу процедури на “Аукціон скасовано” Організатор зобов’язаний в особистому кабінеті натиснути кнопку “Скасувати аукціон”, завантажити документ з причинами скасування, вказати причину скасування довільним текстом (не словник), після чого майданчик надсилає запит до ЦБД на зміну статусу процедури на “Аукціон відмінено”. |
Anchor | ||||
---|---|---|---|---|
|
documentType | Назва Укр | Назва Анг | Опис | Обовʼязковіть для публікації процедури | Публічність | ||||
---|---|---|---|---|---|---|---|---|---|
illustration | Ілюстрації | Illustration | Зображення, що можуть додаватися Організатором до процедури | Ні | Так | ||||
notice | Паспорт торгів | Auction notice | Офіційне повідомлення, що містить деталі аукціону | Ні | Так | ||||
technicalSpecifications | Технічні специфікації | Technical specifications | Детальна інформація про лот | Так | Так | ||||
evaluationCriteria | Кваліфікаційні вимоги | Evaluation criteria | Інформація про те, як будуть оцінюватись цінові пропозиції учасників | Ні | Так | ||||
contractProforma | Типова форма договору | Contract proforma | Типова форма договору | Ні | Так | ||||
x_presentation | Презентація | Presentation | Презентація | Ні | Так | ||||
clarifications | Погодження змін до опису лоту. Опис причин редагування | Clarifications | Погодження змін до опису лоту. Опис причин редагування | Так, тільки для редагування процедури | Так | ||||
digitalSignature | Цифровий підпис | Digital signature | Цифровий підпис | digitalSignature | Цифровий підпис | Digital signature | Цифровий підпис | Ні | Так |
Скасування
...
процедури
У Організатора є можливість скасувати процедуру в будь-якому НЕ термінальному статусі процедури (active_tendering, active_auction, active_qualification, active_awarded).
Для скасування Організатор має:
...
В разі скасування процедури ЦБД автоматично присвоює процедурі статус “аукціон не відбувся” (procedure.status: cancelled)
Документи скасування процедури (cancellations.documents)
documentType | Назва Укр | Назва Анг | Опис | Обовʼязковіть для скасування процедури | Публічність |
---|---|---|---|---|---|
cancellationDetails | Причини скасування | Cancellation details | Інформація щодо причин скасування аукціону | Так | Так |
digitalSignature | Цифровий підпис | Digital signature | Цифровий підпис | Ні | Так |
Публікація заяви на участь
Періоди у заяви на участь ( bids[] ) відсутні.
...
У разі коли в момент закінчення кінцевого строку подання заяв про участь в аукціоні подано менше двох заяв, МА все одно запускається (чи не запускається?) і після нього одразу відбувається кваліфікація одного учасника.
Статуси заяви на участь
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
Технічна назва | Бізнесова назва | Перехід з | За умови | Коментар |
---|---|---|---|---|
draft | Чернетка заяви | момент публікації заявки в ЦБД | Ручна дія. Учасник надсилає запит на публікацію Bid-а | Публікація заяви на участь доступна тільки протягом tenderPeriod-а процедури. Мають бути заповнені:
Опублікувати бід можна без документів, але без обовʼязкових документів не буде можливості активувати Біда. |
active | Підтверджена заява | draft АБО inactive | Ручна дія. Учасник надсилає запит на зміну статуса Bid-а | Мають бути заповнені обовʼязкові поля:
та обовʼязкові документи |
deleted | Видалена заява | active АБО inactive | Ручна дія. Учасник надсилає запит на зміну статуса Bid-а | Скасувати свою заявку на участь є можливість тільки протягом tenderPeriod |
inactive | Деактивована заява | draft АБО active | Автоматично. За умови, що Організатор вніс зміни в процедуру згідно опису тут | Учасник, після вивчення змін, які вніс Організатор, може надіслати запит на повторну активацію своєї заяви, або запит на видалення заяви. |
Деактивація заяви на участь
У разі редагування оголошення (поля + документи) полів процедури Організатором, заяви на участь (у статусах draft та/або active) учасників автоматично переходять у статус inactive.
...
Note | ||
---|---|---|
| ||
Майданчики зобов’язані відслідковувати редагування полів в заведених процедурах\деактивацію заяв на участь своїх учасників. У випадку редагування, Майданчик інформує про факт редагування користувачів, які вже подали заяви на участь або задавали питання до аукціону, на e-mail та в особистому кабінеті Сповіщення має містити такий текст: Організатор торгів змінив умови проведення аукціону, всі заяви на участь деактивовано. Вам необхідно підтвердити або змінити свою заяву для участі в аукціоні. Якщо користувач не активував свою пропозицію, наступного дня за 24 години необхідно надсилати повторне сповіщення на e-mail та в особистий кабінет. Сповіщення повторювати до активації заяви на участь або до завершення прийому заяв на участь. В учасника має бути можливість анулювати свою заяву на участь після деактивації. Необхідно виводити інформацію про факт редагування та історичні дані на Майданчику. |
Anchor | ||||
---|---|---|---|---|
|
documentType | Назва Укр | Назва Анг | Опис | Обовʼязковіть для активації bid-а | Публічність |
---|---|---|---|---|---|
commercialProposal | Заява на участь | Commercial proposal | Заповнена електронна форма заяви | Ні | Так |
x_passport | Копія паспорта | Passport | Копія паспорта | Ні | Ні |
x_IPN | Копія ІПН | IPN | Копія Копія ІПН | Ні | Ні |
x_registerExtracttenderersRegisterExtract | Витяг з ЄДРПОУ | Register extract | Витяг Витяг з ЄДРПОУ | Ні | Так |
qualificationDocuments | Документи що підтверджують кваліфікацію | Qualification document | Документи Документи що підтверджують кваліфікацію | Ні | Так |
eligibilityDocuments | Документи що підтверджують відповідність | Eligibility Documents | Документи що підтверджують відповідність | Ні | Так |
auctionProtocol | Протокол аукціону | Auction protocol | Протокол аукціону | Ні | Так |
digitalSignature | Цифровий підпис | Digital signature | Цифровий підпис | Ні | Так |
Протягом tenderPeriod необхідно передбачити можливість Учаснику додавати і замінювати документи в bids[x].documents
Кваліфікація
За результатами періоду аукціону (auctionPeriod) пропозиції сортуються від найбільшої ціни до найменшої, а у випадку співпадіння ціни, вище відображається пропозиція розміщена раніше. Часом розміщення пропозиції вважається час першого розміщення заяви у ЦБД, а, у випадку редагування пропозиції під час періоду прийому пропозицій, час фіксації змін у заяві у ЦБД.
...
Awards[] формується для всіх учасників, відповідно до поданих кількості заяв на участь. Валідною ставкою вважається та, що рівна або більша за значення value.amount.
Періоди Awards
Технічна назва | Бізнесова назва | Дата початку | Дата завершення | Результат завершення | Коментар | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
awards.verificationPeriod | Період підписання протоколу | В момент набуття Авардом статуса pending | Завжди припадає на робочий день. verificationPeriod.endDate == verificationPeriod.startDate + 6 р.д. о 18:00 | На рівні ЦБД: відсутній |
| ||||||||||
awards.signingPeriod | Період підписання договору | В момент набуття Авардом статуса pending | signingPeriod.endDate ==signingPeriod.startDate + 20 р.д. о 18:00 | На рівні ЦБД: відсутній | Період формується в Аварді з моменту набуття Авардом статусу pending Тривалість періоду не змінюється від статуса Аварда Аварди в статусі pending_waiting цей період не отримують. Лише якщо в майбутньому цей Авард набуде статуса pending | ||||||||||
awards.admissionPeriod | Період прийняття рішення щодо набуття статусу переможця | В момент набуття Авардом статуса pending_admission | admissionPeriod.endDate == admissionPeriod.startDate + 5 р.д. о 18:00 | На рівні ЦБД: Статус аварда автоматично змінюється з pending_admission → cancelled | Період формується для Авардів у статусі pending_admission і продовжує відображатись в Аварді після зміни його статуса на будь-який інший. |
Anchor | ||||
---|---|---|---|---|
|
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Технічна назва | Бізнесова назва | Перехід з | За умови | Коментар | ||||||
---|---|---|---|---|---|---|---|---|---|---|
pending | Очікується протокол | При створенні Аварду АБО pending_waiting АБО pending_admission | Автоматично. Дискваліфіковано Авард у статусі pending протягом qualificationPeriod: pending_waiting → pending АБО Ручна дія. pending_admission → pending: Учасник погодився закрити залишок обсягу | Перехід із pending_waiting: Лише у випадку, якщо Організатор дискваліфікував одного чи більше Переможців, Аварди, що перебувають у статусі pending_waiting автоматично можуть змінити свій статус на pending за умови, що обсяг, який вказано в їх заявці повністю покривається залишком від обсягу, що залишився і не настала дата qualificationPeriod.endDate. Якщо завершився qualificationPeriod і після 20 р.д. Організатор дискваліфіковує переможця, наступний у черзі, який очікує, вже НЕ отримує статус pending (на 21-й день вже не має бути Авардів у статусі pending_waiting, бо визначено одного, хто змінив свій статус на pending_admission, а всі інші змінили свій статус на cancelled)
Організатор вказав обсяг procedure.items.quantity == 1000 Учасник_1 бажає придбати awards.items.quantity == 700 по найбільшій ціні 120 Учасник_2 бажає придбати awards.items.quantity == 200 по ціні 110 Учасник_3 бажає придбати awards.items.quantity == 400 по ціні 100 В запропонований обсяг, що реалізує Організатор потрапляють тільки Учасник_1 і Учасник_2, бо їх сумарна заявка 700+200 = 900. (Учасник_3 не потрапляє в квотуобсяг, бо в його заяві quantity == 400, а залишок після Учасник_1 і Учасник_2 тільки 100) В даному прикладі, Учасник_3 отримує статус pending_waiting Після цього Організатор дискваліфіковує Учасника_1 з його пропозицією 700. Учасник_3 автоматично отримує статус pending з своєю пропозицією 400, бо 400 повністю покривається обсягом 1000 (першого дискваліфікували, другий 200, третій 400, 200+400 = 600, що менше, ніж 1000) Приклад2: Організатор вказав procedure.items.quantity == 1000 Учасник_1 запропонував awards.items.quantity == 100 по найбільшій ціні 120 Учасник_2 запропонував awards.items.quantity == 200 по ціні 110 Учасник_3 запропонував awards.items.quantity == 900 по ціні 100 Обсяг 1000 повністю покриває тільки запропоновані обсяги Учасника_1 і Учасника_2. Запропонований Учасником_3 обсяг повнітю не реалізується (він запропонував 900, а після розподілення між першим і другим учасниками, залишилось не розподілено тільки (1000 - 100 - 200) == 700 ) В даному прикладі Учасник_3 отримує статус pending_waiting Після цього Організатор дискваліфіковує Учасника_1 з його пропозицією 100. Учасник_3 НЕ отримує статус pending з своєю пропозицією 900, бо 900 повністю не покривається залишком обсягу (1000 - 200 = 800 - залишок обсягу, а Учасник_3 пропонує 900, що більше, ніж 800) Його статус залишається pending_waiting. P.S.: в майбутньому він отримає статус "Умовний переможець" (pending_admission) і зможе погодитись забрати залишок, який складає 800 із його заявлених 900. Перехід із pending_admission: Учасник в статусі pending_admission має можливість вказати обсяг, який він готовий забрати і змінити статус на pending. Далі відбувається його кваліфікація за логікою кваліфікації інших переможців. | ||||||
pending_waiting | Очікується рішення | При створенні Аварду | Автоматично. Статус отримують Аварди одразу після завершення роботи модуля аукціону | Статус pending_waiting отримують Аварди, які перебувають у списку результатів Модуля Аукціону за умови, що обсяг, який вони вказали в заявці на участь повністю НЕ покривається обсягом, який вказав Організатор в оголошенні, з причини, що обсяг вже закритий іншими пропозиціями учасників, що запропонували більшу ціну. Приклад 1: Організатор вказав обсяг procedure.items.quantity == 1000 Учасник_1 вказав в заявці awards.items.quantit == 700 по найбільшій ціні 120 Учасник_2 вказав в заявці awards.items.quantit == 200 по ціні 110 Учасник_3 вказав в заявці awards.items.quantit == 200 по ціні 100 Обсяг 1000 повністю покриває тільки запропоновані в заявках Учасника_1 і Учасника_2. Бажаний Учасником_3 обсяг повнітю не реалізується (він запропонував 200, а після розподілення між першим і другим учасниками, залишилось не розподілено тільки (1000 - 700 - 200) == 100 ) В даному прикладі тільки третій учасник отримує статус pending_waiting Приклад 2: Організатор вказав квоту procedureобсяг procedure.items.quantity == 1000 Учасник_1 вказав в заявці awards.items.quantit 1000 по найбільшій ціні 100 Учасник_2 вказав в заявці 800 по ціні 110 Учасник_3 вказав в заявці 700 по ціні 100 Обсяг 1000 повністю покриває тільки бажаний обсяг Учасника_1. Бажаний Учасником_2 обсяг повністю не реалізується (він запропонував 800, а після Учасника_1 , залишилось не розподілено (1000 - 1000) == 0 ) В даному прикладі другий і третій учасники отримують статус pending_waiting Організатор не може дискваліфікувати Учасника, що очікує рішення Учасник не має можливості відмовитись від очікування. | ||||||
pending_admission | Умовний переможець | pending_waiting | Автоматично. Завершився qualificationPeriod.endDate АБО Автоматично. За умови, що всі Awards, що мали статус pending отримали статус active і їх повʼязані Contracts[] також отримали статус active (Організатор успішно кваліфікував всіх Переможців, підписав протоколи і договори, залишилось вирішити питання тільки з залишком запропонованого обсягу, що може бути закритий "умовним переможцем") Три умови: 2. Відсутні Аварди у статусі pending 3. Відсутні Contracts у статусі pending Тоді ЦБД визначає Аварда, який набуває статус pending_admission | Статус pending_admission отримує тільки один Award, який знаходиться у статусі pending_waiting і запропонував найбільшу після Переможців ціну за умови, що залишився нерозполіделий нерозподілений залишок. У випадку, коли Організатор успішно кваліфікував всіх переможців (всі Awards у статусі pending набули статусу active і їх повʼязані contracts[] також набули статусу active), не чекаючи 20-го дня після завершення МА, учасник одразу отримує статус pending_admission і отримує можливість погодитись чи відмовитись від нерозподіленого залишку обсягу. Це потрібно для того, щоб після успішної кваліфікації переможців, не було необхідності чекати завершення періоду кваліфікації для погодження умовним переможцем своє право на набуття статуса переможця. В момент отримання Авардом статусу pending_admission, всі інші Аварди, які перебувають у статусі pending_waiting отримують статус cancelled (дискваліфікація Переможців вже неможлива, бо закриті протоколи+договори. Вибор іншого "умовного переможця" не передбачений) В цьому статусі Умовний переможець може:
| ||||||
active | Переможець. Очікується договір | pending | Ручна дія. Організатор надсилає запит на зміну статуса Awards[].status: pending → active | Після завантаження в Awards[] протоколу Організатор надсилає запит на зміну Awards[].status: pending → active чим підтверджує підписання протоколу. ЦБД автоматично створює до цього аварду contracts[] у статусі pending | ||||||
cancelled | Учасник не став переможцем | pending_admission АБО pending_waiting | із pending_admission: Ручна дія. Учасник ("Умовний переможець") відмовляється "забрати" нерозподілений залишок і надсилає запит на зміну статуса АБО Автоматично. Якщо протягом awards.admissionPeriod учасник ("Умовний переможець") не надав відповіді із pending_waiting: Автоматично. В момент, коли будь-який Авард набуває статусу pending_admission, всі інші Аварди, які знаходяться у статусі pending_waiting автоматично набувають статус cancelled | Термінальний статус. Після набуття статусу pending_admission "Умовний переможець" має можливість відмовитись забрати залишок обсягу і скасувати свою заявку (змінити статус Аварда з pending_admission на cancelled). Якщо протягом awards.admissionPeriod учасник ("Умовний переможець") не надав відповіді, то ЦБД автоматично змінює статус його Аварда. Після набуття статусу pending_admission "Умовний переможець" всі Аварди, які на цей момент заходились у статусі pending_waiting набувають статус cancelled | ||||||
unsuccessful | Дискваліфіковано | pending АБО active | Ручна дія. Організатор надсилає запит на зміну award.status: pending → unsuccessful Ручна дія. Організатор надсилає запит на зміну статуса Аварда active → unsuccessful | Термінальний статус. pending → unsuccessful: ЦБД має валідувати, що в Авард завантажено документ з documentType: rejectionProtocol АБО act При зміні статуса з pending → unsuccessful ЦБД має валідувати, що заповнено awards.terminationReason значенням зі словника
При зміні статуса з active → unsuccessful Організатору необхідно заповнити поле terminationReason значенням зі словника Обовʼязково завантажити документ з documentType: rejectionProtocol АБО act |
Документи обʼєкта кваліфікації (awards.documents)
documentType | Назва Укр | Назва Анг | Опис | Обовʼязковіть | Публічність |
---|---|---|---|---|---|
auctionProtocol | Протокол аукціону | Auction protocol | Протокол підписується і завантажується для кожного учасника окремо Завантажити документ auctionProtocol можна тільки в Авард у статусі pending Бізнесово - вантажити необхідно індивідуальний протокол, який генерується, як тільки процедура набуває статусу active_qualification і Авард в статусі pending | Так Для зміни awards.status: pending → active | Так |
rejectionProtocol | Протокол відхилення | Rejection protocol | Завантажується Організатором у разі відмови Переможцем підписувати протокол або договір. Обовʼязково необхідно заповнити поле terminationReason однією причиною зі словника | Так Для зміни awards.status: pending → unsuccessful Для зміни awards.status: active → unsuccessful | Так |
act | Акт про відмову | Refusal act | Завантажується Організатором у разі відмови Переможцем підписувати протокол або договір. Обовʼязково необхідно заповнити поле terminationReason однією причиною зі словника | Так Для зміни awards.status: pending → unsuccessful Для зміни awards.status: active → unsuccessful | Так |
digitalSignature | Цифровий підпис | Digital signature | Цифровий підпис | Ні | Так |
Підписання договору з переможцем (contracts)
Коли з учасником успішно підписано протокол і Award набуває статусу active, ЦБД автоматично генерує для цього учасника повʼязаний Contract у статусі pending
...
Періоди у contracts[] відсутні
Anchor | ||||
---|---|---|---|---|
|
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Технічна назва | Бізнесова назва | Перехід з | За умови | Коментар |
---|---|---|---|---|
pending | Очікується договір | Момент набуття Award-ом статусу active | Автоматично. Якщо будь-який Авард набуває статусу active, то ЦБД автоматично створює повʼязаний contracts у статусі pending. | |
active | Договір підтверджено | pending | Ручна дія. Організатор завантажує документ contracts[x].documents.documentType: contractSigned і після цього надсилає запит на зміну contracts.status: pending → active | При зміні contracts[].status: pending → active, на ЦБД має відбутися перевірка на наявність в contracts[].documents документа з documentType: contractSigned |
cancelled | Договір скасовано | pending | Автоматично. За умови дискваліфікації Аварда із active → unsuccessful | Для того, щоб дискваліфікувати Учасника з причини того, що НЕ підписано договір, необхідно надіслати запит на зміну статуса Аварда active → unsuccessful (логка описана в статусі Аварду) |
Документи контракту (contracts.documents)
documentType | Назва Укр | Назва Анг | Опис | Обовʼязковіть | Публічність |
---|---|---|---|---|---|
contractSigned | Підписаний договір | Signed contract | Завантажується для кожного Переможця з ким підписано договір | Так Для зміни contracts.status: pending → active | Так |
contractAnnexe | Додатки до договору | Contract annexe | Додатки до договору | Ні | Так |
contractNotice | Повідомлення про договір | Contract notice | Повідомлення про договір | Ні | Так |
digitalSignature | Цифровий підпис | Digital signature | Цифровий підпис | Ні | Так |
Логіка проведення кваліфікації
Одразу по завершенню роботи Модуля аукціону (далі - МА) генеруються Аварди, кількість яких відповідає кількості Бідів, які на момент початку МА мали статус active.
Порядок розміщення Авардів важливий!
Логіка формування порядку Awards:
За результатами роботи МА (auctionPeriod) пропозиції сортуються від найбільшої ціни до найменшої, а у випадку співпадіння ціни, вище відображається пропозиція розміщена раніше.
...
За результатами автоматичного розподілення, всі Аварди отримують статус pending АБО pending_waiting.
Для кожного Аварда, який отримав статус pending ЦБД генерується протокол.
...
Організатор може дискваліфікувати тільки Авард у статусі pending або active і не може дискваліфікувати Авард у статусі pending_waiting
...
Всі Аварди, що отримували статус pending мають бути АБО кваліфіковані (отримати статус active), АБО дискваліфіковані (отримати статус unsuccessful).
Визначення умовного переможця
Умовний переможець визначається в двох випадках:
...
Власнику Аварда у статусі pending_admission має бути доступна можливість надіслати запит, в якому вказати обсяг, на який він погоджується і готовий купити (quantity), але цей обсяг не може має бути менше >= procedure.minimalPart і більше за <= за нерозподілений залишок.
Якщо обсяг,що передає "Умовний переможець" поза діапазоном, то ЦБД повертає валідаційну помилку.
...
- Чи завершився qualificationPeriod.endDate?
- якщо "ні", то для першого у списку Аварду у статусі pending_waiting відбувається перевірка:
- Якщо обсяг першого у списку Аварду у статусі pending_waiting дорівнює чи менше нерозподіленого залишку ТА дорівнює чи більше Мін частки, що вказав Організатор при публікації, то цей Авард автоматично змінює свій статус на pending.
- Якщо обсяг першого у списку Аварду у статусі pending_waiting більше нерозподіленого залишку чи менше Мін частки, то Авард залишається в статусі pending_waiting.
- якщо "ні", то для першого у списку Аварду у статусі pending_waiting відбувається перевірка:
Дискваліфікація учасника
У Організатор є можливість дискваліфікувати учасника на етапі підписання протоколу чи на етапі підписання договору.
Є можливість дискваліфікувати Awards[], які мають статус pending або active
Для того, щоб дискваліфікувати учасника, Організатору необхідно:
- Вказати причину дискваліфікації значенням із словника basicSellTerminationReason
- Завантажити в Авард документ rejectionProtocol АБО act
- Надіслати запит на зміну Awards[].status → unsuccessful
Anchor examples examples
ПРИКЛАДИ:
examples | |
examples |
Назва в прикладах | шлях в API |
---|---|
Організатор | procedure.sellingEntity.* |
Обсяг | procedure.items[0].quantity |
Мін ціна | procedure.value.amount |
Мін частка | procedure.minimalPart |
Учасник | procedure.bids[] |
Обсяг пропозиції | procedure.bids[*].quantity |
Ціна пропозиції | procedure.bids[*].value |
...
Результат: Обсяг 1000 частково закритий Учасником_1, який забрав 400. Учасник_2 і Учасник_3 - дискваліфіковані
Умови завершення аукціону
Завершення аукціону (переведення у статус complete)
Організатор має можливість завершити аукціон у разі підтвердження або дискваліфікації учасників, які не пройшли кваліфікацію (всі Awards знаходяться у статусі active, unsuccessful, cancelled). Після завершення роботи із договором з кожним переможцем, Замовник аукціону натискає на кнопку “Завершити аукціон”. Після чого процедура змінює статус на complete.
Модель
basicSell. basicSellMultiAwardsProcedure | type | readOnly | Обовʼязково передавати при публікації процедури | x-legalNameUa | x-legalNameEn | Коментар | ||
---|---|---|---|---|---|---|---|---|
owner | string | true | Ідентифікатор майданчика | Broker identifier | ||||
ownerToken | string($uuid) | true | ||||||
_id | string | true | Внутрішній ідентифікатор аукціону | ID | ||||
datePublished | string($date-time) | true | Дата публікації процедури | Published date | ||||
dateModified | string($date-time) | true | Остання дата зміни процедури | Procedure date modified | ||||
auctionId | string | true | Ідентифікатор аукціону | Auction ID | BSM | |||
disqualifiedBids | list[] string | true | Раніше дискваліфіковані | Previously disqualified | логіку робили для BSE/BSD тут необхідно таку ж логіку для BSM | |||
previousAuctionId | string | Номер попереднього аукціону | Previous auction Id | pattern: ^(BS[EDMW][0-9]{3}-UA-[0-9]{8}-[0-9]{5}|[a-zA-Z]{2}-[a-zA-Z]{2}-[0-9]{4}-[0-9]{2}-[0-9]{2}-[0-9]{6}-[0-9])$ | ||||
sellingMethod | string | + | Тип процедури | Procedure type | basicSell-multiAwards basicSell-multiAwards-ultra-fast basicSell-multiAwards-fast basicSell-multiAwards-fast-manual basicSell-multiAwards-fast-auction-manual-qualification basicSell-multiAwards-fast-auction-prod basicSell-multiAwards-initial-auction basicSell-multiAwards-initial-qualification basicSell-multiAwards-initial-qualification-prod basicSell-multiAwards-initial-qualification-fast basicSell-multiAwards-initial-auction-manual | |||
priceTrend | string | true | поле заповнюється автоматично ЦБД, як ascending Enum:[descending,ascending] | |||||
sellingEntity | model base.Organization | + | Інформація про замовника аукціону | Organizer information |
Використовуємо готову модель із basicSell-english | ||||||||
name | model base.multiLang | Повна юридична назва організації або ПІБ | Legal name or Full Name | |||||
identifier | model base.Identifier | + | Ідентифікатори організації або особи | Identifier | Використовуємо готову модель із basicSell-english | |||
scheme | string | + | Ідентифікатори організації | ID type | Обирається одне значення зі словників: | |||
legalName | model base.multiLang | + | Повна юридична назва організації | Legal name | Для публікації процедури обовʼязково заповнено legalName.uk_UA | |||
id | string | + | Код ЄДРПОУ або ІПН або паспорт | Legal ID | ||||
address | model anyOf → base.Address base.AddressUa | + | Адреса | Address | Використовуємо готову модель із basicSell-english | |||
countryName | model base.multiLang | + | Країна | Country | uk_UA - Для публікації процедури обовʼязково для заповнення | |||
region | model base.multiLang | + | Область | Region | uk_UA - Для публікації процедури обовʼязково для заповнення | |||
locality | model base.multiLang | + | Населений пункт | Locality | uk_UA -Для публікації процедури обовʼязково для заповнення | |||
streetAddress | model base.multiLang | + | Адреса | Address | uk_UA - Для публікації процедури обовʼязково для заповнення | |||
postalCode | string | Поштовий індекс | ZIP code | pattern: ^[0-9]{5}$ | ||||
representativeInfo | string | Інформація щодо підтвердження повноважень | Representative information | |||||
contactPoint | model base.ContactPoint | + | Контактна особа | Main contact | Використовуємо готову модель із basicSell-english | |||
name | model base.multiLang | + | ПІБ | Main contact name | uk_UA - Для публікації процедури обовʼязково для заповнення | |||
string($email) | + | Адреса електронної пошти | Main contact e-mail | |||||
telephone | string | + | Номер телефону | Phone number | ||||
faxNumber | string | Номер факсу | Fax number | |||||
url | string($uri) | Веб адреса | Website | |||||
lotId | string | + | Номер лоту | Lot number | ||||
title | model base.multiLang | + | Заголовок аукціону | uk_UA - Для публікації процедури обовʼязково для заповнення | ||||
description | model base.multiLang | + | Опис аукціону | uk_UA - Для публікації процедури обовʼязково для заповнення | ||||
accessDetails | model base.multiLang | Порядок ознайомлення з майном, час і місце проведення огляду об’єкта | Auction access details | |||||
bankAccounts | model basicSell.BankAccountsByType | + | Банківські рахунки | Bank accounts | Використовуємо готову модель із basicSell-english При публікації обов'язковоодинбанківськийрахунокзтипом guarantee івалютою UAH. Рахунківдлякожноготипув UAH/USD/EUR можебутибезліч. | |||
accountType |
| Тип рахунку | Account type | Enum: [ registrationFee, guarantee, other, payment ] | ||||
accounts |
|
Рахунок |
Account | Використовуємо готову модель із basicSell |
-english | ||||||||
x_documentRequirements | model base.multiLang | Перелік та вимоги до оформлення документів | Document requirements | |||||
x_additionalInformation | model base.multiLang | Додаткові відомості | Other requirements and additional information | |||||
value | model ValueWithTax | + | Мінімальна |
ціна за одиницю обсягу | Start lot price |
currency | string | + | Валюта | Currency | Enum: [UAH, USD, EUR] | |||
amount | number($float) | + | Сума | Amount | ||||
valuePer | model base.Unit | true |
Одиниці виміру | Measure unit | default: заповнюємо значенням із procedure.items[0].unit P.S.: зараз не даємо можливості редагувати це поле Організатору. Завжди дорівнює procedure.items[0].unit |
Але в майбутньому може розблокуємо це поле і дамо можливість Організатору передавати щось відмінне від procedure.items[0].unit (Наприклад, в REM ціна була за KWH, хоча items[].unit = KWT) Вказані одиниці ніяк не впливають на розрахунки! | ||||||||
valueAddedTaxIncluded | boolean | Податок | Tax | default: true Організатор може передати інше значення за потреби | ||||
valueAddedTaxCharged | boolean | На фінальну суму нараховується ПДВ | Value added tax charged | default: false Організатор може передати інше значення за потреби | ||||
discount | model base.Discount | Знижка | Discount | Використовуємо готову модель із basicSell |
-english | ||||||||
guarantee | model base.Value | + | Гарантійний внесок | Guarantee | Використовуємо готову модель із basicSell |
-english | |||
minimalStep | model base.Value |
+ | Розмір кроку аукціону | Minimal Step | Організатор |
передає |
"amount": 0.01
значення. P.S.: В Регламенті ЕТС вказано, що крок має бути від 1 до 10% від стартової ціни. Але на ЦБД ми такого обмеження не робимо. Його немає і в BSE | ||||||||
currency | string | true | Валюта | Currency | default: == value.currency | |||
amount | number($float) | true | Сума | Amount | default: 0.01 | |||
minimalPart | number($float) | + | Мінімальна частка | Minimal part | minimum: 1 | |||
minNumberOfQualifiedBids | integer($int64) | Мінімальна кількість заяв учасників | Minimal number of bids | default: 2 Організатор може передати значення 1 за потреби minimum: 1 | ||||
tenderAttempts | integer($int64) | Лот виставляється | Attempt number | default: 1 minimum: 1 | ||||
items[] | list[] model basicSell-multiAwards.Item | Склад лота | Lot composition | МАЄ БУТИ МОЖЛИВІСТЬ ДОДАТИ ТІЛЬКИ ОДИН item В МАСИВ items[] ! | ||||
id | string | true | Внутрішній ідентифікатор обʼєкта | Item ID |
| |||
description | model base.multiLang | + | Опис лота | Item description | uk_UA - Для публікації процедури обовʼязково для заповнення | |||
classification | model Classification | + | Класифікатор | Classification |
| |||
scheme | string | + | Схема класифікатора | Item classification scheme | Enum: [CAV] | |||
description | model base.multiLang | true | Опис коду классифікатора | Classification ID | ||||
id | string | + | Код классифікатора | Classification ID |
model
base.Unit
Автозаповнюється ЦБД при публікації процедури
Організатор НЕ передає це поле
string
default: KWT
Можливість обрати тільки один із:
| ||||||||
unit | model base.Unit | + | Одиниці виміру обʼєкта | Item unit | Використовуємо готову модель із basicSell-english словник https://procedure.prozorro.sale/api/classifiers/unitCode При публікації доступно тільки:
| |||
code | string | + | Код одиниці виміру | Unit code | ||||
name | model base.multiLang | true | Назва одиниці виміру | Item unit name | Автозаповнюється значенням із словника в залежності від значення unit.code | |||
quantity | number($float) | + | Кількість одиниць | Item quantity | minimum: 0 | |||
address | model base.AddressUa | + | Місцезнаходження | Item address | Використовуємо готову модель із basicSell-english P.S.: Поставив "+" в "обовʼязково для заповнення, бо класифікатори, які використовуютьсі в цій процедурі вимагають заповннення адреси | |||
additionalClassifications[] | list[] model basicSell.AdditionalClassification | Додатковий класифікатор | Item additional Classification ID | Використовуємо готову модель із basicSell-english Вказання додаткового класифікатора Не обовʼязкове при публікації процедури | ||||
scheme | string | Схема додаткового класифікатору | Item additional classification scheme | Enum: [CPVS, | ||||
description |
model base.multiLang | true |
default:
"uk_UA": "Кіловат-година",
"en_US": "kilowatt hour"
Опис додаткового класифікатору | Item additional classification description | Автозаповнюється в залежності від additionalClassification.id | ||||||
id | string | Код додаткового класифікатору | Item additional classification ID | Значення із словника CPVS обирає Організатор при публікації | ||||
location | model base.Location |
number($float)
Для публікації процедури обовʼязково для заповнення
ВИДАЛЯЄМО
model
RenewablesКоординати |
Location | Використовуємо готову модель із basicSell-english |
latitude | string |
Широта |
Latitude | |
longitude | string | Довгота | Longitude |
elevation | string |
Висота | Elevation | ||||
basicSellItemType | string |
Використовуємо логіку із basicSell-english P.S.: але для Класифікаторів, які доступні в цій процедурі нічого тут генеруватися не буде, а класифікатори, для яких тут генерується значення не використовуються в цій процедурі | |
itemProps |
[] |
model |
string
model
base.multiLang
Автозаповнюється цз словника generationType згідно коду
string
x-dictionaries: List [ "generationType" ]
model
base.Location
МАЄ БУТИ МОЖЛИВІСТЬ ДОДАТИ ТІЛЬКИ ОДИН additionalClassification В МАСИВ!
НЕ МОЖЕ БУТИ ДЕКІЛЬКА additionalClassification в одному айтемі !
Технічні характеристики | Technical characteristics | Використовуємо логіку із basicSell-english anyOf → basicSell.LandProps P.S.: але для Класифікаторів, які доступні в цій процедурі нічого тут генеруватися не буде, бо класифікатори, для яких тут генерується значення не використовуються в цій процедурі | ||||||
registrationDetails | model base.RequiredRegistrationDetails | Інформація щодо реєстрації | Registration details | Використовуємо логіку із basicSell-english | ||||
registrationStatus | string | Стан державної реєстрації об''єкту | State of official registration of the registry | |||||
registrationID | string | Номер запису | Registration ID | |||||
registrationDate | string | Дата реєстрації | Registration date | |||||
isPerishable | boolean | Майно, що швидко псується | Perishable property | Використовуємо логіку із basicSell-english default: false !!! Якщо Організатор при створенні процедури обрав Основний класифікатор (чи вкладені в них): В інших випадках віддавати валідаційну помилку при публікації Процедури, що обраний класифікатор не дозволяє встановити параметр isPerishable: true |
documents[] | model base.Documents |
documentOf: auction
documentType: [illustration, technicalSpecifications, evaluationCriteria, contractProforma, x_lotInfoEN, x_verificationAct, guaranteeTemplate, clarifications, digitalSignature]Використовуємо логіку із basicSell-english | |||
bids[] | model |
basicSell-multiAwards.Bid | Заява на участь | Bid |
| |||||
owner | string | true | Ідентифікатор майданчика | Broker ID |
| |||
ownerToken | string($uuid) | true |
| |||||
id | string | true | Ідентифікатор заяви на часть | Bid ID |
| |||
bidders[] | model base.Organization | Інформація учасника | Bidder info | Використовуємо логіку із basicSell-english | ||||
name | model base.multiLang | true | Повна юридична назва організації або ПІБ | Legal name or Full Name | Автозаповнюється автоматично із identifier.legalName.* | |||
identifier | model base.Identifier | Ідентифікатори організації або особи | Identifier | scheme* string Обирається одне значення зі словників: legalName* model base.MultiLang id* string Обовʼязкові поля для активації Біда | ||||
address | model anyOf -> base.Address OR baseAddressUa | Адреса | Address | Обовʼязкові поля для активації Біда: countryName region locality streetAddress | ||||
representativeInfo | string | Інформація щодо підтвердження повноважень | Representative information | |||||
contactPoint | model base.ContactPoint | Контактна особа | Main contact | Обовʼязкові поля для активації Біда name telephone | ||||
datePublished | string($date-time) |
true | Дата заяви на участь | Bid date |
| |
dateModified | string($date-time) |
true | Остання дата редагування ставки | Bid modified date |
| |||||
status | string | Статус заяви на участь | Bid status | Enum:[draft, active, deleted, inactive] | ||||
value | model | Цінова пропозиція за |
одиницю обсягу | Price per |
unit | Обовʼязкове поле для активації Біда | |||||||
currency | string | Валюта | Currency | Enum:[ |
UAH, USD, EUR ] Обовʼязкове поле для активації Біда | ||||||||
amount | number($float) | Сума | Amount | Обовʼязкове поле для активації Біда | ||||
documents[] |
| model base.Documents | Документи до заяви про участь | Bid |
documents | Використовуємо логіку із basicSell-english documentOf: bid documentType: [ |
commercialProposal, x_ |
passport, x_ |
IPN, x_ |
tenderersRegisterExtract, |
qualificationDocuments, eligibilityDocuments, digitalSignature, auctionProtocol ] | |||
participationUrl | string |
true | Веб-адреса для участі в аукціоні | Bidder participation link |
| |
order | integer($int64) |
ВИДАЛИТИ
ВИДАЛИТИ
model
Unittrue |
readOnly: true
string
default: KWT
model
base.multiLang
default:
Використовуємо логіку із basicSell-english |
"en_US": "kilowatt hour"
quantity | number($float) |
+ | Бажаний обсяг активу | Bid quantity |
minimum: 0 |
inactiveBidDate |
string($date-time) | true |
Дата деактивації заяви на участь | Deactivation date | Використовуємо логіку із basicSell-english |
initialValueAmount | number($float) |
true | Початкова ставка | Start bid amount |
Використовуємо логіку із basicSell-english | |||||||
questions[] | model base.Questions | Запитання до аукціону | Q&A |
Використовуємо логіку із basicSell-english | ||||||||
awards[] | model | Обʼєкт кваліфікації | Award |
| ||||
id | string |
true | ідентифікатор обʼєкта кваліфікації | Award ID |
| ||||
title | model base.multiLang | Назва обʼєкта кваліфікації | Award title |
Я БИ ВИДАЛИВ Awards.title та Awards.description.
Вони не заповнюються і не розумію навіщо потрібні. Але присутні у всіх Процедурах
description | model base.multiLang | Опис обʼєкта кваліфікації | Award description |
status | string | Статус | Status | Enum: |
[pending, pending_waiting |
, pending_admission, active |
, unsuccessful, cancelled] | ||||||||
terminationReason | string | Причина дискваліфікації | Termination Reason | dict: |
datePublished | string($date-time) | true | Дата створення | Award published date |
| |||
value | model base.Value | Цінова пропозиція за одиницю обсягу | Award price per unit |
| ||||
currency | string | Валюта | Currency | Enum:[ |
UAH, USD, EUR ] | ||||||||
amount | number($float) | Сума | Value | |||||
buyers[] | model base.Organization | Дані учасника | Award buyer info |
Використовуємо логіку із basicSell-english | ||||||||
name | model base.multiLang | Повна юридична назва організації або ПІБ | Legal name or Full Name | |||||
identifier | model base.Identifier | Ідентифікатори організації або особи | Identifier | |||||
address | model base.Address base.AddressUa | Адреса | Address | |||||
representativeInfo | string | Інформація щодо підтвердження повноважень | Representative information | |||||
contactPoint | model base.ContactPoint | Контактна особа | Main contact | |||||
items[] |
Поля копіюються із procedure.items[] | ||||||||
id | string | true | Внутрішній ідентифікатор обʼєкта | Item ID | копіюється id айтема із процедури | |||
description | model base.multiLang | Опис лота | Item description | копіюється description |
із item-а процедури | ||||||||
classification | model Classification | Класифікатор | Classification | копіюється classification |
із item-а процедури | |||||
unit |
Одиниця виміру |
Unit | копіюється |
unit із item-а процедури | ||
address |
ЛОГІКА ВІДОБРАЖЕННЯ quantity в Аварді:
У статусі [verification, waiting, unsuccessful, pending, protocol_signed, active, pending_admission] - відображаємо quantity
У статусі [cancelled, pending_waiting] - не відображаємо
копіюється із повʼязаного Біда
копіюється address із item-а процедури | ||||||||
itemProps[] | копіюється itemProps[] із item-а процедури | |||||||
additionalClassifications[] | копіюється additionalClassifications[] із item-а процедури | |||||||
quantity | number($float) | Бажаний обсяг активу | Award quantity | копіюється із повʼязаного Біда: bids[].quantity | ||||
totalCost | model base.Value | true | Цінова пропозиція за бажаний обсяг | Total cost | Розраховується тільки для Авардів, які набувають статус pending і не змінюється при зміні статуса на інший. == award.quantity * award.value.amount | |||
currency | string | true | Валюта | Currency | == award.value.currency | |||
amount | number($float) | true | Сума | Amount | == award.quantity * award.value.amount |
ВИДАЛЯЄМО
модель items[].itemProps використовуємо таку саму, як і в процедурі вище
Копіюється із процедури
Копіюється із процедури
documents[] | model Documents |
Документи до аварду | Award documents |
documentOf: award documentType:[rejectionProtocol, auctionProtocol, act, digitalSignature] | |||||
dateModified | string($date-time) |
Дата зміни аварду | Award date modified |
| |||||
bidId | string |
Ідентифікатор заяви на участь учасника аукціону | Bid id |
| ||||||||
signingPeriod | model base.Period | Період підписання договору | Signing period |
| ||||
verificationPeriod | model base.Period | Період підписання протоколу | Verification period |
| ||||
admissionPeriod | model base.Period | Період прийняття рішення щодо набуття статусу переможця | Admission period | генерується для Аварду, що набуває статусу pending_admission | ||||
timer | string($date-time) | true | ||||||
archiveId | string | true | ||||||
contracts[] | model |
basicSell-multiAwards.Contract | Договір | Contract | ||||||
id | string | true | Внутрішній ідентифікатор договру | Contract Id | ||||
awardId | string | true | Ідентифікатор переможця | Award id | ||||
contractNumber | string | Номер договору | Contract number | |||||
title | model base.multiLang | Назва договору | Contract title | |||||
description | model base.multiLang | Опис договору | Contract description | |||||
value | model base.Value | Вартість за одиницю обсягу | Contract value per unit | |||||
currency | Валюта | Currency | ||||||
amount | Сума | Value | ||||||
totalCost | model base.Value | Вартість за бажаний обсяг | Contract value per quantity | копіюється із повʼязаного Award | ||||
contractTotalValue | model base.Value | Заключна вартість договору | Total contract's value | |||||
currency | Валюта | Currency | ||||||
amount | Сума | Value | ||||||
items[] | копіюється із повʼязаного Award в тій самій структурі | |||||||
buyers[] | копіюється із повʼязаного Award в тій самій структурі | |||||||
status | Статус | Status | Enum:[pending,active,cancelled] | |||||
dataSigned | Дата підписання договору | Contract date signed | ||||||
datePublished | Дата створення об'єкта договору | Contract's creation date | ||||||
dateModified | Остання дата редагування договору | Contract |
's modified date | ||||||||
documents[] | model base.Document | Документи договору | Contract documents | documentOf: contract documentType: [contractSigned, contractAnnexe, contractNotice, digitalSignature] | ||||
contractTime |
model base.LifeTime | Строк дії договору | Contract's terms | ||||||
dateFrom | string($date-time) | Період з | Date from | |||||
dateTill | string($date-time) | Період до | Date till | |||||
inactivationDate | string($date-time) | Дата деактивації заяви на участь | Inactive bid date | Використовуємо логіку із basicSell-english |
rectificationPeriod | model base.Period | true | Період редагування | Rectification period |
Використовуємо логіку із basicSell-english | ||||||||
enquiryPeriod | model base.Period | true | Період відповідей | Enquiry period | Використовуємо логіку із basicSell-english | |||
tenderPeriod | model base.Period | true | Період прийняття заяв на участь | Tender period | Використовуємо логіку із basicSell-english | |||
auctionPeriod | model base.Period | true | Аукціон | Auction |
model
base.Period
Використовуємо логіку із basicSell-english | |||||||
qualificationPeriod | model base.Period | true | Період кваліфікації | Qualification |
model
base.Period
period | Використовуємо логіку із basicSell-english | |||||||
questionPeriod | model base.Period | true | Період запитань | Question period | Використовуємо логіку із basicSell-english | |||
status | true | Статус | Status | Enum: [active |
_tendering, |
active_auction, |
active_qualification, complete, unsuccessful, cancelled] | |||||||
cancellations[] | model base.Cancellation | Скасування аукціону | Auction cancelleation |
Використовуємо логіку із basicSell-english | ||||||||
id | string | true | Ідентифікатор об'єкта скасування | Aucton cancellation ID | ||||
reason | model base.multiLang | Причина скасування Аукціону | Cancellation reason | |||||
documents[] | model Documents | Документи скасування | Cancellation documents | documentOf: cancellation documentType: [cancellationDetails, digitalSignature] | ||||
datePublished | string($date-time) | Дата прийняття рішення про скасування | Cancellation date |
...
registrationFee | model base.Value | Реєстраційний внесок | Registration fee | Використовуємо логіку із basicSell-english | ||||
_remainingQuantity | number | true | Нерозподілений залишок | Remaining Quantity | Автогенероване поле, яке відображає кількість нерозподіленого залишку після розрахунку quantityLimit |