010110101010110101010110101010110101010110101110101100110101100110101100110101100110101100001101011001101011001101011001101011001101011101100110101100110101100110101100110101100110011010101011010101011010101011010101011010101100110101100110101100110101100110101100110101010101101010101101010101101010101101010101101110010110110010110110010110110010110110010110</>{ }{ }</>
  • Доробки · OpenCart 3.x і 4.x

Програма лояльності: бонуси, які повертають покупця

Програма лояльності в інтернет-магазині — це набір правил, за якими покупець отримує вигоду за повернення: бали, накопичувальна знижка, рівні або кешбек. Робимо її на OpenCart окремим журналом операцій, а не полем «баланс» у картці клієнта: покупець першим ділом питає, звідки взялася цифра, і відповідати має історія, а не менеджер у чаті. Строк — 12–35 робочих днів. Суму називаємо після безкоштовного розбору моделі, бо дорого коштує тут не код, а відсоток маржі, який ви віддаєте надовго.

Подивитись, як це працює
Вартість
після безкоштовного аудиту
Гарантія
30 днів після підписання акта
Строк впровадження
12–35 робочих днів від затвердження правил
після безкоштовного аудиту
Вартість
30
Гарантія

днів після підписання акта

12–35
Строк впровадження

робочих днів від затвердження правил

відсоток нарахування, стелю списання, строк згорання, виключення
Що фіксуємо до розробки
54 302
Виміряний магазин із готовою інфраструктурою

товари і 635 категорій, перша відповідь 413,8 мс

частка нарахованих балів, які фактично списані
Головний показник після запуску
оплата за етапами, гарантійний строк 30 календарних днів
Умови
Кому підходить

Ситуації, у яких ця послуга дає результат

Ситуація 1 з 4

Товар купують циклічно

Косметика, корм, витратні матеріали, кава. Покупець і так повернеться через місяць — питання тільки, до вас чи до сусіда. Бали дають причину не шукати альтернативу: накопичене видно в кабінеті й воно прив'язане до вашого магазину. На короткому циклі покупки ця механіка окупається швидше за інші.

Розберемо вашу ситуацію на безкоштовному аудиті
Що входить

Повний перелік робіт і того, що ви отримуєте на виході

  • Нарахування за суму замовлення, за категорію, за перше замовлення або за дію — правила міняє менеджер в адмінці, без програміста
  • Списання в кошику зі стелею на частку чека: видно, скільки бонусів застосовано і скільки лишилось на балансі
  • Виключення з нарахування — акційні позиції й категорії з мінімальною націнкою, щоб знижка не лягала на знижку
  • Згорання балів із попереджувальним листом за узгоджений строк до дати, а не мовчазним обнуленням
  • Рівні або накопичувальна знижка з показом, скільки лишилося до наступного порогу
  • Баланс і історія операцій у кабінеті: кожен рядок із датою, номером замовлення й причиною
  • Нарахування після виконання замовлення і зняття при поверненні — програма не платить за скасовані й невикуплені
  • Ідентифікація покупця за телефоном або обліковим записом, зведення дублів у наявній базі
  • Сповіщення поштою чи в месенджері: нарахували, скоро згорить, доступна знижка
  • Звіт в адмінці: нараховано, списано, середній чек у замовленнях із бонусами проти звичайних
  • Сторінка правил програми людською мовою, з прикладом розрахунку на конкретній сумі
  • Умови роботи: оплата за етапами, гарантійний строк 30 календарних днів після приймання
Коли ця послуга не підходить

Що не входить у роботу — щоб не було сюрпризів на здачі

  • Рішення, скільки маржі віддавати — ми рахуємо варіанти, вибираєте ви
  • Інтеграція з офлайн-касою й фіскальним обладнанням — оцінюється окремо
  • Контент розсилок і самі акційні пропозиції
  • Юридичні тексти правил програми
  • Хостинг, домен, еквайринг

Безкоштовний розбір моделі лояльності

Перед розробкою відповідають на економічні питання, а не на технічні. Ми допомагаємо їх поставити й порахувати на вашій статистиці замовлень — до того, як з'явиться перший рядок коду.

Що міряємо

  • Поведінка покупців заразСкільки повертаються, з якою періодичністю, який середній чек у повторних замовленнях. Без цих цифр невідомо, чи є що збільшувати.
  • Механіка під вашу нішуБали, накопичувальна знижка, рівні або кешбек. Для циклічного попиту й для рідкісних дорогих покупок працюють різні моделі.
  • Вартість програмиСкільки маржі ви віддаєте при кожній механіці. Це рахується до розробки: змінити відсоток після запуску складніше, ніж здається.
  • Зв'язок з іншими каналамиЧи є розсилки, месенджери, офлайн-точка. Програму розумно будувати поверх наявної інфраструктури, а не паралельно їй.
  • Ідентифікація покупцяЗа чим ви його впізнаєте: реєстрація, телефон, вхід через обліковий запис. Без надійної ідентифікації бали нема кому нараховувати.
  • Що вимірюватиме успіхЯкі показники ви дивитиметеся через три місяці. Програма без заздалегідь визначених метрик перетворюється на постійну знижку.

Що ви отримуєте на руки

  • Розрахунок вартості програми за різними механіками на ваших цифрах.
  • Рекомендацію по моделі з обґрунтуванням, чому саме вона під вашу нішу.
  • Перелік показників, за якими через три місяці буде видно, окупається програма чи ні.
  • Розмову на 30–40 хвилин по документу.

Строк: 2–4 робочих дні

Чому це безкоштовно

Бо головний ризик тут не технічний, а економічний: програму легко запустити й важко згорнути. Кілька днів розрахунків рятують від роздачі маржі без віддачі.

Що далі

Після розбору — сума й строк по етапах, договір, рахунок, акт. Якщо з ваших цифр стане видно, що повторних покупок майже немає й лояльність нічого не змінить, ми так і скажемо.

Форма коротка: контакт і адреса сайту

Працюємо офіційно

Договір, акт і рахунок — на кожен проєкт, а не тільки на великий. Без документів у вас немає ні прав на роботу, ні підстави провести витрати.

  • Договір, акт і гарантія 30 днів

    На кожен проєкт письмовий договір: обсяг, строки, сума, порядок приймання. Після здачі — акт і рахунок, а далі 30 календарних днів гарантії: помилки з нашої вини усуваємо безоплатно. Усне з дзвінка дублюємо письмово того ж дня — домовленість, якої немає в тексті, не рахується.

  • ФОП і безготівковий розрахунок

    Виконавець — зареєстрований ФОП. Оплата на рахунок із закривними документами, які бухгалтерія проведе як витрати. Курс для гривневої оплати фіксується договором, а не з’ясовується постфактум.

  • Права й доступи — ваші

    Код, дизайн і матеріали переходять до вас після повної оплати. Домен, хостинг, репозиторій, аналітику й рекламні кабінети оформлюємо на вас — щоб сайт не залежав від підрядника. NDA підписуємо на запит, після завершення свої доступи видаляємо самі.

  • Портал клієнта замість переписки

    На час роботи ви отримуєте доступ до порталу: договори, рахунки, акти й стан проєкту в одному місці. Документи формуються з даних угоди, тому реквізити й суми в них не розходяться, а про оплати й дедлайни нагадує система, а не пам’ять менеджера.

  • Замовники з Європи

    Серед робіт — проєкти для Норвегії, Болгарії та Іспанії: болгарський магазин трьома мовами з кур’єрською доставкою, іспанський з оплатою карткою й переказом, норвезький сайт клініки. Це видно в портфоліо, а не тільки в описі.

  • Цифри, які можна перевірити

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

  • Спершу аудит, потім сума

    Прайсу на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» нічого не пояснює. Спершу безкоштовний розбір — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.

  • Кажемо «ні», коли не впевнені

    Якщо задача не наша, строк нереальний або послуга вам просто не потрібна — скажемо це першим листом, а не після передоплати. Гарантій позицій у пошуку не даємо: їх не дає ніхто, а обіцянка без механізму — це продаж, а не робота.

NDA підписуємо на запит. Після завершення співпраці наші доступи до ваших сервісів видаляємо самі й повідомляємо про це.

Що впливає на вартість

Чому дві однакові на вигляд задачі рахуються по-різному — і що саме ми міряємо на аудиті

  • МеханікаНакопичувальна знижка за групою клієнта — це налаштування й одна перевірка в кошику. Бали з нарахуванням, стелею списання, згоранням і рівнями — журнал операцій, черга завдань і десяток правил, кожне з яких перевіряється на поверненні.
  • Згорання й сповіщенняЦе фонові завдання: щодня перебрати баланси, знайти ті, що згорають, відправити лист, потім списати. Разом із листами в сервісі розсилок — окремий етап, а не галочка в налаштуваннях.
  • Стан бази покупцівЯкщо замовлення оформлюються без реєстрації, а один телефон записаний у трьох варіантах, спершу зводять дублі. Інакше бали розтікаються по клонах одного покупця.
  • Офлайн і зовнішні системиСписання на касі, у CRM або в обліковій системі — це вже двосторонній обмін зі своїм графіком синхронізації, і рахується він поза роботами по сайту.
Як проходить робота

Прозорі етапи з погодженням на кожному кроці

Загальний строк:12–35 днів

  1. Правила програми і ТЗ

    2–4 робочих дні

    Фіксуємо відсоток нарахування, стелю списання, строк згорання, виключення й спосіб ідентифікації покупця. Це документ, за яким приймається робота, і єдиний етап, де змінити цифри ще дешево.

  2. Дані і нарахування

    3–6 робочих днів

    Журнал операцій, прив'язка до замовлення й покупця, нарахування після переходу замовлення у виконане, зняття при поверненні. У кожної операції ключ ідемпотентності, тому повторна зміна статусу не нарахує вдруге.

  3. Списання в кошику

    2–5 робочих днів

    Поле застосування балів, стеля на частку чека, перерахунок при зміні складу кошика, поведінка при частковому поверненні. Перевіряємо на замовленні зі знижкою й платною доставкою — саме там вилазить подвійний облік.

  4. Рівні, згорання, сповіщення

    2–7 робочих днів

    Пороги рівнів або накопичувальної знижки, фонове завдання на згорання, листи про нарахування й попередження перед списанням через сервіс розсилок.

  5. Кабінет і звіти

    2–7 робочих днів

    Баланс, історія операцій із причиною по кожному рядку, сторінка правил із прикладом розрахунку. В адмінці — звіт по нарахованому, списаному й середньому чеку в замовленнях із бонусами.

  6. Прогін сценаріїв і передача

    1–6 робочих днів

    Наскрізні сценарії: замовлення з балами, часткове повернення, скасування, згорання, повторний виклик оплати. Далі прохід адмінки з менеджером і письмові правила для підтримки.

Не знайшли свій випадок?

Опишіть, як це влаштовано у вас, — відповімо, чи підходить «Програма лояльності в інтернет-магазині» і що це означає у вашій ситуації. Без брифу й без дзвінка: одне питання, одна відповідь.

Технології та інтеграції

На чому будуємо і з чим це з’єднується

Стек

  • OpenCart 3.x і 4.x — правила лояльності живуть окремим модулем, ядро не патчимо
  • окрема таблиця операцій замість поля «баланс» — інакше нема історії, звідки цифра
  • ключ ідемпотентності на операцію: повторна зміна статусу замовлення не нарахує вдруге
  • PHP і MySQL — бали в тій самій базі, що й замовлення: відкат транзакції забирає обидва записи
  • черга завдань на згорання й листи — залежить від cron хостингу, точність до хвилин, не до секунди
  • API сервісу розсилок — без згоди на розсилку тригер не спрацює, це вимога закону, а не обережність
  • події GA4 на замовлення з бонусами — GA4 дає тенденцію, підсумок зводимо з адмінкою
  • WooCommerce — та сама логіка на хуках; готові плагіни зазвичай не тримають часткові повернення

Інтеграції

  • eSputnik
  • SMTP
  • SMS-шлюз
  • Telegram
  • Viber
  • вхід через обліковий запис Google
  • KeyCRM
  • 1С / BAS
  • Google Tag Manager
  • GA4
Своя програма в магазині проти зовнішнього сервісу лояльності

Чим цей варіант відрізняється від «Зовнішній сервіс лояльності»

Де живуть балансиу вашій базі, поруч із замовленнями
Правила нарахуваннябудь-які: за категорію, за перше замовлення, за дію
Списання в кошикуперерахунок у самому кошику, стеля на частку чека
Грошіразова розробка і підтримка за фактом змін
Офлайн-точкапотрібна окрема інтеграція з касою
Звітністьзвіт в адмінці по нарахованому й списаному
Кейси

Задачі та результат у цифрах — усі показники зняті нашим виміром

інтернет-магазин тактичного спорядження з каталогом понад 50 тис. позицій

Задача
Утримати надвеликий асортимент в одному магазині з детальною фільтрацією й побудувати інфраструктуру для роботи з базою покупців: розсилки, впізнавання клієнта, події в чекауті.
Рішення
Магазин на OpenCart 3, дві мовні версії. У чекауті — LiqPay, картка онлайн, післяплата, готівка при отриманні, безготівковий розрахунок і розстрочка онлайн з окремою подією dataLayer. Підключені телефонія, сервіс email-розсилок, вхід через обліковий запис Google, менеджер тегів і аналітика.
Результат
54 302 товари і 635 категорій — підтверджено двома незалежними методами: sitemap-індекс із 32 товарних файлів дає 110 096 адрес на дві мови, перехресна перевірка штатним пошуком — 54 501–54 600 позицій, розбіжність 0,4%. TTFB 413,8 мс і повне завантаження 511,1 мс при 421,5 КБ HTML. Дев'ять типів структурованих даних на головній. Для програми лояльності це означає одне: канал сповіщень і впізнавання покупця вже стоять, будувати треба нарахування, а не інфраструктуру. Знайдений дефект: hreflang заявлено як uk-UA і uk-RU при lang="ru" на кореневій версії. Вимір 31.07.2026.
Що потрібно від вас

Без цього не почнемо — краще підготувати заздалегідь

  1. Вивантаження замовлень за останній рік: повторні покупки, середній чек, періодичність.
  2. Рішення по відсотку нарахування й по стелі списання — цифри називаєте ви, варіанти рахуємо ми.
  3. Правило згорання балів, якщо воно потрібне, і строк попередження перед ним.
  4. Текст правил програми з вашого боку — юридично це ваша зона.
  5. Доступи до сайту, бази й сервісу розсилок.
  6. Одну людину з правом ухвалювати рішення по економіці програми.

Якщо чогось із цього немає — скажіть, підкажемо, як зібрати або зробимо самі окремою задачею.

Часті питання

Те, що питають найчастіше — з конкретними відповідями

бали чи накопичувальна знижка?

Залежить від циклу покупки. Бали працюють там, де купують часто: покупець бачить накопичення й повертається, щоб його витратити. Накопичувальна знижка простіша й краще підходить до рідкісних великих покупок — вона не вимагає пам'ятати про баланс. Для гурту й дилерів зазвичай логічніші рівні цін за обсягом, а не бонуси.

як не роздати маржу?

Порахувати вартість програми до запуску й обмежити списання. Робочі запобіжники: бали закривають не більше узгодженої частки чека, не нараховуються на акційні позиції й на позиції з мінімальною націнкою, згорають через визначений строк. Закладати їх треба одразу — прибрати обмеження потім легко, а додати після запуску боляче для покупців.

коли нараховувати бали?

Після виконання замовлення, а не після оформлення. Інакше бали летять за замовлення, які скасовуються або не викуповуються, і програма перетворюється на дірку. Так само важливо знімати нараховане при поверненні товару — про цю частину логіки згадують уже після першого зловживання, коли доводиться правити баланси руками.

як покупець дізнається про баланс?

З кабінету й зі сповіщень. У кабінеті — баланс і історія операцій, де в кожного рядка є дата, номер замовлення й причина. У сповіщеннях — нарахування після замовлення й попередження перед згоранням. Мовчазне згорання псує ставлення до магазину сильніше, ніж відсутність програми взагалі.

чи потрібна інтеграція з розсилками?

Дуже бажана: саме листи перетворюють бали на повторні продажі. У виміряному нами магазині спорядження на 54 тисячі позицій уже стоять сервіс email-розсилок, телефонія і вхід через обліковий запис Google — програму розумно будувати поверх цього. Межа механіки чесна: без згоди на розсилку тригер не має права спрацювати, а перебір із частотою листів дає відписки.

як зрозуміти, що програма працює?

За показниками, визначеними до запуску: частка повторних замовлень, середній чек у замовленнях із бонусами проти звичайних, частка нарахованих балів, які фактично витрачені. Останній показник найцікавіший — якщо бали нараховуються, але не списуються, програма коштує вам зобов'язань і не приносить повернень. Числа з GA4 при цьому зводяться з адмінкою: аналітика дає тенденцію, а не бухгалтерію.

а на великому каталозі це не сповільнить сайт?

Не має, якщо баланс не рахувати сумою всього журналу на кожній сторінці. Той самий виміряний магазин на 54 302 товари віддає першу відповідь за 413,8 мс — навантаження створює каталог, а не бонуси. Наша рекомендація: тримати поточний баланс окремим зрізом і перераховувати його при операції, а повний журнал показувати лише в кабінеті, куди заходить один покупець, а не пошуковий робот.

у нас є офлайн-точка — бали будуть спільні?

Технічно так, питання лише в тому, як списувати в залі. Найдешевший варіант: продавець знаходить покупця за телефоном в адмінці й списує руками — працює з першого дня й нічого не вимагає від каси. Прямий зв'язок із касовим ПЗ і фіскальним обладнанням рахуємо окремо, бо там графік синхронізації, права доступу й чужий формат обміну.

скільки триває впровадження?

12–35 робочих днів, це шість етапів. Накопичувальна знижка за групою клієнта — нижня межа. Бали з нарахуванням, стелею списання, згоранням, рівнями, сповіщеннями й зв'язком із розсилками — верхня, бо там багато правил і кожне перевіряється на реальних сценаріях, включно з поверненнями й частковою оплатою.

Надішліть вивантаження замовлень за рік — порахуємо, чи є кого повертати.

У відповідь: частка повторних покупок на ваших даних, вартість програми за трьома механіками й рекомендація по моделі. Якщо повторних замовлень майже немає, скажемо це першим листом.

Переглянути кейси
  • Відповідь протягом 2 годин
  • Без зобов’язань
  • Працюємо за договором

Прайса на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» у такому разі нічого не пояснює. Спершу безкоштовний аудит — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.