Бесплатный плагин «Снова» для Webasyst Shop-Script
Карта лояльности в телефоне покупателя, оплата баллами в чекауте и начисление за заказ — бесплатный плагин для Webasyst Shop-Script. Одна карта на сайт и на кассу офлайн-магазина. Ставится за десять минут.
Бесплатный плагин «Снова» для Webasyst Shop-Script добавляет интернет-магазину программу лояльности: карту в телефоне покупателя, бонусные баллы за заказы и оплату баллами прямо в чекауте. Ставится из магазина приложений Webasyst за десять минут, разработчик не нужен.
Интернет-магазин знает покупателя в момент заказа — телефон, имя, почту. Поэтому здесь возможен полный цикл, которого нет у кассовых интеграций: покупатель оплачивает часть заказа баллами в чекауте, за оплаченный заказ получает баллы, одной галочкой заводит карту в Apple Wallet или Google Кошельке, а возврат заказа откатывает баллы сам.
Плагин бесплатный. Поставьте его из магазина Webasyst — так он будет обновляться сам — или скачайте архив и загрузите через Инсталлер.
Установить через магазин WebasystСкачать плагин 1.0.0
Что получает магазин
| Возможность | Как работает |
|---|---|
| Карта лояльности в телефоне | Покупатель отмечает галочку в чекауте — и получает карту в Apple Wallet или Google Кошельке. Приложение ставить не нужно, карта обновляется сама. |
| Бонусные баллы за заказ | Процент с оплаченного заказа по правилам программы: базовый процент, повышенный для уровней, акции по дням и категориям товаров. |
| Оплата баллами в чекауте | Поле «Списать баллов» превращается в скидку по цене балла, в пределах потолка программы. Покупатель видит, сколько может списать, до оформления. |
| Приветственные баллы сразу | Заводя карту, покупатель тут же видит скидку на приветственные баллы — это и есть предложение, ради которого карту заводят. Можно выключить, чтобы копились до следующей покупки. |
| Возвраты без ручной работы | Полный или частичный возврат заказа снимает долю начисленного и возвращает долю списанного. Удаление заказа — полный возврат, восстановление — чек заново. |
| «Мои баллы» в кабинете покупателя | Баланс, кнопка карты и история движений — отдельным пунктом в личном кабинете магазина. |
| Онлайн и офлайн — одна карта | Та же карта работает у кассы в вашем магазине или кафе: баллы за онлайн-заказ списываются на кассе, и наоборот. Интернет-магазин — просто ещё одна точка продаж программы. |
| Несколько витрин | У каждой витрины свой ключ, точка продаж и настройки: опт и розница, разные бренды, разные программы. |
Магазин офлайн и интернет-магазин — два в одном
Если у вас есть и торговый зал, и сайт на Shop-Script, программа лояльности не делится надвое. Карта у покупателя одна, баланс один, и копится он с обеих сторон: заказал онлайн — баллы можно потратить у кассы, купил в зале — списать в чекауте сайта. У кассы работает экран кассира в браузере, Эвотор или любая касса через открытый API; в интернет-магазине — этот плагин. База гостей при этом общая, и в аналитике видно, кто ходит только в зал, кто покупает только онлайн, а кто и там и там.
Разделяет их только точка продаж: витрине в настройках плагина назначается своя, и чеки с сайта ложатся отдельной строкой в отчётах. К точке привязываются и правила: повышенный процент за онлайн-заказы, «счастливые часы» только в зале, потолок списания на сайте ниже, чем у кассы. Программа одна, а условия — свои для каждой точки.
Как это настроить: точка «Интернет-магазин» и свои правила
Заведите точку «Интернет-магазин» в кабинете «Снова»
Раздел «Точки продаж» → «Добавить точку». Название любое, адрес не нужен, часовой пояс — ваш: по нему считаются «счастливые часы» и день рождения. Точка для сайта заводится даже если зала у вас нет — по ней чеки с сайта видны отдельной строкой в отчётах.
Назначьте точку витрине в плагине
Настройки плагина → нужная витрина → «Точка продаж». Список точек приходит из кабинета после «Сохранить и проверить», поэтому сначала нажмите кнопку, а потом выбирайте. С этого момента каждый чек с сайта уходит с этой точкой.
Добавьте правило только для сайта
Раздел «Программа» → «Начисления» → «Добавить правило». Например, начисление +3% к базовому — за онлайн-заказы. В блоке «Где действует» переключите «Во всех точках» на «Только в выбранных» и отметьте «Интернет-магазин». Так же привязывается лимит списания: на сайте — до 15% заказа, у кассы — до 30%.
Проверьте, что действует на точке
В «Точках продаж» у строки «Интернет-магазин» нажмите «Что действует»: список покажет общие правила программы и привязанные к сайту — в том порядке, в каком их применит чек. Правила, отмеченные «только эта точка», на кассе в зале не сработают, а общие сработают везде.

Что происходит дальше само: покупатель оформляет заказ на сайте — плагин отправляет чек с точкой «Интернет-магазин», платформа применяет общие правила плюс правила этой точки и начисляет баллы на ту же карту, с которой он расплачивается у кассы. Потолок списания в чекауте плагин тоже берёт у платформы уже с учётом точки: обещание на сайте совпадает с тем, что спишется при оплате.
Сколько стоит
Бесплатный плагин для Webasyst Shop-Script и ключ для него выдаются на любом тарифе «Снова», включая бесплатный. Предел один — число карт по тарифу: когда он исчерпан, новым покупателям карты не выдаются, а начисление и списание по уже выданным продолжают работать. Тарифы и лимиты — на странице цен.
Магазина на Shop-Script ещё нет? Откройте его в облаке Webasyst — плагин ставится туда так же, из Инсталлера.
Открыть магазинУстановка за десять минут
Зарегистрируйтесь в «Снове» и заполните реквизиты
Кабинет на app.snovacard.ru, пять минут. Юридическое название и ИНН нужны обязательно: без них карты не выдаются — гость должен видеть, кому отдаёт телефон.
Поставьте плагин
В Инсталлере Webasyst найдите «Снова — карты лояльности». Плагин работает с чекаутом второй версии — Shop-Script 8 и новее.
Возьмите ключ
Ссылка «Получить ключ в кабинете «Снова»» в настройках плагина открывает кабинет прямо на кнопке «Создать ключ для магазина». Ключ показывается один раз — скопируйте сразу.
Вставьте ключ и нажмите «Сохранить и проверить»
Кнопка сохранит настройки и тут же покажет, к какой компании, программе и тарифу подключилась витрина, сколько карт осталось по тарифу — и предупредит, если реквизиты оператора в кабинете не заполнены.


Настройки витрины
Все настройки принадлежат витрине, общих нет: у опта и розницы совпадать нечему, а витрина без ключа в программе просто не участвует — это и есть выключатель.
| Настройка | Что решает |
|---|---|
| Ключ API «Снова» | Открывает компанию в «Снове» — её баллы и её гостей. Витрине с другим ключом достанется другая программа. |
| Точка продаж | К какой точке «Снова» отнесёт чеки витрины. По ней срабатывают правила, привязанные к точке, и она идёт отдельной строкой в отчётах. Список приходит после проверки ключа. |
| Когда начислять баллы | «Заказ оплачен» или «Заказ выполнен». Чек проводится один раз; списание из чекаута уходит тем же чеком. |
| Считать доставку частью чека | Начислять и списывать с учётом стоимости доставки или без неё. |
| Оплата баллами | Показывать ли покупателю поле «Списать баллов». Потолок задаёт программа. Выключите, если баллы в магазине только копятся. |
| Карта лояльности | Предлагать ли галочку «Завести карту» в чекауте — отмеченную по умолчанию, снятую или не предлагать вовсе. Отметившему придёт ссылка на карту на странице заказа и в письме. |
| Приветственные баллы | Разрешить ли потратить их сразу, в этом же заказе. |
| Оформление блока | Разметка и стили блока в чекауте и страницы «Мои баллы». Пока поле пусто — работает вид из дистрибутива и обновляется вместе с плагином; «Взять за основу» делает код своим. |
Что видит покупатель

Карта предлагается там, где её заводят, — в чекауте. QR-код показывается на странице «Спасибо за заказ», а не в чекауте: заказ оформляют с компьютера, а карта ложится в телефон. Отметившему галочку ссылка на карту приходит и в письме о заказе — строкой {$order.params.snova_install_url} в шаблоне уведомления.
Что видит менеджер

| Момент | Что делает плагин |
|---|---|
| Заказ создан | Если отмечена галочка карты — карта выдаётся сразу. Списание из чекаута записано в параметры заказа. |
| Заказ оплачен (или выполнен) | Один чек в «Снову»: начисление за сумму после чужих скидок и списание, выбранное в чекауте. В журнале заказа — строка: сколько начислено, списано, баланс. |
| Возврат, полный или по позициям | Возврат чека на ту же долю. Удаление заказа — полный возврат, восстановление — чек заново. |
| Правка заказа после чека | Автоматики нет: в заказе появляется пометка, а сумму в «Снове» при необходимости правят в кабинете. |
| Не хватило баллов к моменту оплаты | Списывается сколько есть, менеджер видит в заказе, что скидка была больше. |
| Сеть или ошибка платформы | Чек откладывается и повторяется сам: при открытии заказа в бекенде либо из cron. Заказ не останавливается никогда. |
Что нужно знать
- Чекаут первой версии (страница /checkout/) не поддерживается.
- Витрина — отдельный магазин: свой ключ, своя точка продаж, свой момент начисления и своё поведение в чекауте. Витрин у магазина может быть несколько.
- Правила программы по категориям товаров работают: в чек уходят позиции с типом товара как категорией.
- Скидка за баллы подчиняется настройке магазина «сумма скидок» или «максимальная из скидок» — как и партнёрский бонус.
- Ошибки плагина пишутся в
wa-log/shop/plugins/snova.log; заказ они не останавливают.
Как это устроено внутри
Плагин — обычная касса в терминах платформы: ходит в открытый API по ключу, сам ничего не считает — потолок списания приходит от платформы уже с учётом точки витрины, — и не хранит персональных данных: телефон берётся из контакта покупателя при каждом обращении. Чек проводится с ключом идемпотентности, выведенным из номера заказа, поэтому повтор после обрыва сети не начислит дважды.
Ключ идемпотентности чека
webasyst:<ключ установки>:order:<номер заказа>Отложенные чеки повторяет cron: php cli.php shop snovaPluginSync — он же обновляет снимок условий программы. Без cron условия обновляются лениво, раз в час на первом чекауте.
Частые вопросы
Плагин действительно бесплатный?
Да. Плагин и ключ для него выдаются на любом тарифе «Снова», включая бесплатный. Платный тариф понадобится, когда закончится лимит карт по бесплатному: начисление и списание по уже выданным картам продолжат работать, а новые карты выдаваться не будут.
Покупатель не видит поле «Списать баллов» в чекауте
Поле показывается только вошедшему покупателю, у которого есть карта «Снова» на телефон из профиля, и по умолчанию — только если номер подтверждён кодом. Проверьте, что в настройках витрины включена «Оплата баллами», а магазин работает на чекауте второй версии.
Баллы за заказ не начислились
Откройте заказ в бекенде: блок «Снова» показывает, проведён ли чек и почему нет. Чаще всего — у покупателя нет телефона в контакте, нет карты (а галочка «Завести карту» не была отмечена) или витрина заказа без ключа. Отложенные из-за сети чеки повторяются сами.
У витрин магазина разные программы лояльности — как быть
Так и задумано: вставьте каждой витрине её собственный ключ. Ключ — это компания в «Снове», и витрина будет работать со своей программой, своими баллами и своей базой гостей.
Можно ли изменить вид блока в чекауте под тему магазина
Да, в настройках витрины: «Взять за основу» открывает разметку и стили блока для правки, «Вернуть к дистрибутиву» откатывает. Пока поле пусто, вид обновляется вместе с плагином. Сломанный код не роняет магазин — покупателю показывается стандартный вид, а ошибка приходит при сохранении настроек.
Как показать ссылку на карту в письме о заказе
Добавьте в шаблон уведомления строку с {$order.params.snova_install_url} — она заполнена у заказов, где покупатель отметил галочку карты.
Первые 50 карт — бесплатно. Программа настраивается за вечер.
Создать программу
Снова




