Перейти до основного контенту
База знань · виробничий облік USD41,42 ПДВ20% МЗП8 000
III

Фаза 3 з 9

Data Migration — підготовка і перенесення даних

Перенести master data і opening balances з 1С/BAS у новий Odoo без втрат і помилок. Це шов між старим і новим.

Тривалість
2-3 тижні
Власники
PM · консультант · розробник · бухгалтер
Завдань
22

Передумови

  • Підписана design specification (фаза 2)
  • Бекап старої системи (1С/BAS) на дату cutover-1
  • Очищений і узгоджений chart of accounts в Odoo
  • Призначений data steward з боку клієнта (типово — головбух)

Покрокові завдання 22

  1. Extract партнерів з 1С/BAS — повний дамп з усіма реквізитами

    ЄДРПОУ, ІПН, юр. адреса, банк-реквізити, контактні особи.

    розробник 1 день
  2. Очищення партнерів: пошук дублікатів за ЄДРПОУ та ІПН

    У 1С часто 2-3 картки на одного контрагента. Зливати — і фіксувати, який старий ID веде на новий.

    бухгалтер 2-3 дні
  3. Перевірка ЄДРПОУ через API ДПС (відкритий реєстр)

    Виявити контрагентів-банкрутів, припинених, у списку санкцій.

    розробник 1 день
  4. Extract продуктів і номенклатури з 1С/BAS
    розробник 1 день
  5. Очищення продуктів: дублікати, неактуальні SKU, неконсистентна одиниця виміру
    консультант 2-3 дні
  6. Мапінг номенклатури на коди УКТ ЗЕД (для експорту і деяких ПН)
    бухгалтер 2 дні → довідник
  7. Підготовка XLSX-шаблонів для імпорту в Odoo (партнери, продукти, BoMs)
    консультант 1 день
  8. Імпорт партнерів у Odoo, валідація обов'язкових полів
    розробник 1 день
  9. Імпорт продуктів у Odoo з категоріями і одиницями виміру
    розробник 1 день
  10. Імпорт BoMs (топ-20 SKU з фази Design)
    консультант 1 день → довідник
  11. Дзеркалювання залишків ТМЦ на дату cutover (за складами і номенклатурою)

    Найкритичніший момент. Залишки в Odoo мають збігтися з trial balance 1С до копійки.

    бухгалтер 2-3 дні → довідник
  12. Розрахунок собівартості залишків — середньозважена або FIFO
    бухгалтер 1 день
  13. Opening balance journal entry — головна проводка

    Усі рахунки одночасно: 361 (Дт) = 631 (Кт) у балансі, плюс 311, 641, 201-26, капітал.

    бухгалтер 1 день
  14. Імпорт відкритих ПН (отримані від постачальників, ще не зачитані)
    бухгалтер 1 день → довідник
  15. Імпорт виданих ПН і РК (виставлених у попередніх періодах, не закритих)
    бухгалтер 1 день → довідник
  16. Імпорт історії заборгованостей 361 і 631 (з датами виникнення)

    Старі борги — окремо. Потрібно для строків позовної давності і резерву сумнівних боргів.

    бухгалтер 1-2 дні
  17. Імпорт основних засобів і нарахованої амортизації
    бухгалтер 1-2 дні
  18. Defense: імпорт військових частин (А-номери, польова пошта, реквізити)
    розробник 0.5 дня → довідник
  19. Defense: імпорт історії оборонних контрактів (ID, ЦО, статус)
    розробник 1 день → довідник
  20. Перевірка trial balance Odoo проти trial balance 1С на дату cutover

    Допустима різниця — 0 копійок. Все інше — копати, де помилка.

    бухгалтер 1-2 дні
  21. Reconciliation report за ключовими рахунками з підписом головбуха
    бухгалтер 1 день
  22. Документація ETL-скриптів для повторюваного запуску у cutover

    У cutover ці скрипти запустяться ще раз з фінальними даними. Мають бути ідемпотентні.

    розробник 1 день

Контекст: чому ця фаза критична

Міграція даних — це не «технічна задача розробника». Це юридична операція: вхідне сальдо нової системи має точно відповідати вихідному старої, інакше перша ж декларація з ПДВ не зійдеться, а податкова отримає привід для перевірки. Якщо trial balance у Odoo відрізняється від 1С хоч на одну копійку — копати треба, поки не знайдете причину.

Тиждень 1: extract і очищення

Це найдовша і найнудніша частина. Бухгалтер сидить з виписками і чистить. Без терпіння тут — пізніше будуть дубльовані контрагенти, з якими сальдо ніколи не зійдеться.

Тиждень 2: imports і opening balances

Імпорти у тестовий Odoo. Звірка trial balance. Якщо щось не зійшлося — берете проблемний рахунок і копаєте його окремо. Найчастіше причина — у валютних курсах на cutover-дату або в неправильному маппінгу субрахунків.

Тиждень 3: документація і signoff

ETL-скрипти треба зберегти і задокументувати — у cutover вони запустяться ще раз з фінальними даними станом на h-0. Reconciliation report — це юридичний документ, його підписує головбух.

Пастка: не довіряйте «середній собівартості» з 1С. Часто там вона порахована криво, і під час міграції в Odoo вилазять «привидні» нестачі. Перерахуйте середньозважену вручну на топ-50 SKU.

Пастка: не імпортуйте всю історію документів. Імпортуйте тільки залишки і відкриті позиції. Архів старих документів живе в 1С — туди й звертайтеся за потреби.

Результати фази (deliverables)

  • Cleansed master data (партнери, продукти, склади)
  • ETL-скрипти для повторного запуску
  • Opening balance journal entry — звірений з trial balance старої системи
  • Reconciliation report за рахунками 361, 631, 311, 641, 201-26
  • Список відкритих ПН і РК на дату cutover