OpenCart — третя за популярністю платформа для інтернет-магазинів в Україні з часткою ринку близько 9% та понад 17 000 активних магазинів. Якщо ви працюєте з накладеним платежем (а в Україні 50-60% онлайн-замовлень оплачуються саме так), кожне п'яте замовлення ризикує стати невикупом. Модуль BlackPost для OpenCart 3.x автоматизує перевірку покупців ще до відправки — і встановлюється за 5 хвилин.
У цій інструкції ми пройдемо весь шлях: від реєстрації на BlackPost до першої автоматичної перевірки. Покажемо кожне налаштування, пояснимо логіку роботи модуля та навчимо отримувати максимум від інтеграції.
Навіщо потрібен модуль перевірки покупців в OpenCart
Типовий сценарій власника інтернет-магазину на OpenCart: замовлення приходить, менеджер обробляє, формує ТТН, відправляє Новою Поштою. Через 7 днів посилка повертається — покупець не забрав. Результат: втрачені гроші за доставку (60-90 грн), заморожений товар на тижні, витрачений час менеджера. Помножте це на 15-25% невикупів і отримаєте суттєві щомісячні збитки.
Проблема в тому, що ручна перевірка покупців через сайт — це додатковий крок, який менеджери часто пропускають. Особливо в гарячі години, коли замовлення сиплються одне за одним. Потрібно скопіювати телефон, відкрити інший сайт, вставити, подивитись результат, повернутись до замовлення — і так для кожного покупця.
Модуль BlackPost для OpenCart вирішує цю проблему кардинально: перевірка відбувається автоматично при кожному новому замовленні. Без участі менеджера. Результат одразу видно в адмінці — кольоровий бейдж біля телефону покупця, коментар у замовленні, сповіщення в Telegram.
Проблеми ручної перевірки
- Людський фактор — менеджери забувають або не встигають перевіряти кожного покупця, особливо у пікові години
- Втрата часу — перемикання між вкладками, копіювання номерів, ручний запис результатів
- Відсутність історії — немає логу перевірок, неможливо аналізувати тренди
- Немає аналітики — ви не знаєте, скільки ризикових замовлень проходить непоміченими
- Відсутність зворотного зв'язку — не подаєте скарги після невикупу, не допомагаєте іншим продавцям
Що дає модуль
- Автоматизація — перевірка без участі людини при кожному замовленні
- Візуалізація — кольорові бейджі ризику прямо в списку замовлень
- Сповіщення — Telegram-алерт при ризиковому замовленні
- Аналітика — звіт по всіх перевірках з фільтрами
- Скарги — подача скарги в один клік прямо з OpenCart
- Кешування — повторна перевірка того самого покупця не витрачає API-ліміт
12 можливостей модуля BlackPost для OpenCart
Модуль BlackPost — це не простий «подивився скор і закрив». Це повноцінна система захисту, інтегрована в усі ключові точки адмінки OpenCart.
Авто-перевірка при замовленні
Кожне нове замовлення автоматично перевіряється через API BlackPost. Працює через подію OpenCart — не уповільнює checkout.
Бейдж ризику на замовленні
Кольоровий індикатор біля телефону покупця на сторінці замовлення: зелений (чистий), жовтий, оранжевий, червоний (критичний).
Кольорові рядки у списку
В загальному списку замовлень ризикові підсвічуються кольором: червоний фон для критичних, оранжевий для високого ризику.
Ручна перевірка
Кнопка «Перевірити» на сторінці замовлення для повторної або примусової перевірки покупця.
Масова перевірка
Кнопка Bulk Check на сторінці звітів — перевіряє всі непровірені замовлення одним кліком (до 50 за раз).
Telegram-сповіщення
При ризиковому замовленні — миттєве повідомлення в Telegram з деталями: номер, скор, кількість скарг.
Подача скарг
Кнопка «Скарга» прямо з замовлення. Форма з автозаповненим телефоном і TTН — відправка в базу BlackPost.
Авто-зміна статусу
Автоматично змінює статус ризикового замовлення на «На перевірці» або будь-який інший обраний статус.
Дашборд-віджет
Панель BlackPost на головній сторінці адмінки: кількість перевірок, знайдених та ризикових за сьогодні та тиждень.
Бейдж в email
Індикатор ризику вставляється в email-лист про нове замовлення. Бачите ризик навіть не відкриваючи адмінку.
Звіт і аналітика
Окрема сторінка звітів: всі перевірки з фільтрами (всі / ризикові / критичні / чисті), пагінація, статистика.
Історія перевірок
На сторінці кожного замовлення — блок з історією перевірок BlackPost: дати, скори, статуси.
Системні вимоги та підтримувані версії
| Компонент | Мінімальна версія | Рекомендовано |
|---|---|---|
| OpenCart | 3.0.2.0 | 3.0.3.2+ (або ocStore 3.x) |
| PHP | 7.2 | 7.4 або 8.1 |
| PHP-розширення | cURL, JSON, OpenSSL (зазвичай увімкнені за замовчуванням) | |
| MySQL | 5.7 | 8.0 |
| Обліковий запис BlackPost | Будь-який тариф (безкоштовний включно) | |
| API-ключ BlackPost | Генерується в особистому кабінеті → Налаштування → API | |
Перед встановленням модуля переконайтесь, що на вашому сервері увімкнено PHP-розширення cURL. Це можна перевірити на сторінці Система → Звіт → Інформація про PHP (або створивши файл з phpinfo()). Пошукайте секцію «curl» — вона повинна показувати «cURL support: enabled».
Крок 1: Реєстрація на BlackPost та отримання API-ключа
Перш за все потрібен обліковий запис BlackPost та API-ключ. Процес займає 2 хвилини.
Реєстрація
Перейдіть на blackpost.com.ua/register і заповніть форму: email, пароль, назва магазину, URL сайту. Підтвердіть email — вам прийде лист з посиланням.
Вхід в особистий кабінет
Після підтвердження email увійдіть на blackpost.com.ua/login. Ви потрапите на дашборд з основною статистикою та швидким пошуком.
Генерація API-ключа
Перейдіть до Налаштування → API ключі → Створити ключ. Дайте ключу зрозумілу назву (наприклад, «OpenCart — мій-магазин.com.ua»). Натисніть «Створити».
Скопіюйте ключ — він починається з bg_... та має 32+ символи. Збережіть його в надійному місці — після закриття діалогу повний ключ більше не буде показаний.
Вибір тарифу
Безкоштовний тариф включає 50 перевірок на день — достатньо для малих магазинів. Для більшого обсягу — Basic (299 грн/міс, 500/день) або Pro (599 грн/міс, без обмежень).
Крок 2: Встановлення модуля на OpenCart
Модуль поставляється як OCMOD-пакет — стандартний формат для OpenCart 3.x. Встановлення через адмінку, без FTP або SSH.
Спосіб 1: Встановлення через Extension Installer (рекомендовано)
Завантажте архів модуля
Скачайте файл blackpost.ocmod.zip з особистого кабінету BlackPost (розділ «Інтеграції → OpenCart») або зі сторінки модуля.
Відкрийте Extension Installer
В адмінці OpenCart перейдіть до Extensions → Installer (або Доповнення → Інсталятор в українській локалізації).
Завантажте ZIP-файл
Натисніть кнопку Upload і виберіть скачаний файл blackpost.ocmod.zip. Дочекайтесь повідомлення «Success: You have modified extensions!»
Оновіть модифікації
Перейдіть до Extensions → Modifications (або Доповнення → Модифікації) і натисніть кнопку Refresh (іконка 🔄) у верхньому правому куті.
Встановіть модуль
Перейдіть до Extensions → Extensions, у фільтрі типу оберіть Modules. Знайдіть «BlackPost — Перевірка покупців» у списку і натисніть зелену кнопку + (Install).
Відкрийте налаштування
Після встановлення натисніть кнопку Edit (іконка олівця) — відкриється сторінка налаштувань модуля.
Спосіб 2: Ручне встановлення через FTP
Якщо Extension Installer з якоїсь причини не працює (обмеження хостингу, проблеми з правами доступу), модуль можна встановити вручну.
Розпакуйте архів
Розпакуйте blackpost.ocmod.zip. Всередині — папка upload/ з такою структурою:
Завантажте файли через FTP
Скопіюйте вміст папки upload/ у кореневу директорію вашого OpenCart (зазвичай /public_html/). Структура папок повинна збігтися автоматично.
Встановіть модуль через адмінку
Зайдіть у Extensions → Extensions → Modules, знайдіть BlackPost, натисніть + (Install). Далі — Edit для налаштування.
oc_blackpost_cache та oc_blackpost_log) і реєструє 6 подій (events). Не видаляйте ці таблиці та події вручну — для видалення використовуйте кнопку Uninstall в адмінці.
Що відбувається при встановленні
Коли ви натискаєте кнопку Install, модуль виконує метод install(), який:
- Зберігає налаштування за замовчуванням — статус «Вимкнено», поріг ризику 50, кеш 24 години
- Реєструє 6 подій OpenCart:
blackpost_order_add— перевірка покупця при створенні замовленняblackpost_order_info— бейдж і кнопки на сторінці замовленняblackpost_order_list— кольорові рядки у списку замовленьblackpost_dashboard— віджет на головнійblackpost_email_alert— бейдж в email сповіщенні адмінуblackpost_email_add— бейдж в email підтвердженні замовлення
- Створює таблиці:
oc_blackpost_cache— кеш результатів перевірок (телефон, скор, рівень, JSON-відповідь)oc_blackpost_log— лог усіх перевірок (замовлення, телефон, скор, дія)
Крок 3: Налаштування модуля
Сторінка налаштувань модуля містить декілька блоків. Розберемо кожне поле.
Блок «Ліцензія»
Ключ ліцензії модуля (формат bp_lic_...). Отримайте його після придбання тарифу на blackpost.com.ua. Натисніть «Перевірити» для активації. Модуль перевіряє ліцензію щодня — якщо сервер BlackPost недоступний, діє grace period (модуль продовжує працювати).
Блок «Основні налаштування»
Увімкнення/вимкнення модуля. Поки статус «Вимкнено», жодні перевірки, бейджі та сповіщення не працюють.
Адреса сервісу BlackPost. Заповнена автоматично: https://blackpost.com.ua. Не змінюйте це поле, якщо не отримали окрему інструкцію від підтримки.
Ваш API-ключ BlackPost (формат bg_...). Вставте ключ, згенерований у особистому кабінеті. Натисніть «Тестувати» для перевірки з'єднання — повинні отримати «З'єднання успішне! Сервіс працює.»
Блок «Автоматична перевірка»
Чи перевіряти кожного покупця автоматично при створенні замовлення. Рекомендуємо: Так.
Мінімальний скор (0-100), при якому модуль вважає покупця ризиковим. Впливає на: додавання коментаря, зміну статусу, сповіщення. Значення 50 — оптимальний баланс. Зменшуйте до 30 для суворішого контролю, збільшуйте до 70, якщо отримуєте забагато помилкових спрацювань.
При ризиковому замовленні автоматично додає коментар в історію замовлення: «[!] BlackPost: Високий ризик (скор: 67/100, скарг: 5). Рекомендація: передоплата».
Блокує можливість оплати накладеним платежем для ризикових покупців (встановлює сесійну змінну). Обережно: ця опція може вплинути на UX покупця.
Автоматично змінює статус ризикового замовлення. Оберіть «Так» та вкажіть цільовий статус (наприклад, «На перевірці», «Потребує підтвердження»). Корисно для фільтрації — ви зможете бачити всі підозрілі замовлення в одному списку.
Скільки годин зберігати результат перевірки в локальному кеші. Повторна перевірка того самого телефону з кеша не витрачає API-ліміт. 24 години — оптимально.
Додає кольоровий індикатор ризику в email-листи про нові замовлення. Бачите ризик прямо в поштовій скриньці, навіть не відкриваючи адмінку.
Блок «Сповіщення»
Токен вашого Telegram-бота від @BotFather. Залиште порожнім, якщо не хочете отримувати Telegram-сповіщення.
ID чату або групи для сповіщень. Як дізнатись: надішліть будь-яке повідомлення боту, потім відкрийте api.telegram.org/bot{token}/getUpdates — знайдіть "chat":{"id":...
Як працює автоматична перевірка
Розуміння технічного процесу допоможе вам краще налаштувати модуль. Ось що відбувається при кожному новому замовленні:
Покупець оформляє замовлення
OpenCart створює запис у таблиці oc_order та повертає order_id.
Спрацьовує подія after
OpenCart викликає зареєстрований обробник blackpost_order_add. Модуль отримує order_id і завантажує дані замовлення (телефон, ім'я).
Нормалізація телефону
Номер приводиться до формату 380XXXXXXXXX. Підтримуються входи: +380971234567, 0971234567, 971234567, 380971234567.
Перевірка кешу
Модуль шукає результат для цього телефону в таблиці oc_blackpost_cache. Якщо є запис молодший за cache_hours — використовує його, не витрачаючи API-запит.
API-запит до BlackPost
Якщо в кеші немає — виконується HTTP GET-запит до /api/v1/check?phone=380...&name=... з API-ключем у заголовку X-API-Key. Таймаут: 8 секунд.
Обробка результату
Відповідь API містить: found (чи є в базі), risk_score (0-100), total_reports (кількість скарг), risk_level (рівень), recommendation (дія).
Реакція на ризик
Якщо risk_score ≥ threshold: додається коментар до замовлення, змінюється статус (якщо налаштовано), відправляється Telegram-алерт, блокується COD (якщо увімкнено).
Збереження в лог
Результат перевірки зберігається в oc_blackpost_log з прив'язкою до order_id. Відповідь API кешується в oc_blackpost_cache.
try/catch. Якщо API не відповідає, виникає помилка мережі або будь-який інший збій — замовлення проходить у звичайному режимі. Помилка логується в журнал OpenCart (error_log). Жодне замовлення не буде втрачене через модуль BlackPost.
Приклад API-відповіді
Що означають рівні ризику
| Скор | Рівень | Колір бейджа | Рекомендація |
|---|---|---|---|
| 0 | Чистий | 🟢 Зелений | Безпечно відправляти |
| 1-25 | Низький | 🟡 Жовтий | Обережно, перевірте деталі |
| 26-50 | Середній | 🟠 Оранжевий | Бажана передоплата |
| 51-75 | Високий | 🔴 Червоний | Потрібна передоплата! |
| 76-100 | Критичний | ⛔ Темно-червоний | НЕ відправляти! |
Бейджі ризику: де вони відображаються
Після встановлення модуля ви побачите кольорові індикатори ризику в трьох місцях адмінки OpenCart:
1. Сторінка замовлення (Order Info)
Біля номера телефону покупця з'являється бейдж з рівнем ризику та скором. Наприклад: ⚠ Високий (67) або ✓ Чистий.
Нижче — блок з історією перевірок та дві кнопки:
- 🔄 Перевірити — примусова повторна перевірка (ігнорує кеш)
- 🚩 Скарга — відкриває модальне вікно для подачі скарги
2. Список замовлень (Order List)
У загальному списку замовлень модуль додає:
- Числовий бейдж біля імені покупця — показує скор (наприклад, 82)
- Колір рядка — ризикові замовлення підсвічуються фоном:
- Скор ≥ 75: червоний фон (
rgba(220,53,69,0.08)) - Скор ≥ 50: оранжевий фон (
rgba(230,126,34,0.08)) - Скор ≥ 25: жовтий бейдж, без зміни фону
- Скор ≥ 75: червоний фон (
Завдяки цьому ви миттєво бачите, які замовлення потребують уваги, ще не відкриваючи їх.
3. Email-сповіщення
Якщо увімкнена опція «Бейдж в email», при створенні замовлення email-лист адміністратору міститиме:
- Кольоровий бейдж біля номера телефону
- При високому ризику (≥50) — додатковий блок попередження з червоним фоном: «⚠ BlackPost: Високий ризик (скарг: 5). Рекомендація: передоплата»
Подача скарг та звіти
Подача скарги на покупця
Після того як покупець не забрав посилку (або вчинив інші недобросовісні дії), ви можете подати скаргу прямо з OpenCart:
- Відкрийте замовлення, на яке хочете поскаржитись
- Натисніть кнопку 🚩 Скарга біля телефону покупця
- У модальному вікні заповніть:
- Телефон — заповнений автоматично
- TTН — номер накладної Нової Пошти (автозаповнення з поля tracking замовлення)
- Категорія — оберіть тип порушення:
- «Не забрав посилку» — найпоширеніший
- «Шахрайство» — підміна вмісту, обман
- «Зловживання поверненнями» — серійні повернення
- «Зміна адреси» — багаторазова зміна відділення
- «Інше»
- Коментар — деталі ситуації (опціонально)
- Натисніть «Надіслати скаргу»
Скаргу буде відправлено напряму через API BlackPost. TTН автоматично верифікується — система перевіряє статус посилки через API Нової Пошти і підтверджує, що покупець дійсно не забрав замовлення.
Сторінка звітів
Модуль має окрему сторінку звітів. Доступ: натисніть кнопку «📊 Звіт» у верхній панелі налаштувань модуля.
На сторінці звітів ви побачите:
- Загальну статистику — всього перевірок, знайдено в базі, ризикових
- Таблицю перевірок з фільтрами: Всі / Ризикові / Критичні / Чисті
- Деталі кожної перевірки — замовлення, телефон, ім'я, скор, статус замовлення, сума, дата
- Кнопку масової перевірки — «Перевірити непровірені» (Bulk Check) — обробляє до 50 замовлень без перевірки BlackPost
- Пагінацію — по 30 записів на сторінку
Налаштування Telegram-сповіщень
Telegram-сповіщення — одна з найкорисніших функцій модуля. Ви отримуєте миттєвий алерт при ризиковому замовленні, навіть якщо не перебуваєте за комп'ютером.
Покрокова інструкція
Створіть бота в Telegram
Відкрийте Telegram, знайдіть @BotFather, напишіть /newbot. Дайте ім'я (наприклад, «BlackPost Alerts»). Скопіюйте токен — рядок виду 123456789:ABCdefGHIjklMNO...
Дізнайтесь Chat ID
Варіант А (особистий чат): напишіть боту будь-яке повідомлення, потім відкрийте https://api.telegram.org/bot{ваш_токен}/getUpdates — знайдіть "chat":{"id":123456789}.
Варіант Б (група): додайте бота в групу, напишіть повідомлення, перевірте getUpdates — Chat ID буде від'ємним (наприклад, -1001234567890).
Вставте дані в налаштування модуля
В адмінці OpenCart → BlackPost → поле «Telegram Bot Token» — вставте токен. Поле «Telegram Chat ID» — вставте ID. Збережіть.
Формат повідомлень
При кожному ризиковому замовленні бот надсилає повідомлення:
Отримавши таке повідомлення, ви можете одразу зателефонувати покупцю для підтвердження або змінити умови оплати на передоплату.
Віджет на дашборді та аналітика
Модуль додає компактний віджет на головну сторінку адмінки OpenCart. Він показує:
- Сьогодні — кількість перевірок та ризикових замовлень за поточний день
- За тиждень — аналогічна статистика за останні 7 днів
Клік по віджету відкриває повну сторінку звітів. На сторінці налаштувань модуля також є блок зі статистикою за 30 днів: загальна кількість перевірок, знайдених у базі та ризикових.
Як використовувати аналітику
Відстежуйте ці метрики щотижня:
- % ризикових серед усіх перевірок — якщо він росте, ваш магазин може залучати більше проблемних покупців (перевірте рекламні канали)
- Кількість знайдених у базі — показує, наскільки база BlackPost покриває вашу аудиторію
- Кількість ваших скарг — чи не забуваєте подавати скарги після невикупів
Вирішення типових проблем
«Помилка з'єднання» при тестуванні API
Можливі причини:
- cURL не увімкнений — перевірте через
phpinfo(). Зверніться до хостинг-провайдера для увімкнення. - Фаєрвол блокує вихідні HTTP-запити — деякі хостинги блокують curl на порту 443. Спробуйте з панелі хостингу або зверніться в підтримку.
- Невірний API-ключ — перевірте, що ключ починається з
bg_і не містить зайвих пробілів. - SSL-помилка — модуль вимикає перевірку SSL-сертифіката (
CURLOPT_SSL_VERIFYPEER = false), але деякі хостинги мають додаткові обмеження.
Модуль встановлений, але бейджі не відображаються
- Переконайтесь, що статус модуля = Увімкнено
- Переконайтесь, що ліцензія активна (натисніть «Перевірити» біля ліцензійного ключа)
- Перевірте, чи є записи в таблиці
oc_blackpost_log(через phpMyAdmin або інший інструмент БД) - Переконайтесь, що події зареєстровані: Extensions → Events — повинно бути 6 подій з кодом
blackpost_* - Очистіть кеш модифікацій: Extensions → Modifications → Refresh
Замовлення не перевіряються автоматично
- Перевірте, що «Автоматична перевірка» = Так в налаштуваннях
- Переконайтесь, що замовлення містить номер телефону (поле
telephoneв таблиціoc_order) - Перевірте журнал помилок OpenCart: Система → Звіт → Журнал помилок — шукайте «BlackPost module error»
- Переконайтесь, що подія
blackpost_order_addприсутня в Extensions → Events
Помилка «Extension Installer: FTP needs to be enabled»
Деякі хостинги вимагають FTP для Extension Installer. Рішення:
- Увімкніть FTP в налаштуваннях OpenCart: Система → Налаштування → FTP (вкажіть дані FTP)
- Або використайте ручне встановлення через FTP (Спосіб 2 вище)
Telegram-сповіщення не приходять
- Переконайтесь, що Bot Token правильний — відкрийте
https://api.telegram.org/bot{token}/getMe— повинні побачити інформацію про бота - Переконайтесь, що Chat ID правильний — спробуйте відправити тестове повідомлення:
https://api.telegram.org/bot{token}/sendMessage?chat_id={id}&text=test - Якщо Chat ID групи — переконайтесь, що бот доданий до групи
- Сповіщення відправляються лише для ризикових замовлень (скор ≥ порогу)
Як видалити модуль
- Перейдіть до Extensions → Extensions → Modules
- Знайдіть BlackPost, натисніть червону кнопку - (Uninstall)
- Модуль автоматично видалить налаштування, події та таблиці БД
- Якщо потрібно видалити файли — видаліть через FTP або Extension Installer
Що ви отримуєте з модулем BlackPost
Модуль BlackPost для OpenCart — це повноцінна система захисту від невикупів, інтегрована в усі ключові точки адмінки. Ось повний перелік можливостей:
| Функція | Статус |
|---|---|
| Автоматична перевірка при замовленні | ✓ |
| Ризик-скоринг 0-100 (5 факторів) | ✓ |
| Кольоровий бейдж на замовленні | ✓ |
| Кольорові рядки у списку замовлень | ✓ |
| Масова перевірка (до 50 за раз) | ✓ Pro |
| Подача скарг прямо з OpenCart | ✓ |
| Telegram-сповіщення | ✓ |
| Бейдж в email-сповіщенні | ✓ |
| Дашборд-віджет | ✓ |
| Авто-зміна статусу ризикових | ✓ |
| Сторінка звітів з фільтрами | ✓ |
| Історія перевірок | ✓ |
| Кешування (налаштовуване) | ✓ |
| Верифікація TTН через API | ✓ |
| База записів: 355 000+ | ✓ |
Часті запитання
after — перевірка відбувається ПІСЛЯ створення замовлення, тому покупець не помічає затримки. API-запит займає 100-300 мс, а результат кешується на 24 години.
Готові захистити свій магазин?
Зареєструйтесь на BlackPost, отримайте API-ключ та встановіть модуль за 5 хвилин. 355 000+ записів у базі. Безкоштовний тариф для старту.
Зареєструватись безкоштовно Завантажити модуль