SAMOSALE - облачный сервис для управления программой лояльности, состоящей из:
бонусной механики (накопление бонусов, оплата бонусами покупок)
скидочные механики (суммовая скидка, накопительная скидка)
промокодов (код, который клиент предоставляет на кассе, для участия в акциях)
идентификация гостя может осуществлена, как путем считывания идентификатора с носителя (QR код), в том числе экрана мобильного телефона или иного устройства, так и путем ручного ввода идентификатора.
REST API SAMOSALE https://app.samosale.ru/api-doc
Алгоритм работы
Покупатель подходит на кассу, делает заказ, сообщает, что он является участником системы лояльности
Кассир сканирует QR-код (вводит идентификатор вручную), предоставленный покупателем.
Далее на кассе сработает интеграция с внешней системой лояльности (запрос информации по идентификатору, если все корректно, то идентификатор привязывается к чеку). Если по какой-то причине (отсутствует интернет, API системы лояльности не отвечает и т.п.) не получилось добавить идентификатор в заказ, в на кассу будет выдано сообщение ошибке. Чек сохраняется в накопительной базе, после первой успешной транзакции производится отправка всех сохраненных чеков
а) Если покупатель зарегистрирован, переходим к шагу
б) Если покупатель не зарегистрирован. Кассир вводит номер телефона покупателя, отправляется запрос на регистрацию.После авторизации покупатель может применить промокод.
После ввода промокода, применяем скидки к заказу.
После применения идентификатора в заказ кассиру отображается доступное для списания кол-во бонусов Samosale (их количество можно редактировать, есть кнопка подтверждения списания). Данной валютой можно частично или полностью оплатить заказ.
Опционально. Если включено подтверждение покупателем списания бонусов, отправляется запрос на подтверждение списания, начинается проверка подтверждения, касса заблокирована. После получения подтверждения от Samosale скидка за счет бонусов применяется, и кассир может переходить к оплате.
После того как оплата успешно завершена (деньги получены, чек распечатался) данные по чеку отправляются в Samosale.
В Samosale передаются следующие данные вместе с чеком:
Номер идентификатора покупателя (если есть).
Идентификатор и название торговой точки.
Сумма счета.
Полный состав чека
Сценарий использования
Программа устанавливается в центральном офисе.
Запускается процесс синхронизация иерархии номенклатуры (например, запуск при установке и в дальнейшем передача всех изменений). Методы /category-product/create; /category-product/update; /category-product/delete; /product/create; /product/update; /product/delete
Программа устанавливается на кассы в магазинах.
Кассир набирает чек любым доступным способом: ручным подбором, сканером штрих-кодов.
Кассир уточняет у покупателя, является ли он участником программы лояльности или желает к ней присоединиться. Сканирует ШК с экрана смартфона покупателя или вводит номер телефона/id на кассе вручную.
Введенный ШК/номер/id проверяется в запросом /cash-box/search
При работе терминала в режиме оффлайн запрос не отправляется, введенные параметры покупателя добавляются к данным чека, чек передается для последующей оплаты и фискализации.Если покупатель не найден выполняется запрос на создание покупателя /cash-box/create-client
Выполняется запрос на расчет чека /cash-box/calculate-payment, в ответе возвращается информация о потолках списания и начисления бонусов в текущем чеке
На любое изменение состава чека должно отправлять запрос для пересчета количества баллов, доступных к списанию.
До внесения оплаты кассир озвучивает покупателю доступные варианты скидок и бонусов и указывает что покупатель хочет применить. Списание бонусов и промокод могут быть применены одновременно.
а) покупатель может сообщить кассиру промо-код, кассир вводит его в программу, по завершении ввода формируется запрос на проверку промо-кода /cash-box/check-promo если результат проверки промо-кода отрицательный, кассиру выдается сообщение, введенный промо-код очищается.
б) покупатель сообщает, сколько бонусов хочет списать.Если в настройках, полученных по API от системы лояльности требуется подтверждение операции списания бонусов, формируется запрос на создание подтверждения в /cash-box/create-confirmation. Если был создан запрос на подтверждение, кассиру отображается сообщение, что для завершения нужно дождаться подтверждения от покупателя и кнопка проверки разрешения. С интервалом 5-10 секунд и по нажатии кнопки проверки формируется запрос /cash-box/check-confirmation Если запрос возвращает информацию об успешном подтверждении, промокод добавляются в чек и чек передается на дальнейшую обработку.
Идет запрос к /cash-box/calculate-payment дополнительно в запросе передается сумма списания бонусов и/или промокод.
Процесс применения скидок завершен – идет запрос на создание пречека в системе лояльности /cash-box/prepare-payment.
В случае ошибки кассиру отображается сообщение об ошибке, и касса переходит к 7 пункту
В случае успешного выполнения запроса на экране кассы выводится информация по чеку с учетом всех примененных скидок.
Далее следуют этапы кассового техпроцесса внесение оплаты и фискализация.
В случае ошибки в кассовых процессах - идет запрос на отмену пречека /cash-box/reject-payment.
В случае успеха - идет запроск на подтверждение пречека /cash-box/confirm-payment.
Передача данных о чеках не авторизованного покупателя происходи с пункта 10, при этом идентификатор покупателя остается пустым.
При проведении возврата информация с составом возвращаемых позиций передается запросом /cash-box/create-refund
Схема работы кассы с системой лояльности SAMOSALE
Скачать данную документацию можно здесь: типовое_ТЗ_на_интеграцию_с_кассой.docx
Если не нашли ответ на свой вопрос, задайте его нам в Telegram @SamosaleSupport_Bot 😃