Тригери на основі вебхуків LiqPay в n8n: автоматична реакція бізнесу на кожен платіж
Клієнт оплатив замовлення о 23:40. Менеджер побачив це наступного ранку, відвантаження зрушило на добу, а клієнт уже написав у підтримку «де моя оплата?». Знайома картина для бізнесу, де статус платежу перевіряють вручну — заходять в особистий кабінет LiqPay, звіряють із CRM, переносять дані в таблицю. Кожен такий цикл — це затримка, людська помилка і витрачений робочий час.
Проблема: розрив між подією та дією
Проблема не в LiqPay і не в команді. Проблема в тому, що між подією «гроші надійшли» і дією «почати виконання замовлення» немає автоматичного містка. LiqPay уже знає про кожну транзакцію в реальному часі — він надсилає server-to-server callback одразу після зміни статусу. Питання лише в тому, хто цей сигнал прийме й що з ним зробить.
Рішення: webhook-тригер у n8n
Рішення — webhook-тригер у n8n, який перетворює кожну подію оплати на ланцюжок дій без участі людини. Підтверджений платіж автоматично змінює статус замовлення, повідомляє менеджера, оновлює таблицю обліку й запускає відвантаження. Повернення коштів — створює тікет і сповіщає бухгалтерію. Усе це відбувається за секунди після того, як клієнт натиснув «Оплатити».
Як це працює на практиці
- Точка входу. У n8n створюємо Webhook-ноду з методом POST і фіксованим URL. Цю адресу вказуємо як
server_urlу параметрах платежу LiqPay. Тепер кожна зміна статусу транзакції приходить прямо у ваш workflow. - Перевірка підпису — критичний крок. LiqPay надсилає поля
data(base64) іsignature. Підпис рахується якbase64(sha1(private_key + data + private_key)). У Function-ноді відтворюємо цей хеш і порівнюємо з отриманим signature. Якщо вони не збігаються — запит відхиляємо. Без цієї перевірки будь-хто може підробити «успішну оплату». - Розбір даних. Декодуємо
dataз base64 у JSON і дістаємо ключові поля:status(success, reversed, subscribed),order_id,amount,currency. - Маршрутизація через Switch. Нода Switch скеровує потік за значенням
status: success → оновлення замовлення й сповіщення; reversed → обробка повернення; subscribed → активація підписки. - Дії. Через HTTP Request оновлюємо статус у вашій CRM або OpenCart, ноди Telegram чи Email сповіщають менеджера, Google Sheets дописує рядок для обліку — усе паралельно й автоматично.
- Відповідь LiqPay. Webhook-нода повертає HTTP 200 — це підтверджує отримання callback і запобігає повторним надсиланням.
Бізнес-результат
Час від оплати до старту виконання падає з годин до секунд. Зникає ручна звірка кабінету LiqPay з CRM — а разом із нею і помилки переносу даних. Менеджер дізнається про оплату миттєво, у звичному Telegram, а не під час ранкової перевірки пошти. На масштабі сотень замовлень на місяць це вивільняє десятки годин роботи й прибирає клас задач, які раніше потребували постійної уваги людини.
Ми в MaxiMoruM будуємо такі інтеграції під конкретні процеси бізнесу — з перевіркою підпису, обробкою повторних callback, логуванням збоїв і повторними спробами, щоб жодна подія оплати не загубилася. Стек, який давно довів надійність у проді: n8n, Laravel, OpenCart, LiqPay.
Хочете, щоб ваші платежі запускали процеси самі? Обговоримо ваш сценарій автоматизації — maximorum.com