Начиная с версии 4.6.148 реализована дополнительная верификация. Начиная с версии 4.6.194 верификация вынесена в отдельный плагин. |
Активация модуля верификации карт определяется параметром cardverification
, который задается в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/cardverification.ini
в секции [plugins]
.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
cardverification | логический |
| Активация модуля верификации карт | По умолчанию on |
[plugins] ; Верификация карт cardverification = on |
Настройка плагина верификации карт производится в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/cardverification.ini
в секции [CardVerification]
.
В кассовом ПО Artix реализована возможность отложить выбор верификации для верификаций с признаком "безусловная" (БД Dictionaries
таблица Verification
поле attribute
). Регулируется параметром delayedChoice
в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/cardverification.ini
в секции [CardVerification]
:
true
окно выбора способа верификации появляется при добавлении карты,false
окно выбора способа верификации появляется только при оплате чека бонусами. При отказе от верификации карта не верифицируется, оплата бонусами невозможна.Наименование | Тип данных | Возможные значение | Описание | Примечания |
---|---|---|---|---|
delayedChoice | логический |
| Отложенный выбор верификации | По умолчанию false |
[CardVerification] ; Отложенный выбор верификации ; По умолчанию false ;delayedChoice = false |
При работе с картами клиентов в ряде случаев возникает потребность верифицировать карты в чеке, т.е. подтверждать их подлинность. Верификация карты может быть выполнена несколькими способами, в зависимости от технических средств, используемых в торговой сети. Типы (способы) верификации задаются отдельным справочником и указываются для каждого способа ввода. Для каждого способа ввода карты может быть задан один или несколько типов верификации.
Крупные торговые сети предоставляют своим клиентам возможность использования линейки собственных бонусных карт и бонусных карт компаний партнеров с правом авторизации в чеке по любой из карт. Чтобы исключить необходимость загружать в БД кассы справочники по основным и дополнительным (партнерским) картам клиентов в кассовом ПО Artix реализован поиск основной карты клиента по любой дополнительной карте и верификация карты на кассовом сервере.
Реквизиты кассового сервера, на котором будет производится поиск карты, указываются в конфигурационном файле /linuxcash/cash/conf/ncash.ini
в секции [Security.Restrictions]
.
Наименование | Тип данных | Описание | Примечания |
---|---|---|---|
cardVerificationUrl | строковый | URL сервиса верификации карты | Для различных типов верификации могут быть использованы разные URL сервисов. Для этого необходимо использовать тип верификации, как суффикс настройки Например, для внешнего сервиса верификации: cardVerificationUrl.rest = "http://externalService/rest" cardVerificationUrl.telegram = "http://127.0.0.1:55555/CSrest/rest/ident/cards" |
cardVerificationTimeout | числовой | Таймаут ожидания сообщения от сервера на запрос верификации карты | По умолчанию 5 секунд |
[Security.Restrictions] ;Параметры, относящиеся к безопасности ; URL сервиса верификации карты ;cardVerificationUrl = "http://localhost:8080/CSrest/rest/ident/cards" ; Таймаут(в секундах) ожидания сообщения от сервера на запрос верификации карты ; По умолчанию 5 секунд ;cardVerificationTimeout = 5 |
В свойствах группы карт, для которой будет осуществляться поиск карт на сервере, требуется указать правило поиска карт и необходимость использования правил преобразования.
При формировании запроса на поиск карты используется один из типов верификации:
Для возможности выбора каждому способу ввода может быть задано несколько способов верификации. Соотнесение способов ввода и верификации необходимо задавать для всех используемых способов ввода карты отдельно.
Порядок обработки полученных данных следующий:
При добавлении карты клиента в чек по маске номеров определяется группа карт.
Если группа карт не определена, карта не добавляется в документ, на экран будет выведена ошибка.
Если для введенного номера по маске номеров найдена группа карт, то поиск карты выполняется в соответствии с заданным правилом поиска (searchrule
в таблице Cardgroup
):
0
или NULL
поиск карты будет производится в БД кассы в таблице Card
. Если карта не найдена и для группы карт добавление карты при отсутствии в БД не заблокировано, то создается пустая карта. Запрос на кассовый сервер для поиска карты не отправляется;при значении 1
введенный номер определяется как номер телефона клиента.
Для корректного поиска в БД должна быть заведена группа карт, с маской, соответствующей номеру телефона, и с обязательным преобразованием номера (таблица CardGroup поле userawdata = 1 ). Способ верификации карты будет выбран из этой группы карт. |
По номеру телефона в БД кассы осуществляется поиск клиента и среди привязанных к нему карт выбирается подходящая. Карта не должна быть заблокирована (таблица Card
поле blocked = 1
) или просрочена (таблица Card
поля validitydatebeg
и validitydateend
). Если условию удовлетворяет несколько карт, то карту в чек невозможно добавить, на экран будет выведена ошибка.
3
поиск карты осуществляется по хэшу номера карты.После определения правила поиска карты определяется тип ее верификации для использованного источника ввода.
После выбора способа верификации на основании полученных данных на кассовый сервер отправляется запрос с указанием исходной группы карт. О настройке кассового сервера для верификации карт можно прочитать в разделе "Карты клиента". Поиск и верификация карты на сервере осуществляется в соответствии с заданными настройками. Если отказаться от выбора способа верификации, то программа возвращается в режим формирования чека, карта в чек не добавляется.
При удачном поиске и верификации карты сервер возвращает на кассу номер карты, использованный способ верификации и список отклоненных верификаций:
Кассовое ПО Artix обрабатывает сообщения, полученные от сервера верификации:
если сообщение присутствует в ответе от сервера, то на экран будет выведено диалоговое окно с полученным сообщением:
[{"cardNumber":"<номер_основной_карты>", "deniedTypes":["<список_отклоненных_верификаций>"], "message":"<сообщение>", "verificationCode":"<код_верификации>","verificationResult":<результат_верификации>,"verificationType":"<тип_верификации>"}] |
если сообщение отсутствует в ответе от сервера, то на экран будет выведено стандартное диалоговое окно:
[{"cardNumber":"<номер_основной_карты>", "deniedTypes":["<список_отклоненных_верификаций>"], "message":"", "verificationCode":"<код_верификации>","verificationResult":<результат_верификации>,"verificationType":"<тип_верификации>"}] |
Если верификация на сервере не пройдена, то касса возвращается в окно выбора способа верификации, где можно выбрать другой способ верификации.
Порядок поиска и добавления карты приведен на схеме:
Принцип выбора метода верификации приведен ниже:
При успешном прохождении верификации карта будет добавлена в чек, иначе процесс добавления карты будет прерван, карта не будет добавлена в чек.
В кассовом ПО Artix реализована возможность дополнительной верификации карт. В случае, когда через дополнительную карту (карта партнера) необходимо найти основную карту, используется дополнительная верификация.
Чтобы установить дополнительную верификацию карт, необходимо:
Dictionaries
таблица Cardgroupverification
поле extraverification
).Dictionaries
таблица Verification
поле attribute
).Если указано несколько способов дополнительной верификации для одного источника ввода, то будет выбран первый указанный способ верификации. |
Порядок верификации карт приведен ниже:
Дополнительная верификации производится сразу после добавления карты и определения для группы карт способов верификации:
После прохождения дополнительной верификации будет осуществлена основная верификация.
Если дополнительная верификация не была пройдена, то процесс добавления карты будет прерван.
Для одной и той же группы карт, способа ввода и типа верификации не во всех случаях может потребоваться подтверждение подлинности. Например, при верификации по смс с торговой сети взимается плата за отправку сообщения, но в случае, если клиент не расплачивается бонусными баллами, то проведение верификации может стать необязательной процедурой.
Необходимость подтверждения подлинности определяется признаком верификации, который указывается для типа (способа) верификации.
Признак верификации может принимать следующие значения:
В случае, если для карт клиента используется верификация по условию, то при добавлении в чек верификация карты не требуется, устанавливается признак автоматической верификации. При оплате бонусными баллами проверяется пороговая сумма, разрешенная для оплаты без верификации. Пороговая сумма задается параметром autoVerificationBonusLimit
в конфигурационном файле /linuxcash/cash/conf/ncash.ini
в секции [Security.Restrictions]
.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
autoVerificationBonusLimit | вещественный |
| Максимальное количество бонусных баллов для оплаты без запроса верификации для автоверифицированных карт (признак верификации "по условию") | По умолчанию – без ограничений |
В кассовом ПО Artix реализована возможность проверки пороговой суммы при оплате бонусными баллами в "домашнем магазине".
Dictionaries
таблица Card
поле shopcode
), то:autoVerificationBonusLimit
),checkBonusLimitWithEmptyShopCode
:true
если пороговая сумма превышена, то будет осуществлена верификация,false
независимо от пороговой суммы будет запрошена верификация карты.[Security.Restrictions] ; Параметры, относящиеся к безопасности ... ; Проверять лимит бонусных баллов для оплаты без верификации если домашний магазин карты не заполнен ; если выключено, верификация проводится независимо от превышения лимита autoVerificationBonusLimit ; по умолчанию true ;checkBonusLimitWithEmptyShopCode = true |
Признак верификации проверяется при добавлении карты в чек и оплате покупки бонусными баллами.
Порядок проверки признака верификации показан в таблице и на схеме:
Признак верификации | |||
---|---|---|---|
Безусловная | Отложенная | По условию | |
Добавление карты в чек | Верификация проводится обязательно. Карта добавляется в чек с признаком "верифицирована". Если верификация не пройдена, то на экран будет выведено сообщение об ошибке. | Карта добавляется в чек с признаком "ожидает верификации". | Карта добавляется в чек с признаком "автоматическая верификация". |
Оплата бонусами | Т.к. карта уже верифицирована, то оплата чека будет производится без дополнительных запросов. | После указания суммы оплаты вызывается верификация карты. Оплата бонусами возможна только после прохождения верификации. | После указания суммы оплаты бонусными баллами проверяется пороговая сумма. Если пороговая сумма не превышена, то оплата чека производится без дополнительных запросов. Если пороговая сумма превышена, то запрашивается верификация карты тем способом, который настроен, например, по смс. |
Принцип верификации при оплате бонусными баллами: