> Усі статті WIKI Helomi: /wiki/llms.txt

# RozetkaPay

Інтеграція з RozetkaPay тягне оплати покупців у «Фінанси» без людини: кожна оплата стає доходом по угоді за номером замовлення, комісія RozetkaPay видно в кожному платежі, повернення — витратою по угоді. Платежі приходять двома шляхами: звіт транзакцій API кожні 30 хвилин і миттєвий вебхук з підписом. Якщо дохід угоди вже нарахувало правило каналу (Prom, Rozetka), другого доходу не буде — угода лише позначається «оплачено через RozetkaPay». Повтор того самого платежу (вебхук і звіт, повторний вебхук) нічого не дублює.

## Можливості
- Картка з логіном і паролем (секретом) мерчанта RozetkaPay — зашифровано, назад у браузер не віддається.
- «Перевірити» — запит до API RozetkaPay: ключі прийнято чи ні; після вдалої перевірки картка вмикається сама.
- Автоімпорт зі звіту транзакцій API кожні 30 хвилин за останні 3 дні (число налаштовується, до 14) і кнопка «Підтягнути зараз».
- Вебхук: адреса з секретом для `callback_url`, перевірка підпису `X-ROZETKAPAY-SIGNATURE`, платіж у журналі за секунди.
- Дохід по угоді за номером замовлення (Prom, Rozetka, Kasta, Епіцентр, сайт — поле номера замовлення або назва угоди; номер
  угоди чи рахунку в описі платежу).
- Один дохід на угоду: нарахування правила каналу, накладений платіж чи оплата вручну — уже дохід, RozetkaPay його не дублює.
- Комісія RozetkaPay з даних платежу — витрата з підставою «угода» (або з виплати, якщо так рахує транзит каналу).
- Повернення покупцям — витрата по угоді; без знайденої оплати — у «Вхідні» на перевірку.
- Останні платежі з угодою й тим, що проведено, — у вкладці «Налаштування» картки; кожен імпорт і вебхук — у журналі подій картки.

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

1. Вкладка «Підключення»: «Логін» → «Ввести» → «Зберегти ключ»; так само «Пароль» (секрет API). Де їх узяти — §2.
2. «Перевірити». Відповідь «ключі прийнято (мерчант: activated)» — готово: картка вмикається сама (якщо її ніхто раніше не
   вимикав), і за 5–30 хвилин перший звіт принесе платежі останніх 3 днів. «RozetkaPay не прийняв ключі» — логін чи пароль не ті.
3. Вкладка «Налаштування» (необов'язково):
   - **Гаманець у «Фінансах»** — порожньо: «Транзит · RozetkaPay (Prom, Rozetka)» (той самий транзит, куди правила каналів Prom і
     Rozetka кладуть продажі, а виплата «ТОВ РОЗЕТКА ПЕЙ» з виписки Monobank знімає гроші переказом). Нема такого — створиться
     транзитний «RozetkaPay: платежі». Транзит — бо оплата покупця через RozetkaPay — це гроші, які RozetkaPay винен вам до виплати.
   - **Категорія доходу** — порожньо: категорія доходу правила каналу на цьому транзиті або «Продаж товарів».
   - **Комісія RozetkaPay з платежу** — §5; **Категорія комісії** — порожньо: «Комісія RozetkaPay».
   - **Проводити повернення покупцям** — §6.
   - **Тягнути платежі зі звіту автоматично**, **Скільки останніх днів звіту перечитувати** (1–14), **Не заносити платежі, старші за дату**.
   - **Приймати вебхуки RozetkaPay** — адреса вебхука у блоці «Стан акаунта» (кнопка копіювання).
   - «Зберегти».

Кілька кабінетів RozetkaPay (різні юрособи) — «+» на картці: у кожного акаунта свої ключі, гаманець, налаштування і журнал.

## 2. Як узяти ключі в кабінеті RozetkaPay
- Кабінет мерчанта — business.rozetkapay.com (заявка, договір, підключення). Логін і пароль API надсилає RozetkaPay листом після
  підключення або показує в кабінеті в розділі інтеграцій / API; якщо їх там нема — попросіть у підтримці RozetkaPay «логін і
  пароль для API Gateway (Basic Auth)».
- Якщо у вас уже є старі ключі RozetkaPay `API_KEY` і `API_SECRET` (плагін сайту, KeyCRM, SalesDrive) — вони підходять: `API_KEY` —
  у «Логін», `API_SECRET` — у «Пароль».
- Пароль — той самий, яким RozetkaPay підписує вебхуки. Змінили пароль у кабінеті — змініть і в картці, інакше вебхуки
  відхилятимуться (§«Можливі помилки»).
- Оплати Пром-оплати й Rozetka (договір з «ТОВ РОЗЕТКА ПЕЙ») видно звітом лише під ключами мерчанта, на якого оформлено
  договір. Якщо звіт порожній, а оплати в кабінеті є — спитайте підтримку, чи бачать ці ключі ваші оплати Prom/Rozetka.

## 3. Звідки приходять платежі
- **Звіт транзакцій API** — кожні 30 хвилин (крок планувальника CRM) за останні 3 дні: успішні оплати (списання, платіж,
  підтвердження двостадійної оплати) і повернення. Звіт RozetkaPay віддає не більше 14 днів за запит і не старше 90 днів —
  CRM ділить період сама. «Підтягнути зараз» у вкладці «Налаштування» — те саме за 3 дні без очікування.
- **Вебхук** — RozetkaPay шле його на `callback_url` платежу. Тому миттєво приходять оплати, створені з адресою CRM (ваш сайт,
  посилання на оплату — вставте туди адресу з картки). Оплати, які створює Prom чи Rozetka, шлють вебхук їм, а не вам — їх
  приносить звіт за 30 хвилин. Холд (кошти лише заблоковано), скасування й невдалі оплати пропускаються.
- Вебхук і звіт про ту саму оплату дають один рядок (ключ — номер замовлення); повторний вебхук нічого не створює.

## 4. Що відбувається з платежем
1. **Угода** — за номером замовлення з платежу: поле номера замовлення каналу в угоді (Prom, Rozetka, Kasta, Епіцентр, ОЛХ,
   сайт), потім назва угоди (угоди маркетплейсів названі номером замовлення), потім номер угоди чи рахунку в описі платежу.
2. **Дохід уже є?** Якщо угоду вже сплачено іншим доходом — правило каналу нарахувало продаж у транзит, прийшов накладений
   платіж, оплату внесли вручну — другого доходу нема. Рядок платежу посилається на той дохід, а в угоді з'являється нотатка
   «Оплачено через RozetkaPay: … Дохід по угоді вже є в журналі (операція №…, правило каналу) — другого не проводимо».
3. **Інакше — дохід по угоді** в гаманець акаунта (типово транзит), категорія «Продаж товарів», дата — час оплати, контрагент —
   платник. «Сплачено» угоди росте; правило каналу, коли угода стане виграною, бачить сплачене й свого доходу не нараховує.
4. **Угода до дати переходу** (на транзиті каналів) — без доходу: такі гроші вже в стартовому рядку «Майданчик винен на 14.10».
5. **Угоду не знайдено** — дохід без угоди у «Вхідних» транзиту з підказкою «вкажіть «Угода (№)» і «Так, усе вірно»».
6. Виплата RozetkaPay на рахунок (з виписки Monobank) — переказ з транзиту за правилом імпорту, не другий дохід.

## 5. Комісія RozetkaPay
- **сама** (типово): на транзиті з увімкненим правилом каналу (Prom, Rozetka) винагороду вже проводить виплата — банк пише в
  призначенні «за виключ. винагор. N грн», і з транзиту йде витрата «Комісія RozetkaPay». Тоді комісія з платежу лише
  записується в рядок платежу для звірки — інакше вона рахувалась би двічі. На іншому гаманці — витрата по угоді з кожного платежу.
- **по кожному платежу** — завжди витрата з гаманця з підставою «угода» (бізнес і юрособа угоди; «Сплачено» не зменшує).
  На транзиті каналів це задвоїть винагороду з виплати — обирайте лише для свого гаманця.
- **не проводити** — комісія лише в рядку платежу.

## 6. Повернення
- Повернення оплати, дохід якої провела RozetkaPay-інтеграція, — витрата по угоді («Сплачено» зменшується).
- Дохід угоди нараховувало правило каналу — повернення нічого не проводить: дохід сторнує правило, коли угоду скасують (у
  угоді — нотатка про повернення).
- Оплати серед наших не знайдено — витрата у «Вхідні» на перевірку.
- Вимкнути — «Проводити повернення покупцям витратою по угоді» у «Налаштуваннях».

## 7. Оплата RozetkaPay в угоді й чеку
Тип оплати замовлення Rozetka приходить у поле угоди разом із замовленням ([Rozetka](int-rozetka.md)). Щоб фіскальний чек мав правильну назву безготівкової оплати, у картці Checkbox → «Пов'язані поля» → «Способи оплати» зіставте значення поля угоди з «Своя назва для Безготівки» — «Rozetkapay» ([Checkbox](int-checkbox.md)).

## Можливі помилки
| Що ви бачите | Чому | Що зробити |
| --- | --- | --- |
| «RozetkaPay не прийняв ключі (authorization_failed…)» | Логін чи пароль не ті, або ключі не для API Gateway | Перевірте §2; старі `API_KEY`/`API_SECRET` — у «Логін»/«Пароль» |
| «RozetkaPay: забагато запитів (429)» | Ліміт API | Нічого: наступний крок за 30 хв; «Підтягнути зараз» — за хвилину |
| Звіт «транзакцій 0», а оплати в кабінеті є | Ключі іншого мерчанта (проєкту), оплати Prom/Rozetka на іншому договорі | §2, останній пункт |
| У журналі події «вебхук: підпис … не збігся» | Пароль у картці не той, яким підписує RozetkaPay | Впишіть актуальний пароль; подія — не частіше разу на 10 хв |
| Дохід RozetkaPay у «Вхідних» без угоди | Номер замовлення з платежу не збігся з жодною угодою | Вкажіть «Угода (№)» → «Так, усе вірно» |
| Платіж є в рядках, а доходу нема | Угоду вже сплачено (дохід каналу) або угода до дати переходу | Так і має бути — дивіться «Проведено» в таблиці й нотатку в угоді |
| Картка вимкнена, платежі не йдуть | Перемикач «Інтеграція» вимкнено (вручну) | Увімкніть у «Підключенні» |

## Для ШІ-співробітників
ШІ бачить картку RozetkaPay і її журнал через інструменти інтеграцій, але ключів не вводить і не читає (ключі вписує людина). Платежі RozetkaPay у журналі «Фінансів» — з джерелом «RozetkaPay» (`source=rozetkapay`). Статтю ШІ читає інструментом `help("int-rozetkapay")`.

## Додаткова інформація
- Пов'язані статті: [Фінанси](finance.md) (правила каналів, транзит RozetkaPay, «Вхідні»), [Prom](int-prom.md),
  [Rozetka](int-rozetka.md), [Monobank](int-monobank.md) (виплата «РОЗЕТКА ПЕЙ» з виписки), [Checkbox](int-checkbox.md).
- Документація API RozetkaPay: docs.rozetkapay.com (звіти — «Reports API», вебхуки — «Callbacks»).
