Как работает Costless Loyalty 5+1 — методология
Costless Loyalty 5+1 — это платформа цифровых карт со штампами, работающая в браузере клиента. Без приложения. Без Apple или Google Wallet. Без интеграции с кассой. Десять вариантов механики — штамп за визит, за товар, за сумму и уровневые программы — с бонусами на день рождения и стриками. Бесплатно навсегда для одной точки.
1. Как начисляется штамп — 6-шаговая схема
Каждый штамп проходит одинаковую схему независимо от механики. Сервер управляет выдачей — клиентское устройство не может создать штамп самостоятельно.
2. Как клиент получает бонус — 9-шаговая схема
Погашение — это двусторонняя операция: клиент показывает QR + PIN, бариста подтверждает. Без действия бариста автоматических списаний нет.
3. Защита от мошенничества — математика 90-секундного QR
Почему скриншот QR не помогает злоумышленнику
UUID-токен уникален для одной сессии. Первое корректное сканирование атомарно помечает токен использованным. Любое последующее сканирование (то же устройство, другое устройство, скриншот) возвращает «уже использован». Окно в 90 секунд ограничивает горизонт атаки.
Почему PIN не пересекается между программами
PIN — это 4 цифры (10 000 комбинаций) — небольшое пространство. Но PIN привязан к конкретной программе, поэтому клиент в другом заведении с таким же PIN не может перехватить погашение. Ограничение в 10 запросов в минуту делает перебор экономически бессмысленным.
4. Где живет карта клиента — и почему без Wallet
Карты Costless живут не в Apple Wallet и не в Google Wallet. Они живут по URL в браузере клиента. Клиент получает доступ к карте через magic-link, присланный на email, — без установки приложения и без файла Wallet.
Интеграция с Wallet требует платформенных сертификатов и зависит от политики Apple и Google. Наши клиенты держат кафе и салоны — им нужна гибкость, а не привязка к конкретной ОС телефона. URL-карты работают на любом устройстве с браузером.
5. Magic-link начисление — безпарольный первый контакт
Первый контакт — самый сложный момент любой программы лояльности. Мы свели его к одному нажатию:
Новый клиент (ещё не вошедший) может отсканировать QR и указать только email. Сервер сохраняет потенциальные штампы в очереди ожидания с одноразовым magic-токеном. Клиент нажимает на ссылку из письма — если вошёл, штампы начисляются сразу; если нет, сначала входит, затем штампы начисляются. Magic-токен одноразовый; повторный клик возвращает «уже использован».
6. Мульти-механика — один аккаунт, много программ
Costless поддерживает 16 корректных конфигураций (4 модели бонуса × 2 режима × 4 режима штампов); мы предлагаем 10 наиболее используемых вариантов в виде отдельных страниц. Один бизнес-аккаунт может вести несколько кампаний одновременно — например, простой 5+1 для кофе + накопительная сумма для выпечки.
| Тариф | Точки | Кампании | Уровневый режим |
|---|---|---|---|
| Free | 1 | 1 | Только простой режим |
| Starter | 3 | 3 | Включено |
| Business | 10 | 10 | Включено |
| Network | 50 | ∞ | Включено |
| Enterprise | 50+ | ∞ | Включено |
Объём карт клиентов и рассылка magic-link не ограничены ни на одном тарифе, включая Free.
7. Награды на день рождения — кросс-вариантные
Бонусы на день рождения — переключатель уровня программы, доступный в каждом варианте механики Costless 5+1. Если в профиле клиента указан день рождения, и он приходит в настроенное окно, и заработал минимальное количество прошлых наград — платформа выдаёт одну награду в год.
Для уровневых программ награда автоматически привязывается к самому дешёвому товару нижнего уровня, чтобы новый клиент тоже мог её получить.
8. Бонусы за стрики — кросс-вариантные
Бонусы за стрики — переключатель уровня программы, доступный в каждом варианте механики Costless 5+1. Каждое корректное сканирование QR продвигает стрик клиента: визит в пределах окна стрика после предыдущего → стрик +1; иначе стрик сбрасывается до 1.
Когда стрик достигает настроенного порога, клиент получает бонус за стрик. На карте отображается значок «стрик X дней». Прогресс обновляется мгновенно.
9. Почему не нужна интеграция с кассой
Costless работает во вкладке браузера рядом с существующей кассой (оверлей-модель). Бариста вводит сумму или количество вручную за 1–3 клика. Без API-интеграции с кассой, без управления сертификатами, без привязки к поставщику.
Компромисс: небольшое эргономическое неудобство в обмен на скорость запуска и платформенную независимость.
10. Данные, GDPR, право клиента на удаление
- Email клиента и история карты являются персональными данными по GDPR.
- Расположение данных: актуальная информация — в нашей Политике конфиденциальности.
- Клиент может удалить свою карту со страницы карты в любое время.
- После удаления бизнес видит только агрегированные метрики; история клиента анонимизируется.
- Costless выступает как обработчик данных; бизнес является контролёром данных.
11. Масштаб, время работы, что происходит при обрыве WiFi
- Задержка выдачи штампа: менее секунды при нормальной нагрузке.
- Регион сервера: актуальная информация — в нашей Политике конфиденциальности.
- Бариста без интернета: без сети QR сгенерировать невозможно — бариста видит «попробуйте ещё раз». Риска двойного начисления нет.
- Методология времени работы: публикуется отдельно по мере зрелости наших практик надёжности.
12. Доступ к API — тарифы Network и Enterprise
REST API доступен на тарифах Network и Enterprise. Он предоставляет программное начисление штампов, погашение и управление кампаниями. Тарифы Free, Starter и Business не включают доступ к API.
Документация по API публикуется отдельно.
13. 19 языков — как работает локализация
Интерфейс карты клиента автоматически определяет язык браузера. Поддерживаются: en, uk, ru, de, pl, es, fr, it, pt, kk, lt, et, lv, hi, ar, ja, zh, el, th. Названия и описания программ хранятся как основной текст плюс переводы для каждой локали.
14. Честный роадмап — что еще не построено
В нашей административной панели зарезервирована настройка партнёрской сети, но логика выдачи штампов между партнёрами, процесс приглашения и правила распределения расходов ещё не реализованы. Мы раскрываем это, потому что настройка видна в панели администратора и иначе выглядела бы как «работающая». В роадмапе.