Публичное пространство
SetRetail10 ◾️ Сервис оплаты МТС Цифровой рубль
https://crystals.atlassian.net/browse/SR-8442
https://crystals.atlassian.net/browse/CR-13237
10.4.20.0
- 1 Описание
- 2 Ценность
- 3 Примеры работы
- 3.1 Оплата
- 3.1.1 SetTouch
- 3.1.2 Клавиатурная касса
- 3.1.3 SetSCO v.3
- 3.2 Возврат
- 3.2.1 SetTouch
- 3.3 Пример отрицательного сценария
- 3.3.1 Обрыв связи
- 3.1 Оплата
- 4 Ограничения
- 5 Настройка
- 6 Экспорт в ERP
- 7 Статьи по теме
Описание
Возможность подключить на кассе оплату через "МТС Цифровой Рубль", чтобы применять оплату по QR-коду из мобильного приложений банков-партнёров и получать комиссию с данных расчетов.
Доступны следующие виды операций:
Сканирование QRC с дисплея покупателя.
Сканирование QRC с бумажного слипа.
Отмена неоплаченного заказа при выходе из оплаты.
Полный возврат.
Частичный возврат.
Ценность
Для банка:
комиссия от платежей;
повышение лояльности клиентов банка.
Для ритейлеров:
увеличение среднего чека и количества покупок
реализация дополнительной возможности оплаты для покупателей;
повышение лояльности постоянных клиентов.
Для покупателя:
дополнительная возможность оплаты;
ускорение процесса оплаты посредством QRC.
Примеры работы
Оплата
SetTouch
Кассир добавляет товары в чек и выбирает тип оплаты МТС Цифровой Рубль.
Кассир нажимает ОПЛАТИТЬ.
Касса отображает сообщение “Покупатель сканирует QR-код”.
На дисплее покупателя отображается QR-код. При отсутствии дисплея покупателя QR-код печатается на чековой ленте.
Покупатель сканирует QR-код и подтверждает оплату в приложении.
Касса регистрирует чек.
Клавиатурная касса
Кассир добавляет товары в чек и выбирает тип оплаты МТС Цифровой Рубль.
Кассир подтверждает сумму оплаты нажатием клавиши ВВОД.
Касса печатает QR-код на чековой ленте или отображает на дисплее покупателя при его наличии. Покупатель сканирует QR-код.
Дальнейший процесс оплаты аналогичен SetTouch.
SetSCO v.3
Покупатель добавляет товары в чек и нажимает Перейти к оплате.
Покупатель выбирает способ оплаты МТС Цифровой Рубль.
Касса отправляет запрос в процессинг. При успешном ответе от процессинга на экране отображается QR-код.
Далее процесс оплаты аналогичен POS/SetTouch.
Возврат
SetTouch
Кассир находит в кассе чек продажи по реквизитам.
Кассир выбирает Возврат всего чека.
3. Кассир выбирает тип оплаты для возврата МТС Цифровой Рубль.
Касса регистрирует чек возврата.
Пример отрицательного сценария
Обрыв связи
Кассир выполняет стандартные действия по добавлению товаров в чек и выбору типа оплаты МТС Цифровой рубль.
Касса не получает ответ в рамках заданных таймаутов.
Касса отображает диалоговое окно сообщением “Оплата не завершена, нет связи с процессингом. Прервать оплату или ждать завершения?“ и кнопками Ждать и Прервать.
При выборе Ждать - запускается новый цикл запросов статуса оплаты по установленному количеству попыток. Если касса снова не получает ответа, снова отображается окно с выбором.
При выборе Прервать - касса единоразово запрашивает статус платежа, если ответ не получен, то касса отменяет платеж, на кассе отображается сообщение: “Платеж не завершён. Если у покупателя списаны денежные средства, подайте запрос в бухгалтерию”.
Ограничения
Произвольный возврат не поддерживается.
Возврат только для касс POS и SetTouch.
Настройка
На сервере SetRetail/SetCentrum перейдите в раздел Интеграция → Внешние процессинги → кликните
.
Кликните Платежные системы → установите флажок
МТС Цифровой Рубль → кликните
.
Кликните по процессингу МТС Цифровой Рубль.
Введите необходимые настройки на вкладке ОБЩИЕ.
|
|
|---|---|
Адрес подключения * | Адрес подключения к процессингу. Пример: https://api-test.mtsbank.ru |
Org ID * | Уникальный ID юр.лица, выданный Платформой при регистрации юр.лица. |
Merchant ID * | Идентификатор ТСП в СБП. Присваивается при регистрации ТСП в СБП. |
Realm ID * | Идентификатор вызывающей системы. |
Username * | Логин. Выдается на организацию. |
Password * | Пароль. Выдается на организацию. |
Таймаут соединения (сек., по умолчанию: 3) | Время соединения с сервисом при попытке оплаты. |
Таймаут ожидания ответа (сек., по умолчанию: 10) | Время ожидания ответа от сервиса после инициализации оплаты. |
Количество попыток для запроса (по умолчанию: 5) | Количество попыток запроса. |
На вкладке МТС ЦИФРОВОЙ РУБЛЬ установите дополнительные флажки настроек, если требуется → кликните
.
|
|
|---|---|
| Функциональность не поддерживается в данной версии плагина. |
| Разрешен только возврат чека полностью |
| Функциональность не поддерживается в данной версии плагина. |
| Функциональность не поддерживается в данной версии плагина. |
| Функциональность не поддерживается в данной версии плагина. |
код оплаты для передачи в систему событий | mts.digital.ruble.payment.plugin |
| Функциональность не поддерживается в данной версии плагина. |
Дополнительные способы возврата, доступные всегда Если включена "возвращать дополнительными способами вместо плагина", то этот список используется вместо плагина. Выбранные типы оплат должны быть разрешены в настройках шаблона кассы. | Функциональность не поддерживается в данной версии плагина. |
Способы возврата, дополнительно доступные по решению плагина Если включена "возвращать дополнительными способами вместо плагина", то этот список не применяется. Выбранные типы оплат должны быть разрешены в настройках шаблона кассы. | Функциональность не поддерживается в данной версии плагина. |
Перейдите в Кассовый модуль → Шаблоны касс → кликните требуемый шаблон.
Перейдите на вкладку ПРОЦЕСС ТОРГОВЛИ → НАСТРОЙКИ → в секции Типы оплат установите флажок
МТС Цифровой Рубль → кликните
. Перезагрузите кассовый модуль для применения настроек.
Для настройки кнопки быстрой оплаты на кассе SetTouch подключитесь к базе данных
set на сервере SetRetail/SetCentrum с помощью PgAdmin или SetConsole.
Вставьте соответствующий тип оплаты для кассы SetTouch в соответствии с логикой ранжирования типов оплат (скрипт для выполнения можно взять из статьи по ранжированию).
Пример скрипта .
{ "paymentId" : "mts.digital.ruble.payment.plugin", "fastAccessRank" : 5, "rank" : 5}После выполнения скрипта перезагрузите кассовый модуль.
Экспорт в ERP
Экспорт в ERP-системы осуществляется в соответствии с интеграционной документацией:
Экспорт чеков из SetRetail10 в ERP (веб-сервис на стороне ERP).
Экспорт чеков из SetRetail10 в ERP (веб-сервис на стороне SetRetail10)
Экспорт чека продажи
<purchase ...>
<payments>mts.digital.ruble.payment.plugin- оплата МТС Цифровой Рубльpayment.amount- сумма оплатыoperation.id- идентификатор операции -uipиз ответа на запроса на генерацию QRC
</payments>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<purchases count="1">
<purchase tabNumber="99999" userName="Иванов Иван Иванович" operationType="true" cashOperation="INCOME" operDay="2025-10-01+03:00" shop="779" cash="2" shift="111" number="1" saletime="2025-10-01T16:57:54.821+03:00" begintime="2025-09-30T15:46:28.581+03:00" amount="149.90" discountAmount="0.00" inn="7802781104" fiscalDocNum="250;1">
<plugin-property key="PROMO_PRINT_DISABLED" value="true"/>
<plugin-property key="FISCAL_DOC_ID" value="250"/>
<plugin-property key="FN_DOC_NUM_IN_SHIFT" value="2"/>
<plugin-property key="CASHIER_NAME" value="Иванов Иван Иванович"/>
<plugin-property key="UID_PURCHASE" value="0756734e-fba0-4983-821a-d041d1a088e9"/>
<plugin-property key="KPP" value="780101001"/>
<plugin-property key="CASH_TIME_ZONE" value="+03:00"/>
<plugin-property key="SKIPPED_PAYMENTS" value="yandex.pay.payment.plugin;ExternalBankTerminalPaymentEntity"/>
<positions>
<position order="1" departNumber="583" goodsCode="0000303" barCode="4216420000303" count="1.000" cost="149.90" nds="-1.0" ndsSum="0.00" discountValue="0.00" costWithDiscount="149.90" amount="149.90" dateCommit="2025-09-30T15:46:32.069+03:00" insertType="2">
<plugin-property key="lineNumberAfterRegistration" value="1"/>
<plugin-property key="countryName" value="Россия"/>
<plugin-property key="salesTax" value="0"/>
<plugin-property key="ffdTag2108"/>
<plugin-property key="minimalPrice" value="-1"/>
</position>
</positions>
<payments>
<payment order="0" typeClass="mts.digital.ruble.payment.plugin" amount="149.90" description="МТС Цифровой Рубль">
<plugin-property key="payment.amount" value="149.90"/>
<plugin-property key="operation.id" value="411f319a61754fbbad492d40ba06e8e5"/>
</payment>
</payments>
</purchase>
</purchases>
Экспорт чека возврата
<purchase ...>
<payments>mts.digital.ruble.payment.plugin- оплата МТС Цифровой Рубльrefund.amount- сумма возвратаrefund.id- идентификатор операции -refIdиз запроса на на возврат
</payments>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<purchases count="1">
<purchase tabNumber="99999" userName="Иванов Иван Иванович" operationType="false" cashOperation="INCOME" operDay="2025-10-01+03:00" shop="779" cash="2" shift="111" number="5" saletime="2025-10-01T17:22:32.287+03:00" begintime="2025-10-01T17:22:12.888+03:00" amount="149.90" discountAmount="0.00" inn="7802781104" fiscalDocNum="252;5">
<plugin-property key="PROMO_PRINT_DISABLED" value="true"/>
<plugin-property key="FISCAL_DOC_ID" value="252"/>
<plugin-property key="FN_DOC_NUM_IN_SHIFT" value="4"/>
<plugin-property key="CASHIER_NAME" value="Иванов Иван Иванович"/>
<plugin-property key="UID_PURCHASE" value="61ddf415-d809-4cf5-ae9e-42f8a118de61"/>
<plugin-property key="KPP" value="780101001"/>
<plugin-property key="CASH_TIME_ZONE" value="+03:00"/>
<positions>
<position order="1" departNumber="583" goodsCode="0000303" barCode="4216420000303" count="1.000" cost="149.90" nds="-1.0" ndsSum="0.00" discountValue="0.00" costWithDiscount="149.90" amount="149.90" dateCommit="2025-10-01T17:22:12.903+03:00" insertType="2">
<plugin-property key="lineNumberAfterRegistration" value="1"/>
<plugin-property key="returnReason" value="3"/>
<plugin-property key="countryName" value="Россия"/>
<plugin-property key="salesTax" value="0"/>
<plugin-property key="ffdTag2108"/>
<plugin-property key="minimalPrice" value="-1"/>
</position>
</positions>
<payments>
<payment order="0" typeClass="mts.digital.ruble.payment.plugin" amount="149.90" description="МТС Цифровой Рубль">
<plugin-property key="refund.amount" value="149.90"/>
<plugin-property key="refund.id" value="282"/>
</payment>
</payments>
<original-purchase operDay="2025-10-01+03:00" shop="779" cash="2" shift="111" number="1" saletime="2025-10-01T16:57:54.821+03:00"/>
</purchase>
</purchases>