Загальна інформація
У межах даної задачі на рівні ЦБД + BAS необхідно реалізувати виставлення рахунків Адміністратором ЕТС на майданчики.
Вхідні дані
Вхідні дані отримуються з двох джерел:
- Загальний ендпоінт білінгу;
- Таблиця з даними по білінгу завершених аукціонів по напрямках, який немає в ЦБД3.
Напрямки (стріми) і джерела звідки брати дані - за посиланням - https://docs.google.com/spreadsheets/d/128GKRMcEQmMCBKEGjl7QH1KEU_Mx9KJUpNNAezJIr8o/edit?usp=sharing
Workflow
Workflow виставлення рахунків в BAS
Загальний ендпоінт білінгу
Що потрібно отримати:
- Успішні аукціони, в які дата останньої зміни більша ніж вказана. (дата останньої зміни відображає коли аукціон перейшов в статус "Завершено").
- Неуспішні аукціони по землі і банкрутству в яких є дискваліфікований учасник.
Структура даних
Назва поля | Приклад заповнення | Опис |
ownerName | ТОВ «Е-ТЕНДЕР» | Назва майданчика переможця. У випадку винагороди в наслідок дискваліфікації учасника - майданчик дискваліфікованого учасника. |
purposeDescription | Плата за розвиток електронної торгової системи Prozorro.Продажі ЦБД-2 ідентифікатор аукціону TIE001-UA-20201022-27300 (щодо проведення електронних аукціонів з продажу окремих партій необробленої деревини) | Призначення платежу. Вказується в конфігураційному файлі для кожного типу процедур. |
operatorFeeAmount | 2623.8 | Винагорода майданчика, не включаючи ПДВ. |
operatorFeeWithVAT | true|false | Параметр “з ПДВ/без ПДВ". True, якщо вартість вказана з ПДВ, або ПДВ начисляється на фінальну вартість. |
operatorFeeAmountWithVAT | 2623.8 | Винагорода майданчика, включаючи ПДВ. |
administrationFeeAmount | 2623.8 | Винагорода адміністратора системи, не включаючи ПДВ. |
administrationFeeWithVAT | true|false | Параметр “з ПДВ/без ПДВ". True, якщо вартість вказана з ПДВ, або ПДВ начисляється на фінальну вартість. |
administrationFeeAmountWithVAT | 2623.8 | Винагорода адміністратора системи, включаючи ПДВ. |
needManualCheck | true|false | В випадках, коли білінг не може однозначно порахувати суму винагороди, виводиться true. Зараз ми не можемо порахувати суму винагороди лише у випадку, коли для базової, відчуження і комерційних продажів у нас Організатор Укрзалізниця (ЄДРПОУ - 40075815) |
Функціональність в BAS
Таблиця з контрагентами (майданчиками)
Для кожного майданчика є можливість вказати такі поля:
Назва | Тип |
---|---|
Чи підписана майданчиком маркетингова угода | true|false |
Дані про добровільні внески отримуються з вхідних платежів. Список добровільних внесків відображається на картці майданчика.
Враховувати знижку нам потрібно лише по сумі добровільних внесків, яка була станом на початок звітного місяця.
Якщо впродовж місяця сума добровільних внесків була змінена, то тоді знижка за дні до кінця місяця перераховується по новій сумі.
Вигляд таблиці
В таблиці виводяться агреговані дані по майданчиках в розрізі місяця.
Назва поля | Опис | |
---|---|---|
Контрагент | Значення з довіднику контрагентів | |
Період | Звітний місяць | |
Сума винагороди майданчика | Загальна сума винагород майданчика по всіх аукціонах за звітний місяць | |
Сума винагороди ДП | Загальна сума винагород ДП по всіх аукціонах контрагента за звітний місяць | |
Сума мінімальної плати | До виставлення авансового рахунку виводиться 0, після - 30 тисяч грн | |
Різниця між винагородою ДП и мінімальною платою | Загальна сума винагород ДП по всіх аукціонах контрагента за звітний місяць - 30 тисяч грн | |
Сума знижки 7% | Якщо майданчик робив добровільний внесок рахується за формулою: ( ("Сума добровільного внеску станом на початок звітного місяця" * 0.07) / кількість днів в році ) ) * загальна кількість днів в звітному місяці | Приклад 1: Сума добровільного внеску: 100 000,00 Звітний місяць: вересень (30 днів). Формула: 100000*0.07/365*30 = 575,34 грн Приклад 2: Сума добровільного внеску: 100 000,00 Звітний місяць: вересень (30 днів). 14 вересня внесено ще 20 000,00 Формула: 100000*0.07/365*14 + 120000*0.07/365*16 = 636,71 грн |
Винагорода ДП: СумаБезПДВ | Загальна сума винагороди ДП по всіх аукціонах контрагента за звітний місяць без врахування ПДВ - сума знижки 7% | |
Винагорода ДП: СумаПДВ | Загальна сума ПДВ по винагороді ДП по всіх аукціонах контрагента за звітний місяць - сума знижки 7% | |
Винагорода ДП: СумаЗПДВ | Загальна сума винагороди ДП з врахуванням ПДВ по всіх аукціонах контрагента за звітний місяць - сума знижки 7% | |
Рахунки: СумаБезПДВ | Загальна сума по виставлених рахунках по всіх аукціонах контрагента за звітний місяць без врахування ПДВ - сума знижки 7% | |
Рахунки: СумаПДВ | Загальна сума ПДВ по виставлених рахунках по всіх аукціонах контрагента за звітний місяць - сума знижки 7% | |
Рахунки: СумаЗПДВ | Загальна сума по виставлених рахунках з врахуванням ПДВ по всіх аукціонах контрагента за звітний місяць - сума знижки 7% | |
Залишок маркетингового бюджету | Вказується, якщо "Чи підписана майданчиком маркетингова угода" = true. Якщо "Рахунки: СумаЗПДВ" = 0 - вказуємо 20 тисяч грн. Якщо "Рахунки: СумаЗПДВ" > 0 і менше 20 тисяч вказуємо 20000 - "Рахунки: СумаЗПДВ". Якщо "Рахунки: СумаЗПДВ" більше 20000 - вказуємо 0. | |
Сума на яку створено рахунків в звітному місяці | Агрегуються дані по аукціонах контрагента | |
Перевірка згідно виставлених рахунків | Якщо Винагорода ДП: СумаЗПДВ менше суми мінімальної плати, то нічого не виводимо. Винагорода ДП: СумаЗПДВ - Сума мінімальної плати - Рахунки: СумаЗПДВ | Якщо значення 0, або порожнє, то всі рахунки виставлені коректно. |
Функціональність
Можливість створення авансового рахунку на 30 тисяч грн по кожного з майданчиків.
Перехід на аукціони в звітного місяці по конкретному контрагенту.
Таблиця з аукціонами
Заповнення таблиці
Імпортуються аукціони з гугл-таблиці(https://docs.google.com/spreadsheets/d/1180Re4I14_8BlK4n9tFNd5YTiD5-FNYo4Fa-kR6XsDM/edit#gid=862574121, вкладка download 1-C) і з білінгу https://gitlab.prozorro.sale/prozorro-sale/billing/-/blob/master/docs/billing.md.
З гугл-таблиць аукціони імпортуються за нинішнім механізмом. Є можливість вибрати потрібні аукціони для імпорту.
З білінгу аукціони імпортуються щодня. Є можливість запустити імпорт вручну. Можливості вибрати потрібні аукціони немає.
Вигляд таблиці
Назва поля | Опис | Поле з гугл-таблиці | Поле з ендпоінту білінгу |
---|---|---|---|
Дата | Дата імпорту | ||
Ідентифікатор клієнта | Ідентифікатор майданчика переможця (майданчика дискваліфікованого учасника) | Поле owner | |
Контрагент | Найменування контрагента відповідно до довідника в BAS | Поле "Майданчик переможної пропозиції" | |
ЄДРПОУ | Ідентифікатор контрагента відповідно до довідника в BAS | Поле "EDR" | |
Ідентифікатор аукціону | Ідентифікатор аукціону | Поле "Призначення" | Ключ в масиві |
Ідентифікатор стріма | Ідентифікатор стріма (типу процедури) відповідно до довідника в BAS | Поле "ID Стріму" | Визначається відповідно до ідентифікатору аукціону |
Призначення | Призначення платежу | Поле "Призначення" | Поле "purposeDescription" |
Рахунок | Заповнюється системою після виставлення рахунку | ||
Винагорода майданчика: СумаБезПДВ | "operatorFeeAmount" | ||
Винагорода майданчика: | "operatorFeeAmountWithVAT" - "operatorFeeAmount" | ||
Винагорода майданчика: СумаЗПДВ | "operatorFeeAmountWithVAT" | ||
Винагорода ДП: СумаБезПДВ | Поле "Сума без ПДВ" | "administrationFeeAmount" | |
Винагорода ДП: | Поле "ПДВ" | "administrationFeeAmountWithVAT" - "administrationFeeAmount" | |
Винагорода ДП: СумаЗПДВ | Поле "Разом з ПДВ" | "administrationFeeAmountWithVAT" | |
Рахунок: СумаБезПДВ | Заповнюється системою після виставлення рахунку | ||
Рахунок: СумаПДВ | Заповнюється системою після виставлення рахунку | ||
Рахунок: СумаЗПДВ | Заповнюється системою після виставлення рахунку | ||
Номер рахунку | Заповнюється системою після виставлення рахунку | ||
Тип договору | Визначається відповідно до типу процедури | ||
Ручна перевірка | Позначає аукціони в яких автоматично білінг точно порахувати не вдається, і вони вимагають ручного перерахунку | Поле "needManualCheck" | |
Перевірка протоколу? | За замовчуванням - false. Можна встановити як true. Після виставлення рахунку автоматично встановлюється в true |
Функціональність
- По кожному аукціону можна сформувати рахунок.
- Можливість фільтрації по всіх полях.
- Можливість вибору декілька аукціонів і формування для них єдиного рахунку.
Після формування рахунку заповнення полів в таблиці ("Рахунок:СумаБезПДВ", "Рахунок:СумаПДВ", "Рахунок:СумаЗПДВ", "Номер рахунку") і можливість відфільтрувати по цих полях.
- Поля "Рахунок:..." можуть відрізнятися від значення винагороди ДП у випадку, якщо рахунок потрібно виставити на менше суму, ніж винагорода ДП.
Допоміжний функціонал
- Можливість додавання нових стрімів і вибору джерела отримання даних про аукціони без внесення змін в код BAS.