...
- На етапі публікації Процедури:
- в одній процедурі може бути тільки один item (ДОДАТИ ВАЛІДАЦІЮ)
- На етапі подання заяв на участь:
- учасник може подати одну або більше заяв на участь в одному аукціоні, відповідно до кількості об'єктів електроенергетики наявних у нього. (ПРОГОВОРИТИОдин Організатор може мати декілька різних обʼєктів енергетики, які можуть приймати участь в одному аукціоні окремими заявками)
Expand title В нормативці є 33. У разі коли учасник бере участь в аукціоні для набуття права на підтримку щодо двох чи більше об’єктів електроенергетики або черг будівництва (пускових комплексів) об’єктів електроенергетики, такий учасник подає окремі заяви про участь в аукціоні щодо кожного об’єкта або черги будівництва електричної станції.
34. У рамках одного аукціону щодо одного і того самого об’єкта електроенергетики або черги будівництва (пускового комплексу) об’єкта електроенергетики учасник не може подати більше однієї заяви про участь в аукціоні.
- учасник може подати одну або більше заяв на участь в одному аукціоні, відповідно до кількості об'єктів електроенергетики наявних у нього. (ПРОГОВОРИТИОдин Організатор може мати декілька різних обʼєктів енергетики, які можуть приймати участь в одному аукціоні окремими заявками)
- Аукціон:
- для запуску МА на момент tenderPeriod.endDate має бути мінімум два bids[] у статусі active (minNumberOfQualifiedBids==2). Якщо менше двух статус процедури змінюється на unsuccessful
- "сліпий" аукціон (детально описано в ТЗ "renewables auction")
- Кваліфікація:
- кількість переможців необмежена
- наявність учасників, що очікують
- наявність умовного переможця
...
Під час публікації процедури ЦБД автоматично генерує значення для (ДОДАТИ ЦЕ В НА РІВНІ ЦБД)
itmes[0].classification.scheme == CAV
- itmes[0].classification.id == 09300000-2
...
- Інформація про Замовника (sellingEntity)
- Ідентифікатори Замовника аукціону (Код ЄДРПОУ або ІПН або паспорт) (identifier)
- Місцезнаходження Замовника аукціону (повна адреса) (address)
- Інформація про контактну особу (contactPoint)
- Номер лоту (lotId)
- Повну назву Аукціону (заголовок) (title)
- Вимоги до оформлення документів (x_documentRequirements)
- Максимальний розмір цінової пропозиції учасника (value)
- Розмір банківської гарантії для участі в аукціоні за 1 кВт (guarantee.amount, guarantee.currency (only EUR))
(МОЖЕМО DEFAULT ЗРОБИТИ 5 ЄВРО) - Інформація про лот, що пропонується на аукціон, із зазначенням його розміру (items.quantity, items.description)
- items.unit.code (ЗАПОВНЮЄТЬСЯ ЦБД АВТОМАТИЧНО == KWT із словника)
Expand title зробити default KWT?із Постанови 29. Величина потужності зазначається у кіловатах (кВт).
- ), items.classification == CAV 09300000-2 ((зробити default ?), items.description)
- Документи
- ПРОГОВОРИТИ
Expand title із Постанови - області (регіони), у яких розподіляється обсяг лота (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);
- максимальна величина потужності об’єкта електроенергетики або черги будівництва (пускового комплексу) об’єкта електроенергетики, щодо якого суб’єкт господарювання може набути право на підтримку на відповідному аукціоні (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);
- частка аукціонної ціни, яка фіксується в євро протягом строку надання підтримки, для переможця відповідного аукціону (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);
- Дата та час проведення аукціону (auctionPeriod.startDate)
Повний перелік полів в Swagger
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Організатор аукціону може зберегти чернетку оголошення без публікації в ЦБД - для внесення змін, видалення та перегляду (чернетка). Це - обов’язковий функціонал, що має бути присутній на майданчику. |
Редагування оголошення
Протягом періоду редагування (rectifiactionPeriod) Організатор аукціону має право самостійно вносити зміни в опис лоту та оголошення щодо продажу лота в ЕТС.
Організатор має можливість внести зміни в ті поля які він заповнював самостійно під час публікації аукціону, окрім орієнтовного часу початку аукціону.
Для підтвердження внесених змін Організатор має можливість завантажити документ - "Погодження змін до опису лоту. Опис причин редагування." (documentType:clarifications), має містити перелік змін, які вносяться в оголошення, причину внесення таких змін. Він має бути доступний для завантаження в період редагування (rectificationPeriod) та не є обов'язковим.
Протягом періоду редагування (rectificationPeriod) та Періоду прийняття заяв на участь (tenderPeriod) Організатор процедури може завантажувати та замінювати документи оголошення (procedure.documents[])
Періоди процедури
- ЗАПОВНЮЄТЬСЯ ЦБД АВТОМАТИЧНО)
- items.regions[] - новий параметр, який необхідно додати до items. Параметр НЕ обовʼязковий до заповнення. Організатор може вказати "Області, у яких розподіляється обсяг лота"
- items.
- Документи
- Дата та час проведення аукціону (auctionPeriod.startDate)
Повний перелік полів в Swagger
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Організатор аукціону може зберегти чернетку оголошення без публікації в ЦБД - для внесення змін, видалення та перегляду (чернетка). Це - обов’язковий функціонал, що має бути присутній на майданчику. |
Редагування оголошення
Протягом періоду редагування (rectifiactionPeriod) Організатор аукціону має право самостійно вносити зміни в опис лоту та оголошення щодо продажу лота в ЕТС.
Організатор має можливість внести зміни в ті поля які він заповнював самостійно під час публікації аукціону, окрім орієнтовного часу початку аукціону.
Для підтвердження внесених змін Організатор має можливість завантажити документ - "Погодження змін до опису лоту. Опис причин редагування." (documentType:clarifications), має містити перелік змін, які вносяться в оголошення, причину внесення таких змін. Він має бути доступний для завантаження в період редагування (rectificationPeriod) та не є обов'язковим.
Протягом періоду редагування (rectificationPeriod) та Періоду прийняття заяв на участь (tenderPeriod) Організатор процедури може завантажувати та замінювати документи оголошення (procedure.documents[])
Періоди процедури
Технічна назва | Бізнесова назва | Дата початку | Дата завершення | Результат завершення | Коментар | |||||
---|---|---|---|---|---|---|---|---|---|---|
rectificationPeriod | Період редагування | Дата та час публікації процедури в ЦБД | rectificationPeriod.startDate + 2 р.д., завершення о 20:00 (завжди припадає на робочий день) | Статус процедури змінюється: active_rectification → active_tendering Редагування полів процедури більше недоступне | ||||||
tenderPeriod | Період подання пропозицій | tenderPeriod.startDate == rectificationPeriod.endDate | о 20:00 | |||||||
Технічна назва | Бізнесова назва | Дата початку | Дата завершення | Результат завершення | Коментар | |||||
rectificationPeriod | Період редагування | Дата та час публікації процедури в ЦБД | rectificationPeriod.startDate + 2 р.д., завершення о 20:00 (завжди припадає на робочий день) | Статус процедури змінюється: active_rectification → active_tendering Редагування полів процедури більше недоступне | ст.28 "Прийом заяв про участь в аукціоні починається з моменту розміщення оголошення про проведення аукціону..." | |||||
tenderPeriod | Період подання пропозицій | tenderPeriod.startDate == rectificationPeriod.endDate | о 20:00 в день, що передує дню початку аукціону auctionPeriod.startDate (може припадати на НЕробочий день) | Статус процедури змінюється: active_tendering → active_auction | Період "Прийняття заяв на участь" починається одразу, як тільки завершується "Період редагування", що тривав 2 р.д. | |||||
questionPeriod | Період запитань | Дата та час публікації процедури в ЦБД | Може припадати на НЕробочий день. о 20:00 за 1 р.д. до початку аукціону | - | ||||||
enquiryPeriod | Період відповідей | Дата та час публікації процедури в ЦБД | о 20:00 за 1 р.д. до початку аукціону | - | ||||||
auctionPeriod | Аукціон | Завжди припадає на робочий день. Вказується організатором при публікації процедури. ЦБД приймає тільки auctionPeriod.startDate >= datePublished + 30 к.д. Верхню - не обмежуємо
| Момент завершення роботи модуля аукціону | Статус процедури змінюється: active_auction → qualification | auctionPeriod.endDate присутній виключно за умови наявності не менш ніж 2 заяв на участь (bids[].status: active) на момент tenderPeriod.endDate | |||||
verificationPeriod | Період перевірки документів | verificationPeriod.startDate == auctionPeriod.endDate | verificationPeriod.endDate == verificationPeriod.startDate + 10 р.д. о 18:00 | Статус процедури змінюється: qualification → active_qualification | Можлива Ручна дія зміни статуса qualification → active_qualification. Організатор натискає кнопку "Перевірку документів завершено", на ЦБД надсилається запит на зміну статуса Процедури. verificationPeriod.endDate не змінюється в API | |||||
qualificationPeriod | Період кваліфікації | qualificationPeriod.startDate == auctionPeriod.endDate | qualificationPeriod.endDate == qualificationPeriod.startDate + 29 р.д. о 18:00 | На рівні ЦБД: відсутній На рівні майданчика: за 24 години до завершення, надсилання повідомлення Організатору про завершення періоду кваліфікації. | зараз має назву waitingPeriod, перейменувати |
Статуси процедури
draw.io Diagram border true diagramName Statuses_renewable_MultiAwards simpleViewer false width links auto tbstyle top lbox true diagramWidth 612 revision 5
...
Технічна назва | Бізнесова назва | Перехід з | За умови | Коментар | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
active_rectification | Редагування доступне | момент публікації оголошення в ЦБД | Ручна дія. Заповнені всі обовʼязкові поля для створення процедури в ЦБД | Майданчик Організатора робить запит до ЦБД та передає об'єкт процедури. У разі правильно сформованого об'єкта процедури, ЦБД повертає майданчику id та token створеного об'єкта процедури, процедура набуває статус "Редагування доступне" (active_rectification). | ||||||||||||||
active_tendering | Прийняття заяв на участь | active_rectification | Автоматично. Настав момент rectificationPeriod.endDate | Завершився Період редагування (rectificationPeriod), почався період Прийняття заяв на участь (tenderPeriod) | ||||||||||||||
active_auction | Аукціон | active_tendering | Автоматично. Завершився період прийому заяв на участь. В момент auctionPeriod.startDate | У визначену дату та час ЦБД, за наявності необхідної кількості заяв (перевірка кількості поданих заяв відбувається на рівні ЦБД, для проведення аукціону необхідно не менше 2 заяв на участь), змінює статус процедури з “Прийняття заяв на участь” (active_tendering) на “Аукціон” (active_auction). | ||||||||||||||
qualification | Перевірка документів учасників | active_auction | Автоматично. Завершилась робота Модуля аукціону (настав момент auctionPeriod.endDate) | Для кожного учасника, що мав bids[].status == active на момент auctionPeriod.startDate, в обʼєкті процедури створюється Award у статусі verification Подальша робота Організатора і учасників відбувається з Awards[] | ||||||||||||||
active_qualification | Очікується оприлюднення протоколу та підписання договору | qualification | Автоматично. Завершився verificationPeriod, що тривав 10 р.д
Ручна дія. Організатор натискає кнопку "Перевірку документів завершено", на ЦБД надсилається запит на зміну статуса Процедури. | В момент зміни procedure.status: qualification → active_qualification, всі Аварди,що знаходяться у статусі verification авточатично набувають статусу waiting ("Мовчазна згода") Після цього ЦБД автоматично змінює статус всіх Авардів, що знаходяться у статусі waiting на pending АБО pending_waiting (деталі розподілу в розділі Статуси Awards). Аварди в статусі unsuccessful свій статус не змінюють.
Тобто, x_quantityLimit включає в себе 80% від quantity тільки тих Авардів, які успішно пройшли перевірку документів АБО Організатор не виконав дій, що вказують на успішну перевірку документів Учасника. І не включає quantity Авардів, які явно не пройшли перевірку документів і мали статус unsuccessful
Якщо Організатор надіслав запит на зміну статуса процедури, то verificationPeriod.endDate в API не змінюється. | ||||||||||||||
complete | Аукціон завершено | active_qualification | Ручна дія. Організатор надсилає запит на зміну status: active_qualification → complete | Термінальний статус. При виконанні дії зміни статуса на complete ЦБД перевіряє:
| ||||||||||||||
unsuccessful | Аукціон не відбувся | active_tendering qualification active_qualification | Автоматично.
| Термінальний статус. | ||||||||||||||
| Аукціон скасовано | active_rectification active_tendering qualification active_qualification | Ручна дія. Організатору у всіх статусах Процедури, окрім active_auction, доступна опція "Скасування" Процедури. Для скасування процедури, Організатору необхідно:
Після цього, при натисканні кнопки, надсилається запит на скасування. Статус процедури автоматично змінюється → cancelled | Термінальний статус. Для зміни статусу процедури на “Аукціон відмінено” Організатор зобов’язаний в особистому кабінеті натиснути кнопку “Скасувати аукціон”, завантажити документ з причинами скасування, вказати причину скасування, після чого майданчик надсилає запит до ЦБД на зміну статусу процедури на “Аукціон відмінено”. |
Anchor | ||||
---|---|---|---|---|
|
...
documentType | Назва Укр | Назва Анг | Опис | Обовʼязковіть для публікації процедури | Публічність | |||||
---|---|---|---|---|---|---|---|---|---|---|
illustration | Ілюстрації | Illustration | Зображення, що можуть додаватися Організатором до процедури | Ні | Так | |||||
technicalSpecifications | Технічні специфікації | Technical specifications | Технічні параметри об’єкта електроенергетики | ТакНі | Так | |||||
evaluationCriteria | Кваліфікаційні вимоги | Evaluation criteria | Перелік документів, необхідних для участі в аукціоні, та вимоги до їх оформлення | Так | Так | |||||
contractProforma | Типова форма договору про надання послуги | Contract proforma | Типова форма договору про надання послуги | Так | Так | |||||
x_lotInfoEN | Документ, що містить оголошення англійською мовою | Announcements in English | Документ, що містить оголошення англійською мовою | Так
| Так | |||||
x_verificationAct | Акт про результати перевірки документів учасників | Verification act | Загальний акт про результати перевірки документів усіх учасників, в якому зазначається перелік учасників, що успішно пройшли перевірку, і тих, що втратили статус учасника | Ні * * має бути можливість завантажити документ коли procedure.status: qualification або active_qualification
| Так | |||||
clarifications | Погодження змін до опису лоту. Опис причин редагування. | Clarifications | Документ НЕ обовʼязковий при публікації процедури. Документ НЕ обовʼязковий для редагування процедури. | Ні | Так | |||||
digitalSignature | Цифровий підпис | Digital signature | Цифровий підпис | Ні | Так |
...
bids.value.amount <= procedure.value.amount. В іншому випадку ЦБД має повертати валідаційну помилку.
У рамках одного аукціону щодо одного і того самого об’єкта лота учасник не може подати більше однієї заяви про участь в аукціоні (не може бути два біда у статусі active з однаковим identifier.id)Один учасник може, з точки зору системи, поати декілька заявок на участь. Бізнесово, це виглядає як, Субʼєкт господарювання має декілька обʼєктів, які можуть генерувати електроенергію.
До закінчення tenderPeriod учасники мають право анулювати заяви про участь в аукціоні або внести до них зміни, зокрема шляхом завантаження оновлених редакцій доданих до заяви документів.
...
За результатами періоду аукціону (auctionPeriod) пропозиції сортуються від меншої ціни до більшої, а у випадку співпадіння ціни, вище відображається пропозиція розміщена раніше. Часом розміщення пропозиції вважається час першого розміщення заяви у ЦБД, а, у випадку редагування пропозиції під час періоду прийому пропозицій, час фіксації змін у заяві у ЦБД. По завершенню аукціону, процедура переходить у статус qualification - фазу перевірки документів учасників. ЦБД генерує award'и для N учасників у статусі verification. award'и формуються для всіх учасників, відповідно до поданих кількості заяв на участь. Валідною ставкою вважається та, що рівна або менша за значення value.amount.
...
Технічна назва | Бізнесова назва | Дата початку | Дата завершення | Результат завершення | Коментар | |||||
---|---|---|---|---|---|---|---|---|---|---|
awards.signingPeriod | Період підписання протоколу та договору | В момент набуття Авардом статуса pending | signingPeriod.endDate ==signingPeriod.startDate + 15 р.д. | На рівні ЦБД: відсутній | Період формується в Аварді з моменту набуття Авардом статусу pending Якщо Авард був у статусі pending і отримав signingPeriod, то після зміни статуса на інший (protocol_signed, active OR unsuccessful) період залишається незмінним. Аварди в інших статусах цей період не отримують. | |||||
awards.admissionPeriod | Період прийняття рішення щодо набуття статусу переможця | В момент набуття Авардом статуса pending_admission | admissionPeriod.endDate == admissionPeriod.startDate + 5 р.д. | На рівні ЦБД: Статус аварда автоматично змінюється з pending_admission → cancelled
| Період формується для Авардів у статусі pending_admission і відображається продовжує відображатись в Аварді після зміни його статуса на будь-який інший. |
...
draw.io Diagram | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Технічна назва | Бізнесова назва | Перехід з | За умови | Коментар | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
verification | Перевірка документів | Момент auctionPeriod.endDate створюються Awards[] | Автоматично. По завершенню аукціону, процедура переходить у статус qualification ("Перевірка документів"). ЦБД генерує Awards[] у статусі verification для всіх учасників. |
Часом розміщення пропозиції вважається час першого розміщення заяви у ЦБД, а, у випадку редагування пропозиції під час періоду прийому пропозицій, час фіксації змін у заяві у ЦБД. При формуванні порядку Авардів, необхідно дивитись на Awards.value, але якщо value декількох Авардів однакове, необхідно подивитись, чи відрізняється у кожного bid-а bids.initialValue від bids.value: 1) Якщо учасник оновлював свою ставку протягом МА (bids.value < bids.initialValue), то часом розміщення ставки вважається час оновлення ставки протягом МА 2) Якщо учасник НЕ оновлював свою ставку протягом МА (bids.value == bids.initialValue), то часом розміщення ставки вважається bids.dateModified 3) Якщо у декількох Авардів однакове value і ці декілька учасників оновлювали свої ставки протягом МА, то вище в рейтингу має бути той, хто оновлював свою ставку раніше 4) Якщо у декількох Авардів однакове value при цьому один із них НЕ оновлював ставку протягом МА, а інші оновлювали, то вище в рейтингу має бути той, хто НЕ оновлював ставку протягом МА. (бо він розмістив своє value раніше). Його bids.dateModified вважається датою і часом розміщення ставки. Інші учасники своє value розмістили точно пізніше, бо вони оновлювали value протягом МА. Їх порядок має бути згідно часу оновлення їх ставок. За умови НЕ успішної перевірки документів, Організатор змінює статус Awards[].status: verification → unsuccessful (обовʼязково попередньо завантажує та може замінити документ awards.documents: documentType: rejectionProtocol) Організатор має можливість завантажити та заміни в Процедурі документ documentType:x_verificationAct | ||||||||||||||||
waiting | Документи перевірено | verification | Ручна дія. У Організатора має бути можливість змінювати Awards.status: verification → waiting. Обовʼязкові документи для цієї зміни статуса відсутні. Автоматично. Якщо на момент verificationPeriod.endDate залишились Awards у статусі verification, то ЦБД змінює їх статус на waiting | Подальша робота з Авардом відбувається із статуса waiting. Частину Авардів в статус waiting може перевести Організатор, а у випадку, коли ЦБД автоматично змінила Awards.status: verification → waiting , він є проміжковим і після цього ЦБД також автоматично змінить статус на pending або pending_waiting За умови успішної превірки документів, Організатор змінює статус Awards[].status: verification → waiting (обовʼязкових документів немає) | ||||||||||||||||
pending | Очікується протокол | waiting АБО pending_waiting АБО pending_admission | Автоматично. Завершився verificationPeriod.endDate: waiting → pending АБО Автоматично. Дискваліфіковано Авард у статусі pending АБО protocol_signed протягом qualificationPeriod: pending_waiting → pending
АБО Ручна дія. pending_admission → pending: Учасник погодився закрити залишок обсягу | Перехід із waiting: Статус pending отримують Аварди, які перебувають перші у списку результатів Модуля Аукціону і які успішно пройшли етап перевірки документів (award.status <> unsuccessful) за умови, що обсяг, який вони запропонували повністю покривається розрахованим значенням x_quantityLimit Організатор має можливість:
Учасник має можливість завантажити та замінити протокол awards.document: documentType: auctionProtocol Перехід із pending_waiting: Лише у випадку, якщо Організатор дискваліфікував одного чи більше Переможців, Аварди, що перебувають у статусі pending_waiting автоматино можуть змінити свій статус на pending за умови, що обсяг, який вони запропонували повністю покривається залишком від обсягу, що залишився і не настала дата qualificationPeriod.endDate. Якщо завершився qualificationPeriod і після 29 р.д. Організатор дискваліфіковує переможця, наступний у черзі, який очікує вже НЕ отримує статус pending (на 30-й день вже не має бути Авардів у статусі pending_waiting, бо визначено одного, хто змінив свій статус на pending_admission, а всі інші змінили свій статус на cancelled)
Організатор вказав procedure.items.quantity == 10 000 Учасник_1 запропонував awards.items.quantit == 3 000 по найменшій ціні 10 Учасник_2 запропонував awards.items.quantit == 1 000 по ціні 11 Учасник_3 запропонував awards.items.quantit == 2 000 по ціні 12 Всі три учасники успішно пройшли перевірку документів (awards.status == waiting) ЦБД розраховує x_quantityLimit == (3000 + 1 000 + 2 000) * 0.8 == 4 800 Обсяг 4 800 повністю покриває тільки запропоновані обсяги Учасника_1 і Учасника_2. Запропонований Учасником_3 обсяг повнітю не реалізується (він запропонував 2 000, а після розподілення між першим і другим учасниками, залишилось не розподілено тільки (4 800 - 3 000 - 1 000) == 800 ) В даному прикладі тільки третій учасник отримує статус pending_waiting Після цього Організатор дискваліфіковує Учасника_1 з його пропозицією 3 000. Учасник_3 автоматично отримує статус pending з своєю пропозицією 2 000, бо 2 000 повністю покривається обсягом 4 800 (першого дискваліфікували, другий 1 000, третій 2 000, 1000+2000 = 3000, що менше, ніж 4800) Приклад2: Організатор вказав procedure.items.quantity == 10 000 Учасник_1 запропонував awards.items.quantit == 1 000 по найменшій ціні 10 Учасник_2 запропонував awards.items.quantit == 1 000 по ціні 11 Учасник_3 запропонував awards.items.quantit == 8 000 по ціні 12 Всі три учасники успішно пройшли перевірку документів (awards.status == waiting) ЦБД розраховує x_quantityLimit == (1 000 + 1 000 + 8 000) * 0.8 == 8 000 Обсяг 8000 повністю покриває тільки запропоновані обсяги Учасника_1 і Учасника_2. Запропонований Учасником_3 обсяг повнітю не реалізується (він запропонував 8 000, а після розподілення між першим і другим учасниками, залишилось не розподілено тільки (8 000 - 1 000 - 1 000) == 6 000 ) В даному прикладі тільки третій учасник отримує статус pending_waiting Після цього Організатор дискваліфіковує Учасника_1 з його пропозицією 1 000. Учасник_3 НЕ отримує статус pending з своєю пропозицією 8000, бо 8000 повністю не покривається залишком обсягу (8000 - 1000 = 7000 - залишок обсягу, а Учасник_3 пропонує 8000, що більше, ніж 7000) Його статус залишається pending_waiting. P.S.: в майбутньому він отримає статус "Умовний переможець" (pending_admission) і зможе погодитись реалізувати залишок, який складає 7000 із його запропонованих 8000. Перехід із pending_admission: Учасник в статусі pending_admission має можливість вказати обсяг, який він готовий закрити і змінити статус на pending. Далі відбувається його кваліфікація за логікою кваліфікації інших переможців. | ||||||||||||||||
protocol_signed | Підписано протокол | pending | Ручна дія. ЦБД має валідувати, що в Авард завантажено документ з documentType: auctionProtocol | Так як, дискваліфікувати Учасника має бути можливість у випадку, коли підписано Протокол і НЕ підписано Договір, використовуємо цей статус для відображення факту підписання Протоколу. | ||||||||||||||||
pending_waiting | Очікується рішення | waiting | Автоматично. Завершився verificationPeriod.endDate | Статус pending_waiting отримують Аварди, які перебувають у списку результатів Модуля Аукціону і які успішно пройшли етап перевірки документів (award.status <> unsuccessful) за умови, що обсяг, який вони запропонували повністю НЕ покривається розрахованим значенням x_quantityLimit, з причини, що обсяг вже закритий іншими пропозиціями учасників, що запропонували меншу ціну. Приклад 1: Організатор вказав квоту procedure.items.quantity == 10 000 Учасник_1 запропонував awards.items.quantit == 3 000 по найменшій ціні 10 Учасник_2 запропонував awards.items.quantit == 1 000 по ціні 11 Учасник_3 запропонував awards.items.quantit == 2 000 по ціні 12 Всі три учасники успішно пройшли перевірку документів (awards.status == waiting) ЦБД розраховує x_quantityLimit == (3000 + 1 000 + 2 000) * 0.8 == 4 800 Обсяг 4 800 повністю покриває тільки запропоновані обсяги Учасника_1 і Учасника_2. Запропонований Учасником_3 обсяг повнітю не реалізується (він запропонував 2 000, а після розподілення між першим і другим учасниками, залишилось не розподілено тільки (4 800 - 3 000 - 1 000) == 800 ) В даному прикладі тільки третій учасник отримує статус pending_waiting Приклад 2: Організатор вказав квоту procedure.items.quantity == 10 000 Учасник_1 запропонував awards.items.quantit 3 000 по найменшій ціні 10 Учасник_2 запропонував 2 000 по ціні 11 Учасник_3 запропонував 1 000 по ціні 12 Всі три учасники успішно пройшли перевірку документів (awards.status == waiting) ЦБД розраховує x_quantityLimit == (3000 + 1 000 + 2 000) * 0.8 == 4 800 Обсяг 4 800 повністю покриває тільки запропонований обсяг Учасника_1. Запропонований Учасником_2 обсяг повністю не реалізується (він запропонував 2 000, а після Учасника_1 , залишилось не розподілено тільки (4 800 - 3 000) == 1800 ) В даному прикладі другий і третій учасники отримують статус pending_waiting Організатор не може дискваліфікувати Учасника, що очікує рішення Учасник не має можливості відмовитись від очікування. | ||||||||||||||||
pending_admission | Підтвердження набуття статусу переможця | pending_waiting | Автоматично. Завершився qualificationPeriod.endDate АБО Автоматично. За умови, що всі Awards, що мали статус pending отримали статус active (Організатор успішно кваліфікував всіх Переможців, залишилось вирішити питання тільки з залишком запропонованого обсягу, що може бути закритий "умовним переможцем") АБО Автоматично. За умови, що взагалі відсутні Аварди у статусі pending | Статус pending_admission отримує тільки один Award, який знаходиться у статусі pending_waiting і запропонував найменшу після Переможців ціну. Згідно Постанови "Учасник, що набуває статусу умовного переможця, визначається на 30-й робочий день після завершення аукціону", але у випадку, коли Організатор успішно кваліфікував всіх переможців (всі Awards у статусі pending набули статусу active), не чекаючи 30-го дня після завершення МА, учасник одразу отримує статус pending_admission і отримує можливість погодитись чи відмовитись від залишку обсягу. Це потрібно для того, щоб після успішної кваліфікації переможців, небуло необхідності чекати завершення періоду кваліфікації для погодження умовним переможцем своє право на набуття статуса переможця. В момент отримання Авардом статусу pending_admission, всі інші Аварди, які перебувають у статусі pending_waiting отримують статус cancelled (дискваліфікація Переможців вже неможлива, бо закриті протоколи+договори. Вибор іншого "умовного переможця" не передбачений в нормативці) В цьому статусі Умовний переможець може:
| ||||||||||||||||
active | Договір підписано | protocol_signed | Автоматично. Якщо повʼязаний contracts набув статуса active | Термінальний статус. Якщо змінився contracts.status: pending → active, це означає, що завантажено Підписаний договір (contracts.documents.documentType: contractSigned) Це потрібно для того, щоб за умови дискваліфікації Переможця на етапі підписання Договору, ЦБД зробила перевірку "qualificationPeriod.endDate вже пройшов?":
| ||||||||||||||||
cancelled | Учасник не став переможцем | pending_admission АБО pending_waiting | із pending_admission: Ручна дія. Учасник ("Умовний переможець") відмовляється "закрити" нерозподілений залишок і надсилає запит на зміну статуса АБО Автоматично. Якщо протягом awards.signingPeriod admissionPeriod учасник ("Умовний переможець") не надав відповіді на запит "закрити" нерозподілений залишок із pending_waiting:АБО Автоматично. В момент, коли будь-який Авард набуває статусу pending_admission, всі інші Аварди, які знаходяться у статусі pending_waiting автоматично набувають статус cancelled | Термінальний статус. Після набуття статусу pending_admission "Умовний переможець" має можливість відмовитись від запропонованого обсягу і скасувати свою заявку (змінити статус Аварда з pending_admission на cancelled). Якщо протягом awards.admissionPeriod учасник ("Умовний переможець") не надав відповіді, то ЦБД автоматично змінює статус його Аварда. Після набуття статусу pending_admission "Умовний переможець" всі Аварди, які на цей момент заходились у статусі pending_waiting набувають статус cancelled | ||||||||||||||||
unsuccessful | Дискваліфіковано | verification АБО pending АБО protocol_signed | Ручна дія. Організатор надсилає запит на зміну award.status:verification → unsuccessful Організатор надсилає запит на зміну award.status: pending → unsuccessful Автоматично. Якщо статус повʼязаного contracts набуває статуса cancelled | Термінальний статус. verification → unsuccessful: завантажується документ rejectionProtocol для кожного Аварда, який не пройшов перевірку документів протягом verificationPeriod Поле terminationReason в даному випадку заповнювати не обовʼязково pending → unsuccessful: ЦБД має валідувати, що в Авард завантажено документ з documentType: act При зміні статуса з pending → unsuccessful ЦБД має валідувати, що заповнено awards.terminationReason значенням зі словника protocol_signed → unsuccessful: terminationReason заповнюється автоматично варіантом "7" : "Відмова від підписання договору" Документ act "про відмову" завантажується в contract. |
...
Зміни, які необхідно внести в процедуру:
accessDetails - не зробити НЕ обовʼязкове поле (зараз обовʼязкове, хоча я не бачу в Постанові нічого про "Порядок та можливий час ознайомлення з лотом")
x_additionalInformation - не зробити НЕ обовʼязкове поле (зараз обовʼязкове, хоча я не бачу в Постанові нічого про те, що треба ОБОВʼЯЗКОВО надавати "Додаткові відомості". Навпаки: "Оголошення про проведення аукціону може містити інші відомості, необхідні для його проведення")
...
bids.qualified - прибрати із біда. не Не несе взагалі ніякої логіки
minNumberOfQualifiedBids - мінімально допустиме значення == 2. За умови, якщо прийшло менше двох учасників, на момент tenderPeriod.endDate - проедура автоматино набуває статусу unsuccessful
contracts - стандартна логіка contracts не підходить. Через те, що, якщо Договір не підписано, то ЦБД має автоматично визначити нового переможця, якщо ще не завершився qualificagionPeriod. Потрібна логіка описана
contracts - status - прибрати зайві paid, signed,unsuccessful
В Swagger наявні Наявний *renewables.GreenProcedure * та *renewables.RenewablesMultiAwardsProcedure* - треба залишити лише * renewables.RenewablesMultiAwardsProcedure*
datePublished - x-legalNameUa змінити на *Дата публікації процедури*.
previousAuctionId прибрати в Swagger можливість додавання UA-PS-YYYY-MM-DD-000000-0 - всі процедури переносимо в ЦБД3.
identifier Замовника - варто обмежити на рівні ЦБД хто може бути Замовником.
items.unit.code items.unit - зробити "KWT" - readOnly: true автогенерованє.
contracts - status - прибрати зайві paid, signed,unsuccessful
cancellation - змінити на базову модель base.Cancellation
x_valueUAH (що це ?)
Запитання:
В Нормативці:
24. В оголошенні про проведення аукціону обов’язково зазначається:
3) інформація про умови, на яких здійснюється розподіл лота:
області (регіони), у яких розподіляється обсяг лота (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);
максимальна величина потужності об’єкта електроенергетики або черги будівництва (пускового комплексу) об’єкта електроенергетики, щодо якого суб’єкт господарювання може набути право на підтримку на відповідному аукціоні (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);
частка аукціонної ціни, яка фіксується в євро протягом строку надання підтримки, для переможця відповідного аукціону (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);
денні часові інтервали, протягом яких суб’єкт господарювання може набути право на підтримку щодо об’єкта електроенергетики або черги будівництва електричної станції за результатами відповідного аукціону (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);
області (регіони), у яких розподіляється обсяг лота (у разі визначення рішенням Кабінету Міністрів України про проведення аукціонів);