HelomiWIKI

NovaPay

Інтеграція з NovaPay тягне виписку бізнес-кабінету NovaPay (рахунки ФОП чи ТОВ) у «Фінанси» і щодня завантажує реєстри накладених платежів: за номером ТТН оплата стає доходом по угоді, а комісія NovaPay — витратою з підставою «угода». Виплата реєстру на рахунок проводиться переказом з транзитного гаманця, тож дохід не подвоюється. Кожен кабінет NovaPay — окремий акаунт зі своїми ключами, гаманцем і налаштуваннями; токен кабінету одноразовий, і CRM оновлює його сама. Повторний імпорт дублів не створює.

16 хвОновлено 22.10.2026
Markdown для ШІ
На цій сторінці

Можливості

  • Скільки завгодно акаунтів NovaPay: у кожного ФОП чи ТОВ — свої логін, Refresh Token і сертифікат, свій гаманець, свій журнал подій.
  • Виписка кабінету у «Фінанси»: кнопкою за період і автоматично кроком ШІ Марії Йосипівни; беруться лише проведені платежі.
  • «Автоматичні платежі» як у KeepinCRM: проводити платежі (дохід — до угоди за ТТН чи номером у призначенні, інакше у вибрану категорію; витрата — у свою категорію) або не проводити (усе у «Вхідні» на ручний розбір).
  • Реєстри NovaPay: щодня після 9:00 за вчора — ТТН, сума, комісія, ПІБ клієнта, номер замовлення; оплата — дохід по угоді з цією ТТН, комісія — витрата з підставою «угода» (угоди за останні 60 днів, число налаштовується).
  • Виплата реєстру на рахунок («Переказ коштів по платежам, прийнятим від населення … згідно реєстру № …») — переказ з транзитного гаманця, не другий дохід; реєстру ще нема — рядок чекає у «Вхідних» і стає переказом сам.
  • Залишок рахунку з кабінету — у «Стані роботи» поруч з балансом гаманця.
  • Правила імпорту, звірка з уже внесеними операціями, «Вхідні» для решти — той самий шлях, що в Monobank і ПриватБанку.
  • Без дублів: повтор за ключем платежу пропускається, рядок, що вже приїхав з KeepinCRM того самого дня й суми, — теж.

1Налаштування

Підключає адміністратор. Дорога: «Інтеграції» (головне меню) → «Оплати» → картка «NovaPay».

Ключі. У бізнес-кабінеті NovaPay: СистемаНалаштуванняAPI«Система → Налаштування → API» — там видаються логін, Refresh Token (Токен) і Public Certificate (Сертифікат). У картці, вкладка «Підключення»: «Логін» → «Ввести» → «Зберегти ключ»; так само «Refresh-токен» і «Сертифікат (PEM)» (сертифікат вставляється повністю, у багаторядкове поле). «Перевірити» заходить у кабінет і показує «кабінет NovaPay: рахунків N».

Важливо про токен: він одноразовий. Кожен вхід у кабінет повертає новий токен і сертифікат, старі одразу недійсні — CRM зберігає нову пару сама, тож у картці після «Перевірити» видно вже інші останні символи. Один кабінет NovaPay підключається лише до однієї системи: щойно ви згенерували токен і ввели його тут, KeepinCRM цим кабінетом більше не користується (і навпаки — новий токен у KeepinCRM зламає доступ CRM; тоді згенеруйте ще один і впишіть сюди). Ключі зберігаються зашифрованими й назад не показуються.

Акаунти. Основна картка — теж акаунт («Основний»; назву можна змінити в рядку «Назва акаунта»). Ще один кабінет (другий ФОП, ТОВ) — «+» у правому нижньому куті картки → «Назва» і три ключі → «Додати акаунт». Акаунти перемикаються під шапкою картки; кожен має свої ключі (чужих не позичає), гаманець і налаштування.

Вкладка «Налаштування» акаунта. Угорі — «Стан акаунта» (ключі, рахунок у NovaPay з балансом, гаманець, останній імпорт, реєстри з останніми рядками) і кнопка «Оновити рахунки» (вхід у кабінет і свіжий список рахунків з балансами). Нижче — форма; змінює її адміністратор, решта бачить без збереження. Зберегли — імпорт і крок Марії беруть нове одразу.

«Стан роботи» на вкладці «Підключення»: рядок «Рахунок у NovaPay» — рахунок, залишок у банку на час останнього імпорту й баланс гаманця: «… · залишок у банку 25 850,81 ₴ (20.10 01:10), у гаманці 25 850,81 ₴». Не збігаються — дописано «не збігається: перевірте «Вхідні» і стартовий залишок» (розділ 3б); банк залишку не віддав — «залишок: банк не віддає — введіть його в картці гаманця».

ПолеЩо робитьТипово
«Рахунок у NovaPay»з якого рахунку береться виписка; порожньо — усі активні гривневі рахунки кабінетуусі гривневі
«Гаманець у «Фінансах»»куди лягають операції випискигаманець акаунта (створиться; основна картка — «NovaPay»)
«Хто бачить операції рахунку»розділ 5усі з доступом до «Фінансів»
«Тягнути виписку автоматично (крок ШІ Марії)»автоімпорт цього акаунтатак
«Що робити з новими платежами»розділ 2проводити
«Дохід…», «Приєднати дохід до угоди…», «Категорія доходу без угоди»розділ 2так · усе разом · у «Вхідні»
«Витрата…», «Категорія витрати»розділ 2ні · у «Вхідні»
«Скільки останніх днів виписки перечитувати щоразу»вікно автоімпорту, 1–313
«Не заносити операції, старші за дату»нижня межа автоімпортубез межі
«Завантажувати реєстри NovaPay», «Проводити оплати як дохід…», «Проводити комісію…», «Гаманець для оплат і комісій з реєстру», «Категорія комісії», «Шукати угоди… за останні днів»розділ 3ні · ні · ні · транзитний · «Комісія NovaPay» · 60

Автоімпорт тягне лише увімкнені акаунти (перемикач «Інтеграція» на вкладці «Підключення»). Раніше виписку NovaPay тягнув старий синк Марії з ключів сервера, хоч би який був перемикач; щоб вона не зупинилася мовчки, основна картка з ключами, яку ніхто ніколи не вимикав, один раз увімкнулася сама — у журналі подій картки є запис «увімкнено автоматично». Вимкнете — більше сама не ввімкнеться. Ключі, що жили в старому синку чи в .env сервера, після першого входу переїжджають у картку (запис «ключі NovaPay перенесено в картку»).

2Автоматичні платежі

Поле «Що робити з новими платежами»:

  • Проводити платежі. Кожен рядок спершу проходить правила імпорту (НалаштуванняФінансиПравила імпорту«Налаштування → Фінанси → Правила імпорту») і звірку з уже внесеними операціями. Далі дохід: якщо «Дохід: проводити надходження» увімкнено, CRM шукає несплачену угоду за призначенням платежу — «Приєднати дохід до угоди»: «ТТН» (номер накладної в призначенні, як у накладеному платежі), «номер угоди у призначенні» («№50000123», «sg-50000123», «угода 50000123»), «номер рахунку (документа)» («РФ-ZK-2026-0012»), «усе разом» або «не приєднувати». Знайшли — рядок одразу стає оплатою по угоді. Не знайшли — операція з «Категорією доходу без угоди» проводиться без перевірки; категорія порожня — рядок у «Вхідні» з підказкою. Витрата: «Витрата: проводити списання» і «Категорія витрати» — так само; вимкнено — у «Вхідні».
  • Не проводити платежі. Усі рядки заводяться у «Вхідні» (ФінансиЗвірка«Фінанси → Звірка») на ручний розбір; правила імпорту діють і тут.

У «Вхідних» рядок відкривається, у полі «Угода (№)» вписується номер з картки угоди → «Так, усе вірно»; «Запам'ятати правило» створює правило імпорту з цього рядка. Докладно — стаття Фінанси, розділи 7 і 7а.

3Реєстри NovaPay

Реєстр переказів накладеного платежу — список оплат за доставками: назва реєстру, дата, номер ТТН, сума переказу, комісія, ПІБ клієнта, номер замовлення. Увімкніть «Завантажувати реєстри NovaPay» — крок Марії щодня після 9:00 за Києвом замовляє в кабінеті реєстр за вчора по кожному підприємству акаунта, чекає, доки NovaPay підготує файл (іноді до наступного кроку), і заносить рядки у список акаунта (повтор того самого рядка не дублюється). Завантажені рядки видно у «Стані акаунта».

Файл реєстру NovaPay (CSV) має колонки «Дата перерахунку коштів», «Номер реєстру» (BO019263634), «Сума принятих коштів» (скільки заплатив клієнт), «Сума утриманої винагороди» (комісія NovaPay, 0,5 %), «Сума перерахованих коштів», «ПІБ Покупця», «№ ЕН НП», «Номер замовлення». Один реєстр — одна виплата на рахунок (розділ 3а).

Проведення (кожне окремо вмикається):

  • «Проводити оплати як дохід по угоді з цією ТТН» — угода, створена за останні N днів («Шукати угоди… за останні днів», типово 60), отримує дохід на «Суму принятих коштів». Одна посилка на кілька угод (одна ТТН) — сума розкладається: кожна угода, від старшої, отримує свій несплачений залишок (у рядку позначка «одна посилка на угоди …»). Угоду вже сплачено повністю — дохід не дублюється («угоду вже сплачено»). Угоду з ТТН не знайдено — дохід без угоди лягає у «Вхідні» (ФінансиЗвірка«Фінанси → Звірка») з поясненням: впишіть «Угода (№)» і «Так, усе вірно». Гроші ж прийшли — так гаманець реєстрів сходиться з виплатою.
  • «Проводити комісію як витрату по угоді з цією ТТН» — витрата на «Суму утриманої винагороди» з категорією «Категорія комісії» (типово «Комісія NovaPay», створюється) з підставою «угода» — як комісія майданчика: бізнес і юрособа — угоди, а «Сплачено» угоди вона не зменшує (з 20.10; раніше угода лишалась «винною» ці 0,5 %).

Обидві операції лягають у «Гаманець для оплат і комісій з реєстру» — типово транзитний «NovaPay: накладені платежі» (тип «Транзитний»): його баланс = скільки NovaPay ще має перерахувати. Після виплати (розділ 3а) він повертається до нуля.

Межа з KeepinCRM. До 14.10 виплати NovaPay заносив KeepinCRM — доходом «Переказ коштів по платежам…» без угод. Рядки реєстру, чию виплату вже вніс KeepinCRM (або людина провела рядок «Вхідних» доходом), не проводяться: позначка «виплату реєстру № … уже внесено доходом (KeepinCRM) — тут не проводиться». Інакше той самий дохід був би двічі.

3аВиплати накладених платежів з виписки

NovaPay перераховує зібрані накладені платежі на рахунок одним платежем на реєстр: «Переказ коштів по платежам, прийнятим від населення за товари/послуги згідно реєстру № 19263634 від 17.10.2026 …». Сума — «Сума перерахованих коштів» усіх рядків цього реєстру.

  • Реєстри й «Проводити оплати як дохід» увімкнено. Виплата — переказ з гаманця реєстрів у гаманець рахунку: дві операції без категорії (у гаманці рахунку надходження, у транзитному — списання), у звітах це не дохід і не витрата. Дохід бізнесу — лише рядки реєстру по угодах. Номер реєстру з призначення шукається серед завантажених рядків реєстру.
  • Реєстру ще нема (виплата прийшла сьогодні, реєстр за день буде завтра після 9:00) — виплата лягає у «Вхідні» з підказкою «виплата накладених платежів: реєстру № … ще нема — щойно він завантажиться…». Нічого робити не треба: щойно реєстр завантажиться, рядок сам стане переказом (крок Марії, кнопка «Завантажити реєстри» чи «Імпортувати виписку»). Якщо реєстр дня завантажився без цієї виплати, крок Марії після 9:00 перезамовляє його (не частіше раз на 6 годин, 3 дні). Провели такий рядок доходом самі — рядки його реєстру по угодах уже не проводяться (дохід один).
  • Реєстри вимкнено. Виплата — надходження у «Вхідні», як раніше (до угоди за «№ …» у призначенні вона не чіпляється: це номер реєстру, а не угоди).

У підсумку імпорту видно «переказів N», виплатпереказ з реєстру N«виплат → переказ з реєстру N», «виплат чекають реєстр N»; сума виплати не збіглася з реєстром — «розбіжність з реєстром: …» (перевірте рядки реєстру в «Стані акаунта»).

3бЗалишок рахунку і стартовий залишок гаманця

Кожен імпорт виписки читає залишок рахунку в кабінеті (GetAccountRest) — він у «Стані роботи» поруч з балансом гаманця. Баланс гаманця = стартовий залишок + усі операції гаманця. Щоб він дорівнював банку, стартовий залишок виставляється один раз: стартовий = залишок у банку − поточний баланс без стартового (ФінансиГаманці«Фінанси → Гаманці» → гаманець → «Стартовий залишок»; або скриптом розробника, тоді в журналі подій акаунта — стартовий залишок гаманця …: старенове«стартовий залишок гаманця …: старе → нове»). Далі баланс сходиться сам, поки виписка тягнеться щодня (надходження й списання; списання без категорії — у «Вхідних», але в балансі вже враховані).

Стартовий може бути від'ємним: KeepinCRM до 14.10 заносив у гаманець лише виплати накладених платежів, а виведення з рахунку (на картку, готівкою) — ні; від'ємний стартовий і є цією різницею. Історію до 14.10 не переносимо — «Не заносити операції, старші за дату» стоїть на 14.10.

4Імпорт виписки й реєстрів кнопкою

  1. «Фінанси» → «Операції» → «Імпорт виписки» (кнопку бачать ті, хто може проводити платежі).
  2. Блок «NovaPay»: «Акаунт» (поле є, коли акаунтів більше одного), «Гаманець» («з налаштувань акаунта» або інший), «Від» і «До».
  3. «Імпортувати виписку NovaPay» — проведені платежі рахунку (чи всіх гривневих рахунків) за дні; підсумок: «нових N, за правилами N, прив'язано до угод N, звірено з внесеними N, у «Вхідні» N, пропущено N, уже є з KeepinCRM N».
  4. «Завантажити реєстри» — реєстри за ті самі дні: «рядків N нових з M, угод знайдено N, доходів N, комісій N»; «файлів ще готується N» — NovaPay ще готує файл, його підтягне наступний крок Марії (або повторне натискання).
  5. «Перекласти з реєстру Марії» — старий шлях: рядки, які старий синк Марії поклав у свій реєстр до переходу на акаунти.

Загальний вимикач автоімпорту — пульт Марії → «Налаштування» → «Виписки банків» → «Заносити виписку й реєстри NovaPay у «Фінанси»». Операції підписані акаунтом: журнал подій картки показує, хто й коли імпортував.

5Хто бачить операції рахунку

Доступ іде через гаманець акаунта: поле «Хто бачить операції рахунку» — це «Доступ до гаманця» у «Фінансах» (порожньо — усі з доступом до розділу). Хто не має гаманця, не бачить ні його операцій, ні балансу. Реєстрові оплати й комісії лежать у гаманці реєстрів — доступ до них задається в ФінансиГаманці«Фінанси → Гаманці» окремо.

Можливі помилки

Що ви бачитеЧомуЩо зробити
«NovaPay не налаштовано: введіть логін, Refresh Token і сертифікат…»в акаунта нема одного з трьох ключів«Підключення» → «Ввести» кожен ключ
«NovaPay UserAuthenticationJWT: … Invalid token»токен уже використано деінде (KeepinCRM чи другий сервер) або введено з помилкоюзгенеруйте новий токен і сертифікат у кабінеті NovaPay, впишіть у картку
«NovaPay UserAuthenticationJWT: … Refresh token does not apply to login — токен одноразовий: введіть нову пару…»токен уже використано (той самий кабінет підключено ще десь, у кабінет входив другий процес чи скрипт) або токен не від цього логіна й сертифіката (ввели новий токен, а сертифікат лишили старий)згенеруйте в кабінеті NovaPay нову пару і введіть і токен, і сертифікат разом; якщо повторюється — подивіться журнал картки: запис «нову пару ключів NovaPay не вдалося записати в базу» означає, що база була зайнята в мить ротації (пара до запису в базу лежить у пам'яті й у зашифрованому файлі поруч із базою, тож наступний вхід її підхопить сам; нова з кабінету потрібна, лише якщо помилка не минає)
«NovaPay: рахунок із налаштувань акаунта кабінет не показує — оберіть інший»рахунок закрито або це інший кабінет«Оновити рахунки», оберіть рахунок
«NovaPay: дата «від» пізніша за «до»»переплутано датипоправте період
«у реєстрі не знайдено колонку суми (колонки: …)»NovaPay змінив формат файлу реєструнапишіть розробнику з назвами колонок із повідомлення
«реєстр … так і не підготувався в NovaPay»кабінет не віддав файл за 3 днізамовте ще раз кнопкою «Завантажити реєстри»
Оплата з реєстру не стала доходом по угодіугоду вже сплачено повністюу «Стані акаунта» рядок «угоду вже сплачено»; перевірте, чим її сплачено
Дохід з реєстру у «Вхідних»: «угоду з цією ТТН не знайдено»угода старша за N днів, без ТТН або ТТН записано інакшеу «Вхідних» впишіть «Угода (№)» → «Так, усе вірно»
«виплату реєстру № … уже внесено доходом (KeepinCRM) — тут не проводиться»виплату цього реєстру вже вніс KeepinCRM (до 14.10) чи людина провела її доходомнічого — дохід один; по угодах проведіть вручну, лише якщо приберете той дохід
Виплата у «Вхідних» з підказкою «реєстру № … ще нема»реєстр за день NovaPay віддає наступного дня після 9:00нічого — рядок стане переказом сам, щойно реєстр завантажиться
«розбіжність з реєстром: виплата X, за реєстром Y»у реєстрі не всі рядки (NovaPay дописав пізніше) або змінився формат«Завантажити реєстри» за той день; не допомогло — напишіть розробнику
У «Стані роботи» «залишок: банк не віддає — введіть його в картці гаманця»кабінет не повернув залишок рахункувпишіть «Стартовий залишок» у картці гаманця так, щоб баланс = залишку в кабінеті NovaPay
«… у гаманці X — не збігається: перевірте «Вхідні» і стартовий залишок»виписку тягнули не за всі дні або стартовий залишок не задано«Імпортувати виписку» за пропущені дні; стартовий = банк − баланс без стартового (розділ 3б)
Автоімпорт не тягне акаунтакаунт вимкнено, без ключів або вимкнено «Тягнути виписку автоматично»увімкніть у картці

Для ШІ-співробітників

Картка describe_section("int-novapay") — поля імпорту, дії, приклади і довідники (novapay_accounts — акаунти, purses — гаманці); доступ — розділ «Фінанси» у «Доступах» ШІ, імпорт — ще й «Фінанси: проводити й змінювати платежі». Ті самі маршрути й перевірки, що в людини; у журналі подій акаунта імпорт підписано ШІ.

  • novapay_import (values: kind, from, to; account, purse_id — за потреби) — виписка кабінету за дні через «Автоматичні платежі» акаунта; чекає підтвердження людини (вид bulk), повтор дублів не створює.
  • novapay_registers (values: kind, from, to) — реєстри накладених платежів за дні → рядки, дохід і комісія по угодах з ТТН; теж через кошик bulk.
  • Що не прив'язалось — finance_inbox; прив'язати дохід до угоди — finance_review з values={action: ok, deal_id: …} (картка finance, вид payments).

ШІ не може вводити чи читати ключі, змінювати «Автоматичні платежі» й реєстри — інструментів для цього нема, маршрут налаштувань ШІ відмовляє; це робить адміністратор у картці. Не імпортуйте без прохання людини, не повторюйте дію з pending_id і не вигадуйте kind — беріть з novapay_accounts у картці. Статтю ШІ читає інструментом help("int-novapay").

Цю саму статтю читають ШІ-співробітники Helomi: help("int-novapay")