Атестаційні завдання K2 ERP/Домашня бухгалтерія: відмінності між версіями

Створена сторінка: = Модуль обліку особистих доходів і витрат: Домашня бухгалтерія = == Реальний життєвий контекст == Користувач хоче вести облік своїх особистих фінансів або фінансів своєї родини: * фіксувати всі доходи і витрати; * категоризувати витрати за типами; * вес...
 
Немає опису редагування
 
Рядок 1: Рядок 1:
= Модуль обліку особистих доходів і витрат: Домашня бухгалтерія =
{{DISPLAYTITLE:Атестаційні завдання K2 ERP/Домашня бухгалтерія}}
 
'''Атестаційне завдання K2 ERP — Домашня бухгалтерія''' — це практична задача для перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля обліку особистих або сімейних фінансів.
 
Модуль має дозволяти користувачу вести доходи, витрати, рахунки, перекази між рахунками, бюджети, фінансові цілі, залишки, мультивалютність, імпорт банківських виписок і звітність.
 
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;">
'''Коротко.''' Потрібно реалізувати модуль домашньої бухгалтерії, який дозволяє бачити, скільки грошей є зараз, звідки вони надходять, куди витрачаються, чи не перевищено бюджет і наскільки користувач наблизився до фінансових цілей.
</div>
 
__TOC__
 
== Назва завдання ==
 
'''Модуль обліку особистих доходів і витрат: Домашня бухгалтерія'''.
 
== Мета завдання ==
 
Мета завдання — створити в K2 ERP модуль для обліку особистих або сімейних фінансів.
 
Система повинна дозволяти:
 
* вести облік доходів;
* вести облік витрат;
* створювати рахунки та контролювати залишки;
* класифікувати доходи й витрати за категоріями;
* виконувати перекази між рахунками;
* вести бюджетування за категоріями;
* контролювати перевищення бюджету;
* створювати фінансові цілі;
* відстежувати прогрес накопичення;
* підтримувати кілька валют;
* формувати звіти й діаграми;
* експортувати дані в Excel або PDF;
* імпортувати операції з банківських виписок у форматі CSV.
 
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;">
'''Головний принцип.''' Домашня бухгалтерія — це не просто список витрат. Це система контролю особистих фінансів: рахунки → операції → категорії → бюджети → цілі → звіти → рішення.
</div>


== Реальний життєвий контекст ==
== Реальний життєвий контекст ==


Користувач хоче вести облік своїх особистих фінансів або фінансів своєї родини:
Користувач хоче вести облік власних фінансів або фінансів родини.
 
У реальному житті гроші можуть зберігатися на кількох рахунках: банківських картках, готівці, депозитах, валютних рахунках або електронних гаманцях.
 
Користувачу потрібно розуміти:
 
* скільки грошей є на кожному рахунку;
* скільки було доходів за місяць;
* скільки було витрат;
* на які категорії витрачається найбільше;
* чи не перевищено бюджет;
* скільки залишилось до фінансової цілі;
* які операції були по конкретному рахунку;
* як змінюється фінансовий стан у часі.
 
Такий модуль може використовуватися не лише приватними особами, а й дуже малими бізнесами, ФОП або сімейними проєктами, де потрібен простий контроль грошей без складного бухгалтерського обліку.
 
== Основний бізнес-процес ==
 
Типовий процес роботи з модулем виглядає так:
 
# користувач створює рахунки;
# вказує початкові залишки;
# створює категорії доходів і витрат;
# додає дохід, наприклад зарплату або фріланс;
# система збільшує баланс відповідного рахунку;
# додає витрати, наприклад продукти, транспорт або оренду;
# система зменшує баланс рахунку;
# за потреби користувач робить переказ між рахунками;
# система списує гроші з одного рахунку і зараховує на інший;
# користувач встановлює місячні бюджети по категоріях;
# система контролює перевищення бюджету;
# користувач створює фінансову ціль;
# система показує прогрес накопичення;
# у звітах видно доходи, витрати, залишки та структуру фінансів.
 
== Основні об’єкти модуля ==
 
{| class="wikitable" style="width:100%;"
! Об’єкт
! Призначення
|-
| Категорії доходів
| Класифікація джерел надходження грошей
|-
| Категорії витрат
| Класифікація напрямів витрачання грошей
|-
| Рахунки
| Готівка, банківські картки, депозити, валютні рахунки
|-
| Доходи
| Операції надходження грошей
|-
| Витрати
| Операції списання грошей
|-
| Перекази між рахунками
| Переміщення грошей між власними рахунками
|-
| Бюджети
| Місячні ліміти витрат за категоріями
|-
| Фінансові цілі
| Накопичення на майбутні покупки або події
|-
| Валюти та курси
| Підтримка UAH, USD, EUR та інших валют
|-
| Банківські виписки
| Імпорт операцій з CSV-файлів
|-
| Звіти
| Доходи, витрати, рух коштів, залишки, бюджети, цілі
|}
 
== Довідник «Категорії доходів» ==
 
Довідник категорій доходів потрібен для класифікації джерел надходження коштів.
 
== Приклади категорій доходів ==
 
* зарплата;
* фріланс;
* інвестиції;
* подарунки;
* повернення боргу;
* продаж речей;
* інші доходи.
 
== Поля категорії доходу ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва категорії
| Наприклад: зарплата, фріланс, інвестиції
|-
| Колір або іконка
| Для зручного відображення в діаграмах
|-
| Активність
| Чи використовується категорія в поточному обліку
|-
| Коментар
| Додатковий опис категорії
|}
 
== Довідник «Категорії витрат» ==
 
Довідник категорій витрат потрібен для аналізу, на що витрачаються гроші.
 
== Приклади категорій витрат ==
 
* продукти;
* оренда;
* комунальні послуги;
* транспорт;
* освіта;
* медицина;
* розваги;
* одяг;
* подорожі;
* підписки;
* подарунки;
* інші витрати.
 
== Поля категорії витрат ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва категорії
| Наприклад: продукти, транспорт, освіта
|-
| Група категорій
| Обов’язкові витрати, необов’язкові витрати, накопичення тощо
|-
| Колір або іконка
| Для діаграм і швидкого візуального аналізу
|-
| Активність
| Чи використовується категорія
|-
| Коментар
| Додаткова інформація
|}
 
== Довідник «Рахунки» ==
 
Довідник рахунків зберігає місця, де користувач тримає гроші.
 
== Приклади рахунків ==
 
* карта Monobank;
* готівка;
* депозит ПриватБанк;
* валютний рахунок USD;
* валютний рахунок EUR;
* електронний гаманець;
* рахунок для фінансової цілі.
 
== Поля рахунку ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва рахунку
| Наприклад: карта Monobank, готівка, депозит
|-
| Тип рахунку
| Готівка, банківський, депозит, валютний, інше
|-
| Валюта
| UAH, USD, EUR або інша валюта
|-
| Початковий баланс
| Сума на рахунку на момент початку обліку
|-
| Поточний баланс
| Розраховується на основі операцій
|-
| Статус
| Активний, прихований, закритий
|}
 
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;">
'''Важливо.''' Поточний баланс рахунку не повинен редагуватися вручну без підстави. Він має формуватися з початкового балансу, доходів, витрат і переказів.
</div>
 
== Типи рахунків ==
 
{| class="wikitable" style="width:100%;"
! Тип рахунку
! Призначення
|-
| Готівка
| Облік грошей у фізичній готівці
|-
| Банківський
| Картки та поточні рахунки
|-
| Депозит
| Накопичувальні або строкові рахунки
|-
| Валютний
| Рахунок в іноземній валюті
|-
| Інше
| Електронні гаманці або нестандартні джерела
|}
 
== Журнал «Доходи» ==
 
Журнал доходів призначений для фіксації всіх надходжень коштів.
 
== Колонки журналу доходів ==
 
{| class="wikitable" style="width:100%;"
! Колонка
! Опис
|-
| Дата
| Дата отримання доходу
|-
| Сума
| Сума надходження
|-
| Валюта
| Валюта операції
|-
| Категорія доходу
| Зарплата, фріланс, інвестиції тощо
|-
| Рахунок зарахування
| Куди надійшли кошти
|-
| Опис
| Коментар до операції
|}
 
== Функціональність журналу доходів ==
 
Журнал доходів має підтримувати:
 
* додавання доходу вручну;
* редагування доходу;
* видалення помилкової операції за наявності прав;
* пошук за датою;
* фільтрацію за категорією;
* фільтрацію за рахунком;
* фільтрацію за валютою;
* миттєве оновлення балансу рахунку;
* роботу через AJAX без перезавантаження сторінки.
 
== Журнал «Витрати» ==
 
Журнал витрат призначений для фіксації всіх витрат користувача або родини.
 
== Колонки журналу витрат ==
 
{| class="wikitable" style="width:100%;"
! Колонка
! Опис
|-
| Дата
| Дата витрати
|-
| Сума
| Сума витрати
|-
| Валюта
| Валюта операції
|-
| Категорія витрати
| Продукти, оренда, транспорт, освіта тощо
|-
| Рахунок списання
| З якого рахунку списано кошти
|-
| Опис
| Коментар до операції
|}
 
== Функціональність журналу витрат ==


* фіксувати всі доходи і витрати;
Журнал витрат має підтримувати:
* категоризувати витрати за типами;
* вести облік за рахунками:
** готівка;
** банківська картка;
** депозит;
* аналізувати, скільки і на що витрачається;
* ставити фінансові цілі:
** накопичення;
** великі покупки;
* вести бюджетування на місяць.


== Основні завдання ==
* додавання витрати вручну;
* редагування витрати;
* видалення помилкової операції за наявності прав;
* пошук за датою;
* фільтрацію за категорією;
* фільтрацію за рахунком;
* фільтрацію за валютою;
* автоматичний перерахунок балансу рахунку;
* попередження при перевищенні бюджету;
* роботу через AJAX.


=== 1. Структура довідників ===
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
'''Критично.''' Додавання витрати має зменшувати баланс рахунку. Якщо витрати не впливають на залишок, модуль не виконує головну функцію домашньої бухгалтерії.
</div>


==== Довідник «Категорії доходів» ====
== Перекази між рахунками ==


Поля довідника:
Переказ між рахунками — це операція переміщення грошей між власними рахунками користувача.


* назва категорії:
Приклади:
** зарплата;
** фріланс;
** інвестиції;
** подарунки.


==== Довідник «Категорії витрат» ====
* з банківської картки в готівку;
* з картки на депозит;
* з гривневого рахунку на валютний;
* з основного рахунку на рахунок фінансової цілі.


Поля довідника:
== Поля переказу ==


* назва категорії:
{| class="wikitable" style="width:100%;"
** продукти;
! Поле
** оренда;
! Опис
** транспорт;
|-
** освіта;
| Дата
** розваги.
| Дата переказу
|-
| Рахунок списання
| Звідки списуються кошти
|-
| Рахунок зарахування
| Куди зараховуються кошти
|-
| Сума списання
| Сума, яка списується
|-
| Сума зарахування
| Сума, яка зараховується
|-
| Валюта
| Валюта операції
|-
| Курс
| Використовується, якщо валюти рахунків різні
|-
| Коментар
| Додаткове пояснення
|}


==== Довідник «Рахунки» ====
== Логіка переказу ==


Поля довідника:
Після проведення переказу система повинна:


* назва рахунку:
* списати суму з одного рахунку;
** карта Monobank;
* зарахувати суму на інший рахунок;
** готівка;
* не вважати переказ доходом;
** депозит ПриватБанк;
* не вважати переказ витратою;
* тип рахунку:
* відобразити операцію в русі коштів по обох рахунках.
** готівка;
** банківський;
** депозит;
** інше;
* початковий баланс.


=== 2. Журнал «Доходи» ===
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;">
'''Практичний сенс.''' Переказ між власними рахунками не змінює загальний фінансовий стан користувача. Він лише змінює місце зберігання грошей.
</div>


==== Колонки журналу ====
== Бюджетування ==


* дата;
Бюджетування дозволяє встановити місячні ліміти витрат за категоріями.
* сума;
* категорія доходу;
* опис;
* рахунок зарахування.


==== Функціонал ====
Наприклад, користувач може встановити:


* додавання доходу вручну через AJAX-форму;
* продукти — 15 000 грн на місяць;
* миттєве оновлення балансу рахунку.
* транспорт — 3 000 грн на місяць;
* розваги — 4 000 грн на місяць;
* освіта — 5 000 грн на місяць.


=== 3. Журнал «Витрати» ===
== Поля бюджету ==


==== Колонки журналу ====
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Період
| Місяць і рік бюджету
|-
| Категорія витрат
| Категорія, для якої встановлено ліміт
|-
| Ліміт
| Максимальна сума витрат
|-
| Фактичні витрати
| Розраховується на основі операцій
|-
| Залишок бюджету
| Ліміт мінус фактичні витрати
|-
| Статус
| У нормі, близько до перевищення, перевищено
|}


* дата;
== Контроль перевищення бюджету ==
* сума;
* категорія витрати;
* опис;
* рахунок списання.


==== Функціонал ====
Система має автоматично контролювати перевищення бюджету.


* додавання витрати вручну через AJAX-форму;
Якщо користувач перевищує встановлений ліміт, система повинна:
* автоматичний перерахунок балансу рахунку.


=== 4. Перекази між рахунками ===
* показати попередження;
* виділити категорію кольором;
* показати суму перевищення;
* за бажанням — надіслати повідомлення.


Функціонал:
== Фінансові цілі ==


* можливість зробити операцію «переказ між рахунками», наприклад з карти на готівку;
Фінансові цілі потрібні для планування накопичень.
* автоматичне списання з одного рахунку;
* автоматичне зарахування на інший рахунок.


=== 5. Бюджетування ===
Приклади цілей:


Функціонал:
* відпустка;
* новий ноутбук;
* автомобіль;
* ремонт;
* навчання;
* фінансова подушка.


* встановлення місячного ліміту витрат за категоріями;
== Поля фінансової цілі ==
* автоматичний контроль перевищення бюджету;
* повідомлення при перевищенні бюджету.


=== 6. Фінансові цілі ===
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва цілі
| Наприклад: «Відпустка» або «Новий ноутбук»
|-
| Сума цілі
| Скільки потрібно накопичити
|-
| Поточна сума
| Скільки вже накопичено
|-
| Планована дата досягнення
| Коли користувач хоче досягти цілі
|-
| Прив’язаний рахунок
| Рахунок, на якому зберігаються накопичення
|-
| Прогрес
| Відсоток виконання цілі
|-
| Статус
| Активна, досягнута, призупинена, закрита
|}
 
== Розрахунок прогресу цілі ==
 
<pre>
Прогрес = Поточна сума / Сума цілі × 100%
</pre>
 
Система має показувати прогрес у вигляді відсотка або індикатора виконання.
 
== Мультивалютність ==
 
Модуль має підтримувати кілька валют.
 
Мінімальні валюти:
 
* UAH;
* USD;
* EUR.
 
== Вимоги до мультивалютності ==
 
Система повинна підтримувати:
 
* довідник валют;
* рахунки в різних валютах;
* курси валют;
* операції в різних валютах;
* перекази між рахунками в різних валютах;
* перерахунок загального балансу в базову валюту;
* звіти по окремих валютах і в базовій валюті.
 
== Імпорт банківських виписок CSV ==
 
Опціонально потрібно передбачити імпорт операцій із банківських виписок у форматі CSV.
 
Імпорт має дозволяти:


Можливість створювати фінансові цілі.
* завантажити CSV-файл;
* розпізнати дату, суму, опис і рахунок;
* визначити тип операції: дохід або витрата;
* запропонувати категорію на основі опису;
* показати помилки імпорту;
* не дублювати вже імпортовані операції;
* дозволити користувачу підтвердити імпорт.


Поля фінансової цілі:
== Звітність ==


* назва цілі, наприклад:
== Звіт «Доходи і витрати за місяць» ==
** «Відпустка»;
** «Новий ноутбук»;
* сума цілі;
* планована дата досягнення;
* прив’язка рахунку;
* відстеження прогресу накопичень.


=== 7. Звіти ===
Звіт показує загальну картину фінансів за вибраний місяць.


==== Звіт «Доходи і витрати за місяць» ====
У звіті потрібно показати:


Діаграми:
* загальну суму доходів;
* загальну суму витрат;
* різницю між доходами й витратами;
* структуру доходів за категоріями;
* структуру витрат за категоріями;
* діаграми доходів і витрат.
 
== Діаграми доходів і витрат ==
 
Для діаграм можна використовувати Chart.js.
 
Потрібні діаграми:


* структура доходів за категоріями;
* структура доходів за категоріями;
* структура витрат за категоріями;
* структура витрат за категоріями;
* загальна сума доходів і витрат.
* порівняння доходів і витрат за місяцями;
* динаміка залишків по рахунках.
 
== Звіт «Рух коштів по рахунках» ==
 
Звіт показує всі операції по конкретному рахунку.
 
У звіті потрібно відображати:
 
* рахунок;
* період;
* залишок на початок;
* доходи;
* витрати;
* перекази;
* залишок на кінець;
* деталізацію всіх операцій.
 
== Звіт «Бюджет за місяць» ==
 
Звіт показує виконання бюджету.
 
У звіті потрібно показати:
 
* категорію витрат;
* встановлений ліміт;
* фактичні витрати;
* залишок бюджету;
* відсоток використання;
* перевищення, якщо воно є.
 
== Звіт «Фінансові цілі» ==
 
Звіт показує прогрес по фінансових цілях.
 
У звіті потрібно відображати:
 
* назву цілі;
* суму цілі;
* поточну суму;
* прогрес;
* планову дату досягнення;
* залишок до цілі;
* статус.
 
== Експорт даних ==
 
Модуль має підтримувати експорт даних.
 
Експортувати потрібно:
 
* доходи;
* витрати;
* рух коштів;
* бюджети;
* фінансові цілі;
* звіти.
 
Формати експорту:


==== Звіт «Рух коштів по рахунках» ====
* Excel;
* PDF.


Функціонал звіту:
== AJAX-інтерактив ==


* показати залишок на початок і кінець місяця;
Модуль має працювати зручно й швидко без зайвого перезавантаження сторінок.
* показати всі операції по рахунку.


=== 8. Додаткові функції ===
Через AJAX мають працювати:


* робота без перезавантаження сторінок через AJAX;
* додавання доходу;
* підтримка мультивалютності:
* додавання витрати;
** UAH;
* редагування операції;
** USD;
* видалення операції;
** EUR;
* переказ між рахунками;
* миттєвий перерахунок залишків по рахунках при додаванні транзакцій;
* миттєве оновлення балансів;
* можливість експорту даних в Excel або PDF;
* створення бюджету;
* завантаження витрат із банківських виписок у форматі CSV — опціонально.
* контроль перевищення бюджету;
* створення фінансової цілі;
* оновлення прогресу цілі;
* фільтрація журналів;
* побудова діаграм.
 
== Логування змін ==
 
Модуль повинен логувати важливі зміни.
 
Журнал змін має фіксувати:
 
* хто створив операцію;
* хто змінив операцію;
* хто видалив операцію;
* хто створив бюджет;
* хто змінив бюджет;
* хто створив фінансову ціль;
* хто виконав імпорт CSV;
* дату й час зміни;
* старе та нове значення, якщо це можливо.


== Технічні вимоги ==
== Технічні вимоги ==


{| class="wikitable"
{| class="wikitable" style="width:100%;"
! Параметр
! Параметр
! Опис
! Опис
Рядок 154: Рядок 665:
| K2 Cloud ERP на Python або PHP
| K2 Cloud ERP на Python або PHP
|-
|-
| БД
| База даних
| PostgreSQL або MySQL
| PostgreSQL або MySQL
|-
|-
| Фронтенд
| Фронтенд
| HTML5, JavaScript, AJAX, Fetch або Axios
| HTML5, JavaScript
|-
| AJAX
| Fetch API або Axios
|-
|-
| UI-компоненти
| UI-компоненти
| DataTables, Select2, Chart.js для діаграм
| DataTables, Select2, Chart.js для діаграм
|-
|-
| Друк
| Імпорт
| Експорт у PDF або Excel
| CSV для банківських виписок, опціонально
|-
| Експорт
| PDF або Excel
|}
|}


== Критерії оцінки ==
== Рекомендовані сутності бази даних ==
 
Для реалізації задачі доцільно передбачити такі сутності:


{| class="wikitable"
* категорії доходів;
* категорії витрат;
* рахунки;
* валюти;
* курси валют;
* доходи;
* витрати;
* перекази між рахунками;
* бюджети;
* фінансові цілі;
* банківські виписки;
* імпортовані операції;
* звіти;
* журнал змін.
 
== Практичне завдання ==
 
У межах атестації потрібно продемонструвати робочий сценарій.
 
Мінімальний сценарій:
 
# створити категорії доходів;
# створити категорії витрат;
# створити кілька рахунків;
# вказати початкові залишки;
# додати дохід;
# перевірити збільшення балансу рахунку;
# додати витрату;
# перевірити зменшення балансу рахунку;
# виконати переказ між рахунками;
# перевірити списання з одного рахунку і зарахування на інший;
# створити місячний бюджет по категорії;
# додати витрати, які наближають до ліміту;
# перевірити попередження при перевищенні бюджету;
# створити фінансову ціль;
# прив’язати її до рахунку;
# перевірити розрахунок прогресу;
# сформувати звіт доходів і витрат за місяць;
# сформувати звіт руху коштів по рахунках;
# сформувати звіт бюджету;
# сформувати звіт фінансових цілей;
# експортувати звіт у Excel або PDF;
# опціонально імпортувати банківську виписку CSV.
 
== Критерії оцінювання ==
 
{| class="wikitable" style="width:100%;"
! Критерій
! Критерій
! Бали
! Бали
! Що перевіряється
|-
|-
| Реалізація журналу доходів і витрат
| Реалізація журналу доходів і витрат
| 20
| 20
| Додавання, редагування, категоризація, фільтри, вплив на баланси рахунків
|-
|-
| Перекази між рахунками
| Перекази між рахунками
| 15
| 15
| Списання з одного рахунку, зарахування на інший, коректне відображення в русі коштів
|-
|-
| Бюджетування і фінансові цілі
| Бюджетування і фінансові цілі
| 20
| 20
| Ліміти по категоріях, контроль перевищення, цілі, прогрес накопичень
|-
|-
| Формування звітів і діаграм
| Формування звітів і діаграм
| 20
| 20
| Доходи й витрати, рух коштів, бюджети, фінансові цілі, Chart.js
|-
|-
| Інтерактивність через AJAX
| Інтерактивність через AJAX
| 15
| 15
| Додавання операцій, оновлення балансів, фільтри, діаграми без перезавантаження
|-
|-
| Підтримка мультивалютності
| Підтримка мультивалютності
| 10
| 10
| Валюти, курси, рахунки в різних валютах, перерахунок у базову валюту
|-
! Разом
! 100
! Максимальна оцінка
|}
|}
== Шкала оцінювання ==
{| class="wikitable" style="width:100%;"
! Бали
! Рівень
! Опис
|-
| 90–100
| Відмінно
| Модуль повністю працює: доходи, витрати, рахунки, перекази, бюджети, цілі, звіти, мультивалютність і AJAX реалізовані коректно
|-
| 75–89
| Добре
| Основна логіка працює, є незначні недоліки, які не руйнують облік особистих фінансів
|-
| 60–74
| Зараховано
| Базовий сценарій працює, але частина функцій реалізована неповно або потребує доопрацювання
|-
| 0–59
| Не зараховано
| Відсутня критична логіка: рахунки, доходи, витрати, перекази, баланси або звіти
|}
== Критичні помилки ==
Критичними помилками вважаються ситуації, коли:
* неможливо створити рахунок;
* дохід не збільшує баланс рахунку;
* витрата не зменшує баланс рахунку;
* переказ між рахунками помилково рахується як дохід або витрата;
* переказ не змінює залишки обох рахунків;
* баланс рахунку не відповідає операціям;
* неможливо створити бюджет;
* система не показує перевищення бюджету;
* фінансова ціль не рахує прогрес;
* звіти не відповідають фактичним операціям;
* мультивалютні операції не зберігають валюту;
* імпорт CSV створює дублікати без контролю;
* зміни операцій не логуються.
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
'''Умова складання.''' Завдання не може бути зараховане, якщо система не дозволяє пройти базовий цикл домашньої бухгалтерії: рахунок → дохід → витрата → переказ → баланс → бюджет → фінансова ціль → звіт.
</div>
== Очікуваний результат ==
У результаті виконання атестаційного завдання має бути створений модуль домашньої бухгалтерії в K2 ERP.
Модуль має підтримувати категорії доходів і витрат, рахунки, доходи, витрати, перекази між рахунками, бюджетування, фінансові цілі, мультивалютність, звіти, діаграми, експорт у PDF або Excel та опціональний імпорт банківських виписок CSV.


== Примітка ==
== Примітка ==


Домашня бухгалтерія — дуже популярна функція серед приватних осіб та малих бізнесів.
Домашня бухгалтерія — популярний і зрозумілий користувачам модуль, який добре демонструє базові принципи обліку грошей.
 
Він допомагає контролювати особисті та сімейні фінанси, аналізувати витрати, уникати перевитрат і поступово досягати фінансових цілей.
 
== Коротко ==
 
{| class="wikitable" style="width:100%;"
! Питання
! Відповідь
|-
| Що потрібно створити?
| Модуль обліку особистих доходів і витрат
|-
| Які довідники потрібні?
| Категорії доходів, категорії витрат, рахунки, валюти
|-
| Які основні журнали?
| Доходи, витрати, перекази між рахунками
|-
| Що має відбуватися з балансом?
| Доходи збільшують баланс, витрати зменшують, перекази змінюють два рахунки
|-
| Що таке бюджетування?
| Місячні ліміти витрат за категоріями
|-
| Що таке фінансова ціль?
| Накопичення на конкретну суму до визначеної дати
|-
| Які звіти потрібні?
| Доходи й витрати, рух коштів, бюджет, фінансові цілі
|-
| Що є критичною вимогою?
| Коректний баланс рахунків на основі всіх операцій
|}
 
== Див. також ==


Вона допомагає:
* [[K2 Cloud ERP|K2 ERP]]
* [[K2 ERP]]
* [[Атестаційні завдання K2 ERP]]
* [[Домашня бухгалтерія]]
* [[Фінансовий облік]]
* [[Доходи]]
* [[Витрати]]
* [[Бюджетування]]
* [[Фінансові цілі]]
* [[Мультивалютність]]
* [[Chart.js]]
* [[Excel-експорт]]
* [[CSV]]


* контролювати особисті та сімейні фінанси;
[[Категорія:K2 ERP]]
* аналізувати витрати;
[[Категорія:Атестаційні завдання K2]]
* досягати фінансових цілей.
[[Категорія:Домашня бухгалтерія]]
[[Категорія:Фінансовий облік]]
[[Категорія:Бюджетування]]
[[Категорія:Особисті фінанси]]
[[Категорія:Корпоративна Wiki]]