Skip to main content

Настройка кассового ПО Frontol

Загрузка основного сценария

Код основанного сценария работы кассового места содержится в файле main.js. Для загрузки сценария и установки его как основного необходимо запустить утилиту «Frontol Администратор», открыть базу, для которой предполагается установить сценарий. Далее перейти в раздел «Скидки и сценарии», создать новый сценарий, открыть файл main.js с диска или скопировать содержимое файла в открытый сценарий:

изображение_2022-11-15_172008535.png

Для корректной работы сценария, необходимо установить значения переменных в заголовке файла установить значения переменным в начале в заголовке файла:

Имя переменной Описание
bsServer

Адрес процессингового сервера. Доступные сервера:

https://demo.bonus.rarus-online.com:88/ - Тестовый сервер;

https://bonus.rarus-online.com:88/ - Боевой сервер;

bsUser

Имя пользователя сервиса, полученное при регистрации

bsPassword

Пароль пользователя сервиса, полученный при регистрации. Для безопасности пароль не вводится в открытом виде, нужно ввести шестнадцатеричное значение хеш-функции от значения пароля. Вычислить такое значение можно, например, на сайте http://www.sha1-online.com/

bsShopID

Уникальный идентификатор магазина, используется для аналитики продаж

bsKKTID

Уникальный идентификатор кассы

bsKKTName

Наименование кассы

bsCodeCertificatePosition

Код товара, который используется при продаже сертификатов

bsCodeCertificatePayment

Код вида оплаты, который используется при оплате чека сертификатом

bsClientNameInputType

Тип ввода имени клиента. Доступны значения:

  • OneInput – одно поле для Фамилии, Имени и Отчества.
  • ThreeInputs – для указания Фамилии, Имени и Отчества используются разные поля.
  • var bsLogLevel = 'off';
bsLogLevel

Уровень журналирования.  Доступны значения error, info, debug, off. Каждый последующий уровень журналирования включает в себя предыдущий. Например, при указании уровня debug в файлы журналов будут выводиться сообщения с уровнями error и info. off - полностью отключает журналирование

bsLogRootPath

Корневой каталог, в который будут сохраняться файлы журнала. В этом каталоге автоматически создаются отдельные подкаталоги с файлами журнала. Каждый файл содержит информацию за один час работы системы.

В качестве разделителя пути к каталогу необходимо использовать двойной обратный слэш(\\) в конце пути также необходимо наличие \\

bsPendingDocQueue

Корневой каталог, в который будут сохраняться файлы с информацией о документах, которые не удалось отправить на обработку в сервис по причине плохого соединения с сервисом. Такие документы будут повторно отправляться при старте системы.

В качестве разделителя пути к каталогу необходимо использовать двойной обратный слэш(\\) в конце пути также необходимо наличие \\

bsBarcodeInputSequence

Последовательность клавиш вызова окна ввода штрихкода карты. Если значение не указано, после поиска карты по штрихкоду/телефону не будет выполняться подстановка штрихкода карты в документ. Значение должно совпадать с назначенной в системе для этого действия комбинацией клавиш

bsCardTypeCodes
Коды видов карт бонусного сервиса. Проверка наличия карт в сервисе будет выполняться только для карт подходящих под условия указанных видов.

 После настройки можно сохранить сценарий и выбрать его в качестве основного в поле «В начале сеанса запускать».

изображение_2022-11-15_172053596.png

Более простым способом настройки будет использование утилиты настройки. Она запускается по-умолчанию после установки новой версии скрипта.

Настройка бонусных скидок и оплаты бонусными баллами

Для корректного применения рассчитанных процессингом скидок и оплаты бонусными баллами необходимо настроить маркетинговую акцию. Для этого нужно перейти в раздел «Скидки и сценарии» -> «Маркетинговые акции» и создать новую скидку:

изображение_2022-11-15_172139304.png

Для скидки устанавливается признак «Срабатывает всегда».

После, нужно указать два мероприятия «Оплата» и «Скидка», которые отражают логику применения оплаты бонусными баллами и скидок соответственно к документу:

изображение_2022-11-15_173130045.png

Каждое мероприятие должно иметь тип «Автоматическая скидка из сценария», не иметь модуля условий(т.е. быть безусловными). На каждую скидку назначается функция расчета из загруженного ранее скрипта. 

Для мероприятия «Скидка», указываются следующие настройки и функция

 ApplySumDiscountToPosition('rarusBonus')

изображение_2022-11-15_173228523.png

Для мероприятия «Оплата», указываются следующие настройки  и функция

 ApplyBonusPaymentToPosition()

изображение_2022-11-15_173415260.png

Идентификация карт

Считывание бонусных карт выполняется типовой командой платформы FRONTOL. Для корректной интеграции необходимо определиться с префиксами штрихкодов бонусных карт и в разделе «Скидки и наценки» -> «Виды карт» создать один или несколько видов карт соответствующий диапазонам:

изображение_2022-11-15_174146411.png

Такие карты НЕ будут регистрироваться в системе FRONTOL определение будет выполняться на процессинге, поэтому необходимо установить признак «Использовать для незарегистрированных карт»

Обязательно в сценарии настроить значение кодов видов карт в переменной bsCardTypeCodes. Коды не внесенные в массив будут работать по логике Frontol и не будут проверяться на сервисе управления лояльностью.

Дополнительные функции и значения

Основной сценарий предоставляет набор функций, которые можно использовать для в качестве команд кассира в основном режиме работы.

Состав команд:

  • Регистрация нового пользователя бонусного сервиса
  • Привязка новой карты к пользователю бонусного сервиса
  • Расчет скидок на процессинге с применением к текущему документу
  • Ввод оплаты бонусными баллами
  • Отмена рассчитанных скидок и оплаты баллами
  • Поиск карты пользователя бонусного сервиса по номеру телефона
  • Сброс дисконтной карты пользователя
  • Поиск промо-кода бонусного сервиса
  • Очистка промо-кода бонусного сервиса
  • Продажа подарочного сертификата бонусного сервиса
  • Отмена продажи подарочного сертификата бонусного сервиса
  • Оплата документа подарочным сертификатом бонусного сервиса

Команды реализованы в виде функций глобальном контексте основного сценария:

  • function RegisterNewCustomer()
  • function AttachCard()
  • function CalculateDiscounts(interactive)
  • function EnterBonusPayment()
  • function ClearAllDiscounts(interactive)
  • function SearchCardByPhone()
  • function ClearCard(interactive)
  • function SearchCoupon()
  • function ClearCoupon(interactive)
  • function AddCertificate()
  • function DeleteCertificate()
  • function EnterCertificatePayment()

Эти команды можно назначить на кнопки пользовательского интерфейса или горячие клавиши. 

Для функций у которых есть параметр interactive необходимо при назначении функции на кнопку/горячую клавишу в параметрах передавать true, без этого параметра не будут выводится сообщения о возникающих ошибках. 

Настройка производится в разделе «Настройки» -> «Макеты экрана» и «Настройки» -> «Раскладки».

Для назначения функции на кнопку интерфейса пользователя необходимо в макете экрана выбрать элемент типа кнопка и указать в качестве действия значение Специальные/Сценарий и в качестве параметра указать имя функции.

изображение_2022-11-15_175342106.png

Для назначения функции на горячую клавишу необходимо проделать аналогичные действия:

изображение_2022-11-15_175423356.png

Также основной сценарий предоставляет набор переменных, значение которых можно отобразить в интерфейсе пользователя.

Состав доступных переменных:

  • rarusBonusPayment – Количество бонусных баллов, которыми оплачен документ.
  • rarusBarcode – Штрихкод считанной и идентифицированной процессингом карты.
  • rarusUserName – Имя пользователя сервиса, связанного с картой.
  • rarusCardEntered – признак того, что введена карта клиента..

Настройка вывода этих значений выполняется в конструкторе макета экранной формы «Настройки» -> «Макеты экрана».  Для вывода используется элемент с типом «Информация», в качестве текста необходимо выбрать «Текущий документ \ Пользовательская переменная», в качестве значения имя переменной. Например:

изображение_2022-11-15_175456767.png

Подарочные сертификаты

Для корректной продажи подарочных сертификатов бонусного сервиса необходимо настроить товар. Для этого нужно перейти в раздел «Справочники» -> «Товары» и создать новый товар:

изображение_2022-11-15_175616548.png

Необходимо указать уникальный код товара и установить признак предмета расчета в значение «Аванс, предоплата». Указанный код товара необходимо ввести в сценарии в переменную bsCodeCertificatePosition.

Для того чтобы была возможность продавать данный товар необходимо в карточке товара на вкладке «Разрезы/цены/остатки» необходимо ввести остатки и цены на товар. Остатки можно указать нулевыми, цена должна быть не нулевой.

изображение_2022-11-15_175730529.png

На  вкладке «Контроль» необходимо снять галки у следующих опций «Списание остатков»,

изображение_2022-11-15_175801356.png

Для того чтобы отрабатывали опции заданные в карточке товара необходимо в разделе «Справочники» -> «Глобальный контроль» установить у опций «Списание остатков», «Запрос цены», «Скидки» и «Редактирование цены» значение «Товар».

Для возможности оплаты подарочным сертификатом необходимо в разделе «Системные справочники» -> группа «Оплаты» -> «Виды» создать новый вид оплаты.

изображение_2022-11-15_175839548.png

изображение_2022-11-15_175956242.png

Необходимо указать уникальный код вида оплаты. Указанный код товара необходимо ввести в сценарии в переменную bsCodeCertificatePayment.

Возврат оплаты подарочными сертификатами возможен только наличными поэтому необходимо установить опцию «Разрешить возврат наличными»

Вывод дополнительных свойств пользователя в интерфейсе кассы

Решение позволяет выводить значения дополнительных свойств пользователя, созданных в личном кабинете системы управления лояльностью, в интерфейсе кассового ПО Фронтол.

Для того чтобы настроить вывод необходимо в редакторе макета экрана добавить поле с типом "Информация" и установить значение из пользовательской переменной документа.

изображение_2023-05-29_162812148.png

Подробно о редактировании макетов экрана можно узнать из руководства администратора, поставляемого с кассовым ПО Фронтол

В качестве имени переменной нужно использовать следующий шаблон user_prop_<Идентификатор свойства>. Идентификатор свойства можно получить и указать в личном кабинете системы управления лояльностью.