...
Бізнес назва - Процес реалізації санкційного активу
Глоссарій
...
| Термін |
|---|
Особливості
Створення та робота із ланцюжком:
- При створенні ланцюжка немає повʼязаного обʼєкта типу "Обʼєкт реєстру". Ланцюжок - перший обʼєкт, який створюється на ЦБД в процесі реалізації Санкційного майна
- При створенні ланцюжка Організатор має вказати:
- Дату аукціону для першої процедури
- Період експозиції (tenderPeriod) для другої і третьої процедури в ланцюжку (присутні валідації, які детально описані нижче)
- При створенні ланцюжка Організатор має вказати Стартову ціну реалізації для першого аукціону, а для другого і третього ЦБД розрахує автоматично згідно описаних нижче правил
- В ланцюжку зберігаються ідентифікатори Процедур, які були автоматично створені цим ланцюжком
- Лацюжок складається максимум з трьох процедур, де кожна наступна процедура створюється автоматично за умови, що попередня процедура "неуспішна"
...
| title | ПИТАННЯ |
|---|
- Чи будемо відображати сутність "Процес реалізації санкційного активу" на Порталі чи на будь-якому іншому фронті?
Ця сутність може бути суто технічна і існувати для автоматизації створення процедур.
В такому випадку не бачу потреби розділяти статуси "успішний" та "неуспішний" процес. Процес (ланцюжок) або "діючий", або "закритий"
2. В Нормативці вказано: Оголошення про проведення аукціону, що публікується організатором аукціону, повинно містити такі відомості: ...
стартова ціна активу для кожного аукціону;
розмір гарантійного внеску електронного аукціону для кожного аукціону;
Орг передає Стартову ціну і Гарантійний внесок тільки для першої процедури. Для наступних в ланцюжку розраховуємо автоматично (+ Орг може відредагувати протягом 48 годин після створення процедури)
АБО
Орг передає Стартову ціну і Гарантійний внесок для кожної процедури. (+ Орг може відредагувати протягом 48 годин після створення процедури)
3.
Реєстраційний внесок поривʼязаний до мін ЗП і ми також його не валідуємо, а віддаємо на Майданчик.
| Info | ||
|---|---|---|
| ||
гарантійний внесок - сума коштів (5 відсотків стартової ціни, якщо вона дорівнює або перевищує 250 млн. гривень, або 20 відсотків стартової ціни, якщо вона є меншою, ніж 250 млн. гривень) |
| Пояснення | |
|---|---|
| Ланцюжок | це master-об’єкт в ЦБД на сервісі Jobber, який представляє бізнес-процес реалізації одного санкційного активу через послідовність автоматично створюваних аукціонних процедур. Ланцюжок створюється Організатором як первинний об’єкт процесу реалізації активу та містить:
Ланцюжок є технічною сутністю, яка використовується для автоматизації перевиставлення активу відповідно до нормативних вимог. |
Master-об’єкт | це основна сутність, яка:
У цьому ТЗ master-об’єктом є SAC. |
| Автоматично створена процедура | це процедура, створена ЦБД без участі Організатора на основі правил Ланцюжка. |
| Попередня процедура | це процедура, на основі якої була створена наступна процедура в Ланцюжку. В розрізі данного ТЗ "Попередня процедура" може бути лише процедурою цього самого одного ланцюжка і вона не може бути створена раніше до ланцюжка. |
| Стартова ціна | це початкова ціна продажу активу для конкретної процедури. Особливості:
Розрахунок і округлення виконуються автоматично ЦБД. |
| Гарантійний внесок | це сума коштів, яку учасник повинен сплатити для участі в аукціоні. Розмір:
Гарантійний внесок:
|
| Реєстраційний внесок | це плата за реєстрацію заяви на участь в аукціоні. Цей внесок:
|
Особливості
Створення та робота із ланцюжком:
- При створенні ланцюжка немає повʼязаного обʼєкта типу "Обʼєкт реєстру". Ланцюжок - перший обʼєкт, який створюється на ЦБД в процесі реалізації Санкційного майна
- При створенні ланцюжка Організатор має вказати:
- Дату аукціону для першої процедури
- Період експозиції (tenderPeriod) для другої і третьої процедури в ланцюжку (присутні валідації, які детально описані нижче)
- При створенні ланцюжка Організатор має вказати Стартову ціну реалізації для першого аукціону, а для другого і третього ЦБД розрахує автоматично згідно описаних нижче правил
- В ланцюжку зберігаються ідентифікатори Процедур, які були автоматично створені цим ланцюжком
- Лацюжок складається максимум з трьох процедур, де кожна наступна процедура створюється автоматично за умови, що попередня процедура "неуспішна"
| Note | |||||
|---|---|---|---|---|---|
| |||||
Ця сутність може бути суто технічна і існувати для автоматизації створення процедур. В такому випадку не бачу потреби розділяти статуси "успішний" та "неуспішний" процес. Процес (ланцюжок) або "діючий", або "закритий" 2. В Нормативці вказано: Оголошення про проведення аукціону, що публікується організатором аукціону, повинно містити такі відомості: ...
Орг передає Стартову ціну і Гарантійний внесок тільки для першої процедури. Для наступних в ланцюжку розраховуємо автоматично (+ Орг може відредагувати протягом 48 годин після створення процедури) АБО Орг передає Стартову ціну і Гарантійний внесок для кожної процедури. (+ Орг може відредагувати протягом 48 годин після створення процедури)
3. Реєстраційний внесок поривʼязаний до мін ЗП і ми також його не валідуємо, а віддаємо на Майданчик. |
Обʼєкт SanctionedAuctionChain
Статуси обʼєкта
| draw.io Diagram | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| tech | УКР назва | АНГЛ назва | Перехід з | За умови | Коментар |
|---|---|---|---|---|---|
| pending | Опубліковано | Created | - | перший статус, який отримує обʼєкт при публікації | Статус, в якому перебуває обʼєкт до моменту створення першої процедури в ланцюжку Протягом 5 хвилин має автоматично опублікуватися Перша процедура SAE |
| active | Проходить аукціон | Auction | pending | Створено першу процедуру в ланцюжку | Обʼєкт має цей статус з моменту створення першої процедури в ланцюжку і до моменту, поки:
|
| sold | Продано | Sold | active | Будь-яка процедура в цьому ланцюжку набуває статусу procedure.status: complete | Термінальний статус |
| dissolved | Не продано | Dissolved | active | Будь-яка процедура в цьому ланцюжку набуває статусу procedure.status: cancelled Третя в ланцюжку процедура набуває статусу procedure.status: unsuccessful | Термінальний статус |
Періоди обʼєкта
Періоди відсутні
Документи обʼєкта
При публікації обʼєкта SAС необхідно передати документи першої Процедури ланцюжка.
В другу і третю процедури модель documents[] копіюється із попередньох процедури цього ланцюжка.
Перелік документів описано в ТЗ до Процедури ТУТ
Логіка роботи Ланцюжка
Публікація ланцюжка
Організатор публікує обʼєкт "Ланцюжка", в якому передає:
- всі поля, які потрібні для публікації англійської і голландської (initialProps)
- включно зі Стартовою ціною та розміром Гарантійного внеску для першої процедури
- період експозиції (в днях) для другої процедури (extraSpecs[1].periods)
- період експозиції (в днях) для третьої процедури (extraSpecs[2].periods)
Обʼєкт створюється у статусі pending
Протягом цього статусу ручні дії (в тому числі редагування полів) над обʼєктом неможливі.
Публікація першої процедури
Після успішно опублікованого обʼєкта "ланцюжок", протягом 5 хвилин автоматично створюється перша процедура.
Майданчик може отримати токен від автоматично створеної процедури за endpoint:
| Code Block |
|---|
curl --location 'https://procedure-sandbox.prozorro.sale/api/jobber/sanctionedAuctionChain/sac/{{_id}}/produced_entities?acc_token=******' \
--header 'Authorization: ******' |
З моменту створення першої процедури "ланцюжок" набуває статусу active.
В цьому статусі "ланцюжка" Організатор може редагувати поля:
- період експозиції (в днях) для другої процедури до моменту створення другої процедри в ланцюжку
- період експозиції (в днях) для третьої процедури до моменту створення третьої процедри в ланцюжку
Організатор може редагувати поля створеної процедури протягом 48 годин. Зміни потрібно робити безпосередньо в створеній процедурі, а не в обʼєкті SAC. В SAC редагуються тільки два вищевказані параметри.
Редагування Процедури згідно ТЗ процедури ТУТ. Вся логіка процедури залишається без змін. Немає різниці чи Процедура була створена руками до запуску "ланцюжків" чи створена вітоматично "ланцюжком".
Публікація другої процедури
Якщо перша процедура в ланцюжку отримала статус unsuccessful, то протягом 5 хвилин створюється друга процедура, в яку копіюються значення полів із першої процедури + встановлюється дата auctionPeriod.startDate відповідно до періода експозиції із "ланцюжка".
Обʼєкт "ланцюжка" не змінює статус і залишаєтсья у статусі active
Стартова ціна для другої процедури розраховується в момент її створення, як 50% Стартової ціни першої процедури на момент створення другої
Гарантійний внесок для другої процедури розраховується в момент її створення, як:
- 5 відсотків стартової ціни, якщо вона дорівнює або перевищує 250 млн. гривень
- 20 відсотків стартової ціни, якщо вона є меншою, ніж 250 млн. гривень
Деталі і приклади розрахунку стартової ціни описані в розділі "Поля що розраховуються автоматично при створенні другої і третьої процедури"
При авто-створенні другої процедури у ланцюжку ЦБД має автоматично для другої процедури проставити tenderAttempt: 2 та у полі previousAuctionId проставити ID першої процедури із ланцюжка.
Публікація третьої процедури
Якщо друга процедура в ланцюжку отримала статус unsuccessful, то протягом 5 хвилин створюється третя процедура, в яку копіюються значення полів із другої процедури + встановлюється дата auctionPeriod.startDate відповідно до періода експозиції із "ланцюжка".
Обʼєкт "ланцюжка" не змінює статус і залишаєтсья у статусі active
Стартова ціна для третьої процедури розраховується в момент її створення, як 100% Стартової ціни другої процедури на момент створення третьої
Гарантійний внесок для третьої процедури розраховується в момент її створення, як:
- 5 відсотків стартової ціни, якщо вона дорівнює або перевищує 250 млн. гривень
- 20 відсотків стартової ціни, якщо вона є меншою, ніж 250 млн. гривень
Деталі і приклади розрахунку стартової ціни описані в розділі "Поля що розраховуються автоматично при створенні другої і третьої процедури"
При авто-створенні третьої процедури у ланцюжку ЦБД має автоматично для третьої процедури проставити tenderAttempt: 3 та у полі previousAuctionId проставити ID другої процедури із ланцюжка.
Приклад
Організатор створює ланцюжок, де передає:
- Стартова ціна = 100 000 грн
- Гарантійний внесок = 10 000 грн (згідно нормативки має бути 20 000 грн, але ЦБД не валідує і пропустить такий обʼєкт)
Протягом 5 хвилин створилася перша процедура SAE.
Організатор протягом 48 годин редагує в Процедурі SAE:
- Стартова ціна = 80 000 грн
В обʼєкті SAC залишиться першочергова Стартова ціна 100 000 грн, а в першіій процедурі SAE Організатор змінив на 80 000 грн.
За результатами - Перша процедура SAE НЕ успішна і отримує статус unsuccessful.
ЦБД протягом 5 хвилин, після отримання Першою процедурою статуса unsuccessful автоматично створює другу процедуру SAE
ЦБД автоматично розраховує:
- Стартова ціна = 40 000 грн
- Гарантійний внесок = 20% від Стартової ціни = 8 000 грн
Організатор протягом 48 годин редагує в другій Процедурі SAE:
- Стартова ціна = 38 000 грн
- Гарантійний внесок = 7 000 грн
В обʼєкті SAC залишиться першочергова Стартова ціна 100 000 грн і першочерговий Гарантійний внесок 10 000 грн.
За результатами - Друга процедура SAE НЕ успішна і отримує статус unsuccessful.
ЦБД протягом 5 хвилин, після отримання Другою процедурою статуса unsuccessful автоматично створює третью процедуру SAD
ЦБД автоматично розраховує:
- Стартова ціна = 38 000 грн
- Гарантійний внесок = 20% від Стартової ціни = 7 600 грн
Організатор протягом 48 годин від моменту створення процедури може редагувати Стартову ціну, Гарантійку і інші поля.
| Anchor | ||||
|---|---|---|---|---|
|
| Info | ||
|---|---|---|
| ||
70. Якщо електронний аукціон за методом підвищення ціни визнаний таким, що не відбувся, електронна торгова система автоматично оголошує повторний аукціон за методом підвищення ціни із зниженням стартової ціни на 50 відсотків, який проводиться не раніше ніж на двадцятий та не пізніше ніж на тридцять п’ятий день з дати його оголошення (стосовно активу, стартова ціна якого становить менше 250 млн. гривень) або не раніше ніж на тридцятий та не пізніше ніж на дев’яностий день з дати його оголошення (стосовно активу, стартова ціна якого більше або дорівнює 250 млн. гривень). |
| Info | ||
|---|---|---|
| ||
1) сума, що закінчується від 0,0001 до 0,4999 копійки, заокруглюється в бік зменшення до найближчої суми, яка дорівнює цілій копійці; 2) сума, що закінчується від 0,5 до 0,9999 копійки, заокруглюється в бік збільшення до найближчої суми, яка дорівнює цілій копійці. |
Правила заокруглення:
Якщо стартова ціна 11,11 грн, то стартова другого має бути 5,56 грн
Якщо стартова 88,73, то для другого - 44,37 грн
Скасування
Скасувати "ланцюжок" окремим запитом неможливо.
При скасуванні будь-якої процедури ланцюжка - автоматично скасовується ланцюжок.
| Anchor | ||||
|---|---|---|---|---|
|
| Field name | Required for publishing | Type | readOnly | x-legalNameUa | x-legalNameEn | comment | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | owner | - | string | true | Ідентифікатор майданчика | Broker Name | |||||||||||
| 2 | ownerToken | - | string($uuid) | true | x-default: hex | ||||||||||||
| 3 | _id | - | string | true | Внутрішній ідентифікатор | ID | x-default: object_id x-serialize_when_none: false x-format: object-id | ||||||||||
| 4 | datePublished | - | string($date-time) | true | Дата публікації | Published date | x-default: now | ||||||||||
| 5 | dateModified | - | string($date-time) | true | Остання дата зміни | Date modified | |||||||||||
| 6 | objectId | - | string | true | Ідентифікатор ланцюжка | Chain ID | example: SAC001-UA-20260217-12345 | ||||||||||
| 7 | status | - | string | true | Статус процедури | Procedure status | enum:
| ||||||||||
| 8 | pipelineMethod | + | string | false | Тип | Chain type | enum:
| ||||||||||
| 9 | initialProps | + | object | false | Загальна інформація про процедури | Procedure informantion | |||||||||||
| 10 | extraSpecs | + | list[ ] of objects | false | Інформація для базових специфікацій | Base information | |||||||||||
| 11 | producedEntities | - | list[ ] of objects | true | Створені обʼєкти | Produced entities | base.ProducedEntity{
| ||||||||||
| 12 | _meta |
Обʼєкт SanctionedAuctionChain
Статуси обʼєкта
...
Статус, в якому перебуває обʼєкт до моменту створення першої процедури в ланцюжку
Протягом 5 хвилин має автоматично опублікуватися Перша процедура SAE
...
- третя в ланцюжку процедура не набуває термінального статусу (procedure.status: complete OR unsuccessful)
АБО - будь-яка процедура в цьому ланцюжку набуває статусу cancelled
...
Будь-яка процедура в цьому ланцюжку набуває статусу procedure.status: complete
...
Будь-яка процедура в цьому ланцюжку набуває статусу procedure.status: cancelled
Третя в ланцюжку процедура набуває статусу procedure.status: unsuccessful
...
Періоди обʼєкта
Періоди відсутні
Документи обʼєкта
При публікації обʼєкта SAС необхідно передати документи першої Процедури ланцюжка.
В другу і третю процедури модель documents[] копіюється із попередньох процедури цього ланцюжка.
Перелік документів описано в ТЗ до Процедури ТУТ
Логіка роботи Ланцюжка
Організатор публікує обʼєкт "Ланцюжка", в якому передає:
- всі поля, які потрібні для публікації англійської і голландської
- період експозиції (в днях) для другої процедури
- період експозиції (в днях) для третьої процедури
- розмір гарантійного внеску для другої процедури (в грн)
- розмір гарантійного внеску для третьої процедури (в грн)
- АБО один раз, якщо будемо авторозраховувати
Після успішно опублікованого обʼєкта SAC, протягом 5 хвилин автоматично створюється перша процедура.
Майданчик може отримати токен по ендпоінту.
Організатор може редагувати в SAC поля:
- період експозиції (в днях) для другої процедури
- розмір гарантійного внеску для другої процедури (в грн) (лише якщо не авторозраховуємо)
до моменту створення другої процедри в ланцюжку.
Організатор може редагувати в SAC поля:
- період експозиції (в днях) для третьої процедури
- розмір гарантійного внеску для третьої процедури (в грн) (лише якщо не авторозраховуємо)
до моменту створення третьої процедри в ланцюжку.
Організатор може редагувати поля створеної процедури протягом 48 годин. Зміни потрібно робити безпосередньо в створеній процедурі, а не в обʼєкті SAC. В SAC редагуються тільки два вищевказані параметри.
Редагування Процедури згідно ТЗ процедури ТУТ. Вся логіка процедури залишається без змін.
Якщо перша процедура в ланцюжку отримала статус unsuccessful, то протягом 5 хвилин створюється друга процедура, в яку копіюються значення полів із першої процедури + період експозиції і гарантійка із SAC
Стартова ціна для другої процедури розраховується в момент її створення, як Стартова ціна першої процедури на момент створення другої * 0,5
Деталі і приклади розрахунку стартової ціни описані в розділі "Поля що розраховуються автоматично при створенні другої і третьої процедури"
При авто-створенні другої процедури у ланцюжку ЦБД має автоматично для другої процедури проставити tenderAttempt: 2 та у полі previousAuctionId проставити ID першої процедури із ланцюжка
Третя процедура бере 100% стартової від другої
...
| Info | ||
|---|---|---|
| ||
70. Якщо електронний аукціон за методом підвищення ціни визнаний таким, що не відбувся, електронна торгова система автоматично оголошує повторний аукціон за методом підвищення ціни із зниженням стартової ціни на 50 відсотків, який проводиться не раніше ніж на двадцятий та не пізніше ніж на тридцять п’ятий день з дати його оголошення (стосовно активу, стартова ціна якого становить менше 250 млн. гривень) або не раніше ніж на тридцятий та не пізніше ніж на дев’яностий день з дати його оголошення (стосовно активу, стартова ціна якого більше або дорівнює 250 млн. гривень). |
| Info | ||
|---|---|---|
| ||
1) сума, що закінчується від 0,0001 до 0,4999 копійки, заокруглюється в бік зменшення до найближчої суми, яка дорівнює цілій копійці; 2) сума, що закінчується від 0,5 до 0,9999 копійки, заокруглюється в бік збільшення до найближчої суми, яка дорівнює цілій копійці. |
Правила заокруглення:
Якщо стартова ціна 11,11 грн, то стартова другого має бути 5,56 грн
Якщо стартова 88,73, то для другого - 44,37 грн
Скасування
Скасувати "ланцюжок" окремим запитом неможливо.
При скасуванні будь-якої процедури ланцюжка - автоматично скасовується ланцюжок.
Структура даних обʼєкта SAC
| Field name | Required for publishing | Type | readOnly | x-legalNameUa | x-legalNameEn | comment | 1 | owner | - | string | true | Ідентифікатор майданчика | Broker Name | 2 | ownerToken | - | string($uuid) | true | x-default: hex | 3 | _id | - | stringtrue | Внутрішній ідентифікатор | ID | x-default: object_id x-serialize_when_none: false x-format: object-id |
|---|---|---|---|---|---|---|---|
| 4 | datePublished | - | string($date-time) | true | Дата публікації | Published date | x-default: now | 5 | dateModified | - | string($date-time) | true | Остання дата зміни | Date modified |
| 6 | objectId | - | string | true | Ідентифікатор ланцюжка | Chain ID | example: SAC001-UA-20260217-12345 |
| 7 | status | - | string | true | Статус процедури | Procedure status | enum:
|
| 8 | pipelineMethod | + | string | false | Тип | Chain type | enum:
| 9 | initialProps | + | object | false | Загальна інформація про процедури | Procedure informantion | 10 | extraSpecs | + | list[ ] of objects | false | Інформація для базових специфікацій | Base information |
| 11 | _meta | - | Використовується стандартна логіка | ||||
| 1213 | additionalInformation | - | Використовується стандартна логіка | ||||
| 1314 | metaInfo | - | Використовується стандартна логіка |
...
| field name | required for publishing | type | readOnly | x-legalNameUa | x-legalNameEn | comment | |||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| periods | + | base.PeriodSpec | false | Інформація про періоди аукціонів | Periods info |
При публікації "ланцюжка", ЦБД очікує, що в extraSpecs обовʼязково буде передано обʼєкт для кожної процедури. Тобто, всього три обʼєкта в extraSpecs, бо процедур в ланцюжку три. Приклад:
| |||||||||||||||||||||||||||||||
| dutchStep | + | base.DutchStep | Крок голландського раунду | Dutch step | Поля dutchStepPercent та dutchStepValue автогенеруються на рівні ЦБД, без можливості внесення змін Організатором
|