Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Panel

Table of Contents


Panel

Реализованная интеграция с системой RS.Loyalty может не поддерживать определенные функции системы или иметь особенности их реализации. Следует уточнять полноту интеграции в соответствии с функциональными требованиями к системе лояльности.

Кассовое ПО Artix поддерживает применение дисконтных и бонусных воздействий, применение купонов и использование подарочных сертификатов внешней системы лояльности RS.Loyalty.

Конфигурирование модуля RS.Loyalty

Активация модуля внешней системы лояльности RS.Loyalty определяется параметром определяется параметром rsloyalty, который задается в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/rsloyalty.ini в секции [plugins].

НаименованиеТип данныхВозможные значенияОписаниеПримечания
rsloyaltyстроковый
  • on
  • off
Модуль Активация модуля системы лояльности RS.LoyaltyПо умолчанию off

...

Anchor
Настройка
Настройка
Настройка плагина системы лояльности RS.Loyalty производится в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/rsloyalty.ini в секции [RSLoyalty].

устарелой. устарелой.
НаименованиеТип данныхВозможные значенияОписаниеПримечания

hosts

строковый
Адреса серверов RS.Loyalty в порядке убывания приоритетаПо умолчанию http://127.0.0.1/

timeout

целочисленныйцелое положительное числоТаймаут запроса к серверу RS.Loyalty, в секундахПо умолчанию 5 сек. секунд

user

строковый
Имя пользователя для авторизации на сервере

password

строковый
Пароль пользователя для авторизации на сервере
checkCouponPrefixстроковый
Префикс для купонов на чек

По умолчанию rsloyalty

Info
Начиная с версии 4.6.154 настройка является
устаревшей.


positionCouponPrefixстроковый
Префикс для купонов на позицию

По умолчанию rsloyalty

Info
Начиная с версии 4.6.154 настройка является
устаревшей.


checkCouponMaskстроковый
Маска для купонов на чекПо умолчанию маска не задана
positionCouponMaskстроковый
Маска для купонов на позициюПо умолчанию маска не задана
noBonusForMinpriceцелочисленный
  • 0 – разрешены все операции,
  • 1 – запрещено начисление,
  • 2 – запрещено списание,
  • 3 – запрещены все операции.
Правило работы с бонусамиПо умолчанию 0


Code Block
languagetext
titleПример настройки
[RSLoyalty]
; Настройки плагина системы лояльности RS.Loyalty

; Адреса серверов RS.Loyalty по убыванию приоритета
; Значение по умолчанию http://127.0.0.1/ 
hosts = "http://127.0.0.1/" 

; Таймаут запроса к серверу RS.Loyalty
; Значение по умолчанию 5
timeout = 5

; Имя пользователя для авторизации на сервере
; Значение по умолчанию "" 
user = "" 

; Пароль пользователя для авторизации на сервере
; Значение по умолчанию "" 
password = "" 

; Маска для купонов на чек
; Значение по умолчанию "" - маска не задана
;checkCouponMask = ""

; Маска для купонов на позицию
; Значение по умолчанию "" - маска не задана
;positionCouponMask= ""

; Правило работы с бонусами
; (0 - все разрешено, 1 - начисление запрещено, 2 - списание запрещено, 3 - все запрещено)
; Значение по умолчанию 0
;noBonusForMinprice = 0

Бонусная программа

В системе лояльности RSлояльности RS.Loyalty предоставляется возможность работы с дисконтными и бонусными картами RS.Loyalty:

  • При при работе с дисконтными картами предоставляется скидка.;
  • При при работе с бонусными картами производится начисление и списание бонусных баллов.

...

  1. Завести группу дисконтных и/или бонусных карт с типом карты RS.Loyalty (БД Dictionaries таблица Cardgroup поле cardmode = 7).
  2. Активировать модуль системы лояльности RS.Loyalty (см. Конфигурирование модуля RS.Loyalty).
  3. Настроить подключение к серверу системы лояльности (см. Конфигурирование модуля RS.Loyalty).
  4. Перезапустить кассу.
  5. Добавить дисконтную или бонусную карту в чек.

...

  1. Включить способ ввода "Удаленно" для группы карт (БД Dictionaries таблица Cardgroup поле  поле inputmask = 16).
  2. Указать корректную маску допустимых номеров карт.
  3. Настроить клавишу "Добавить карту" с командой COMMAND_CARD и параметрами:
    • cardNumberType со значением 1;
    • cardMode со значением 7.

При использовании команды на экран будет выведен диалог для ввода номера ввода номера телефона. После ввода номера телефона производится поиск карты на сервере системы лояльности RSлояльности RS.Loyalty. Далее на указанный номер телефона отправляется код подтверждения, а на экран будет выведен диалог для ввода кода подтверждения:

  • Если если введен верный код верный код подтверждения, то карта будет добавлена в чек.;
  • Если если введен неверный код подтверждения, то карта не будет добавлена в чек, а на экран будет выведена ошибка "Неверный код подтверждения".

...

  • введенный номер телефона отсутствует на сервере системы лояльности RSлояльности RS.Loyalty;,
  • отсутствует связь с сервером.

...

Для получения скидки по дисконтной карте или для начисления и списания баллов с бонусной карты, необходимо добавить карту системы лояльности RS.Loyalty в чек. Обращение к серверу для получения скидки выполняется автоматически при переходе в подитогподытог, для получения суммы доступных баллов обращение к серверу выполняется при оплате баллами. Полученные скидки автоматически применяются к чеку.

...

Списание баллов выполняется по инициативе кассира. Потраченные баллы фиксируются в кассовой программе как скидка на чек. Для списания можно использовать все доступные баллы.

Если цена позиции равна минимальной цене, то возможность списания баллов регулируется настройкой noBonusForMinprice. В противном случае возможность списания баллов регулируется битовой маской в БД Dictionaries таблице Tmc в поле loyaltymode.

Начисление баллов

Начисление баллов происходит на стороне сервера внешней системы лояльности RS.Loyalty после закрытия чека.

Если цена позиции равна минимальной цене, то возможность начисления баллов регулируется настройкой noBonusForMinprice. В противном случае возможность начисления баллов регулируется битовой маской в БД Dictionaries таблице Tmc в поле loyaltymode.

Возврат

В системе лояльности предусмотрена возможность возврата списанных ранее баллов.

...

Если префиксы в конфигурационных файлах не совпадают, то кассовое ПО не распознает вводимый номер как купон RS.Loyalty.При добавлении купона в чек проверяется его валидность. В случае, если купон не валиден, купон не будет добавлен в чек.

Info
Чтобы отключить проверку по bcode.ini необходимо отключить настройку использования интерпретации штрих-кодов при добавлении купона по кнопке useBcodeParserForAddCouponByButton.

Скидка по купону применяется автоматически при переходе в подитогподытог.

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

...

  1. Активировать работу системы сертификатов параметром rsloyaltycertificate в конфигурационном файле /linuxcash/cash/conf/ncash.ini в секции [plugins].
  2. Настроить подключение к системе сертификатов RS.Loyalty в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/rsloyalty.ini.
  3. Заполнить справочники сертификатов в БД Dictionaries таблице Certificate. Обязательные для заполнения поля:
    • code - код – код группы сертификатов (указать значение rsloyalty);
    • name - название (отображается как наименование позиции);
    • tmccode - код товара при добавлении в чек;
    • deptcode - отдел;
    • vatcode - налог.

Продажа подарочных сертификатов

Возможна продажа следующих видов подарочных сертификатов (карт):  

  • одноразовая подарочная карта - одноразовый подарочный сертификат – оплатить чек сертификатом можно только один раз;
  • многоразовая подарочная карта - оплатить многоразовый подарочный сертификат – оплатить сертификатом можно несколько чеков;
  • многооборотная многоразовая подарочная карта - многооборотный многоразовый подарочный сертификат – оплатить сертификатом можно несколько чеков, продать сертификат можно несколько раз.  

...

При добавлении сертификата в чек на экран будет выведен диалог для ввода номера сертификата. После ввода номера сертификата проверяется разрешен ли ввод с текущего устройства (сканер штрих-кода, ридер карт, вручную). Если данный способ ввода разрешен, то сертификат будет добавлен в чек, иначе - сертификат не будет добавлен в чек.

...

Вне зависимости от наличия карты или купона в чеке продажи при переходе в подитог подытог на сервер лояльности RS.Loyalty будет отправлен запрос для получения скидкискидок. Полученные скидки автоматически применяются к чеку.

...

В систему лояльности RS.Loyalty данные могут отправляться в online и offline режимах.

В режиме online выполняются следующие операции:

  • добавление дисконтной/бонусной карты;
  • добавление купона;
  • добавление сертификата;
  • запрос скидок по дисконтной карте, купону;
  • запрос количества бонусных баллов для списания;
  • запрос информации о дисконтной/бонусной карте и подарочном сертификате;
  • возврат подарочного сертификата;
  • оплата чека подарочным сертификатом.

Если сервер внешней системы лояльности RS.Loyalty не доступен включается режим offline. В offline режиме выполняются следующие операции:

  • начисление бонусных баллов;
  • возврат начисленных бонусных баллов;
  • сторнирование подарочных сертификатов;
  • отправка чеков.

Offline режим действителен до закрытия чека. После закрытия чека вновь выполняется попытка подключения к серверу системы лояльности RS.Loyalty.

Для корректной отправки данных в offline режиме необходимо установить пакет Artix-Queue. 

При закрытии чека продажи или возврата информация о чеке отправляется на сервер RS.Loyalty через очередь Artix-Queue. Если при открытии нового чека связь с сервером системы лояльности не будет восстановлена, то доступно будет только закрытие чека.

...

Использование нескольких серверов системы лояльности RS.Loyalty позволяет гарантированно пользоваться внешней системой лояльности в случае недоступности одного из них.

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

Code Block
languagetext
titleПример настройки для использования двух серверов
[RSLoyalty] 
; Настройки плагина системы лояльности RS.Loyalty 
; Адреса серверов RS.Loyalty по убыванию приоритета 
; Значение по умолчанию http://127.0.0.1/ 
hosts = "адрес сервера №1 RS.Loyalty,адрес сервера №2 RS.Loyalty" 
...

...