Способы оплаты
В режиме оплаты чека отображаются кнопки оплаты. Количество этих кнопок и способы оплаты можно настроить. Эти же способы оплаты дублируются в режиме приветствия покупателя и в окне возврата чека.
По умолчанию кнопки располагаются в одну строку (в теме slim – в одну колонку), относительное расположение также можно изменить настройками.
По умолчанию используются оплаты с типами: cash, bankCard, bonus, giftCard.
Нельзя изменить параметры только одного из способов оплаты по умолчанию. Необходимо указывать сразу все необходимые способы.
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check.payments.<строка>.<столбец>], настройка типов оплаты | ||
type |
| Тип оплаты, обязателен к заполнению.
Для использования оплаты через отложенные чеки необходимо включить плагин |
| code | целое положительное число, | Дополнительный код оплаты. Используется для привязки к типам оплаты в интеграциях. Для Artix – это код валюты. |
| name | id текста i18n или текст | id текста i18n или текст, который отображается в режиме оплаты |
| welcomeName | id текста i18n или текст | id текста i18n или текст, который отображается в приветствии |
| returnName | id текста i18n или текст | id текста i18n или текст, который отображается в режиме возврата |
| icon |
| Иконка, название из темы оформления или путь до файла |
| idleTimeout | целое положительное число, по умолчанию 0 (не задано) | Таймаут бездействия, в секундах. Позволяет переопределить значение из настройки Sco:idlenessWaitTimeout в момент оплаты. Не используется для оплаты наличными |
| callAttendant |
| Требуется консультант. Если настройка включена, то при выборе определенного типа оплаты сработает вызов консультанта для подтверждения оплаты |
Файл /opt/sst-sco/conf/check.ini, секция [Check.payments], настройка типов оплаты | ||
| vertical |
| Разместить кнопки вертикально. Если все типы оплаты размещены в одну строку, то есть в секции не указывается столбец, тогда этой настройкой можно отобразить все оплаты в виде одного столбца. |
| spacing | числовое значение по умолчанию -1 (не задано) | Расстояние между кнопками в пикселях |
Строка и столбец - это числовые значения, которые задают относительный порядок кнопок. Столбец опционален, и если столбец не указан, значит в строке одна кнопка.
В теме оформления slim установлена настройка [Check.payments].
Параметры name, welcomeName, returnName и icon имеют значения по умолчанию для разных типов оплаты:
| type | name | welcomeName | returnName | icon |
|---|---|---|---|---|
| cash | paymentCash | welcomeCash | returnCash | icon.cash |
| bankCard | paymentBankCard | welcomeBankCard | returnBankCard | icon.creditCard |
| bonus | paymentBonus | welcomeBonus | returnBonus | icon.bonusCard |
| giftCard | paymentGiftCard | welcomeGiftCard | returnGiftCard | icon.giftCard |
| qr | paymentQr | welcomeQr | returnQr | icon.paymentQr |
| qrScan | paymentQrScan | welcomeQrScan | returnQrScan | icon.paymentQrScan |
deferredCheck | paymentDeferredCheck | welcomeDeferredCheck | returnDeferredCheck | icon.paymentDeferredCheck |
Пример настройки четырех типов оплаты в одну строку (столбец с темой slim)
[Check.payments.1] type = bankCard code = 3 [Check.payments.2] type = bonus [Check.payments.3] type = giftCard [Check.payments.4] type = qrScan code = 7 name = Система\nбыстрых\nплатежей welcomeName = Система быстрых платежей returnName = Система быстр.\nплатежей
В теме оформления добавляется иконка СБП в подкаталог icons с названием paymentqrscan.png.
Пример настройки вызова консультанта для определенного типа оплаты
[Check.payments.4] type = deferredCheck code = 4 callAttendant = true
Пример добавления четырех типов оплаты в две строки
[Check.payments.1.1] type = bankCard code = 3 [Check.payments.1.2] type = bonus [Check.payments.2.1] type = qr code = 5 name = PaymeGO welcomeName = PaymeGO returnName = PaymeGO icon = icon.paymeGo [Check.payments.2.2] type = qr code = 6 name = CLICK PASS welcomeName = CLICK PASS returnName = CLICK PASS icon = icon.clickPass
Если используется два способа оплаты с одинаковым типом, то для иконок потребуется задать полный путь до изображения или добавить новые параметры в тему:
{
"default" : {
"icon": {
"paymeGo": "./icons/paymeGo.png",
"clickPass": "./icons/clickPass.png"
}
}
}
В теме оформления в подкаталог icons добавляются иконки paymeGo.png и clickPass.png.
На экране с разрешением 1024x768 по умолчанию две строки способов оплат не влезают. Это можно исправить, добавив в стили темы оформления следующее:
#PaymentForm .ActionButton[command="CHECK_ADDPAYMENT"] {
padding: 10px 15px;
height: -1;
width: 220px;
qproperty-toolButtonStyle: "ToolButtonTextBesideIcon";
qproperty-textAlignment: "AlignLeft|AlignVCenter";
qproperty-iconSpacing: 10;
qproperty-iconSize: 50px;
}
Пример увеличения размера иконок на кнопках
#PaymentForm .ActionButton[command="CHECK_ADDPAYMENT"] {
qproperty-iconSize: 100px;
}
Пример отображения только иконок на кнопках
#PaymentForm .ActionButton[command="CHECK_ADDPAYMENT"] {
qproperty-iconSize: 100px;
qproperty-toolButtonStyle: "ToolButtonIconOnly";
padding: 0;
}
Автоматический выбор единственной доступной оплаты
Есть возможность автоматически выбирать способ оплаты, если доступна только одна. При этом будет учитываться активность оплат. Например, настроены оплаты по терминалу и бонусами, но списание баллов недоступно (кнопка не активна), тогда будет автоматически выбрана оплата по терминалу. Если списание баллов доступно, тогда покупатель сам выбирает один из способов оплаты.
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
autoSinglePayment |
| Автоматическая оплата, если доступен только один способ. Если при переходе в оплату доступен только один тип оплаты, то сразу выполняется оплата этим типом |
Автоматический выбор приоритетной оплаты по СБП
Есть возможность автоматически предлагать покупателю приоритетный способ оплаты по СБП с отображением соответствующего QR-кода, а также других доступных оплат.
При частичной оплате (например, применение бонусов, подарочная карта не на всю сумму) для оставшейся суммы будет повторно предложен приоритетный способ оплаты.
При отказе от приоритетного способа оплаты без выбора других способов будет выполнен переход в режим формирования чека.
При истечении таймаута ожидания оплаты по СБП или при возникновении ошибки оплаты будет отображено стандартное окно выбора оплаты.
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
autoPayment | целое положительное число | Автоматическая оплата. В значении параметра необходимо указать код типа оплаты (из БД Автоматическая оплата не будет вызвана, если:
|
- Установлен пакет
artix-sbersbp. - В БД
DictionariesтаблицеValutполе codе указан код типа оплаты (валюты) равный2. В значении параметра autoPayment указан код типа оплаты (валюты) из БД:
[Check] autoPayment = 2
Отображение покупателю кнопки "Отмена" в диалоге оплаты по QR-коду
Настройка showPaymentQrCancel позволяет отображать кнопку "Отмена" в диалоге оплаты по QR-коду.
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
showPaymentQrCancel |
| Отображение кнопки отмены оплаты QR-кодом покупателю. Если настройка выключена, то кнопка "Отмена" не отображается покупателю. Для отмены оплаты необходима авторизация консультанта |
Отображение ошибок оплаты покупателю
Настройка позволяет отображать ошибки, возникшие при оплате, покупателю вместо консультанта. Не влияет на оплату наличными (cash).
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
paymentErrorForCustomer |
| Отображать покупателю любые ошибки оплаты |
| paymentErrorTimeout | целое положительное число по умолчанию 5 | Таймаут вызова консультанта после отображения ошибки оплаты, в секундах |
Если включен контроль веса, то ошибки контроля веса могут быть отложены до закрытия диалога ошибки оплаты.
Принудительное добавление оплаты в режиме редактирования
Возникают ситуации, когда из-за проблем с получением ответа от процессинга оплата завершается с ошибкой, а деньги у покупателя списываются. В таких случаях допускается добавить оплату в чек принудительно через меню редактирования чека.
Отображение кнопки "Добавление оплаты" определяется параметром showAddPaymentInCheckEdit.
| Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
| showAddPaymentInCheckEdit |
| Отображение кнопки добавления оплаты в режиме редактирования чека |
Для корректной работы необходимо задать для параметра editInForming значение false в конфигурационных файлах /opt/sst-sco/conf/check.ini и /opt/sst-sco/conf/artix.ini в секции [Check].
Код валюты, который будет использован при закрытии чека, определяется параметром paymentCodeInCheckEdit.
| Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
| paymentCodeInCheckEdit | строковый | Список кодов валют при добавлении оплаты в режиме редактирования чека paymentCodeInCheckEdit = "1,2,3" |
Режим работы кнопки "Добавление оплаты" определяется параметром paymentInCheckEditMode.
| Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
| paymentInCheckEditMode |
| Режим работы добавления оплаты в редактировании чека.
|
После нажатия кнопки (и выбора оплаты – если в параметре paymentCodeInCheckEdit задано более одного кода валюты) оплата будет добавлена в чек.
Чек необходимо закрыть вручную.
Сохранение идентификатора операции (RRN) и кода валюты процессинга при закрытии чека
Для корректной работы необходимо в параметре paymentCodeInCheckEdit указывать только один код валюты.
Возникают ситуации, когда после принудительного добавления оплаты при закрытии чека требуется сохранять идентификатор операции (RRN) и код валюты процессинга, при использовании которого произошла ошибка.
Для этого необходимо в конфигурационном файле /linuxcash/cash/conf/ncash.ini:
Добавить секцию
[DummyProcessing]и указать опцию для возможности ручного ввода RRN:Пример настройки[DummyProcessing] processingOption2 = 10
Добавить секцию
[Misc.PaymentReplacement]и задать соотнесение кодов валют вида<Код валюты заглушки> = <Код настоящей валюты>:Пример настройки[Misc.PaymentReplacement] 4 = 3
- Перед закрытием чека отобразится диалог ввода RRN. Необходимо ввести его вручную.
- После закрытия чека в БД Documents таблицу Moneyitem добавляется запись:
- в поле
operationIdсохраняется введенный RRN, - в поле
valcodeсохраняется код валюты процессинга, при использовании которого произошла ошибка, - в поле
valnameсохраняется название валюты процессинга, при использовании которого произошла ошибка.
- в поле
Настройки логики чека в интеграции
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/check.ini, секция [Check], настройки модуля чека | ||
| bonusDialog |
| Отображение диалога оплаты бонусами на стороне SCO Для корректной работы интеграции установлено false в artix.ini |
| giftCardDialog |
| Отображение диалога оплаты сертификатом на стороне SCO |
editInForming |
| Возврат в режим формирования перед редактированием чека. При переходе в режим редактирования SCO выполнит возврат в режим формирования При добавлении оплаты в режиме редактирования необходимо, чтобы значение настройки было |
Запрет оплаты валютой в зависимости от роли пользователя
В Artix:SCO реализован запрет оплаты валютой в зависимости от роли пользователя, подробнее можно прочитать в статье "Запрет оплаты валютой".