Форум OlegON > Программы и оборудование для автоматизации торговли > Кассовые программы

Работа с терминалом оплаты Сбербанка : Кассовые программы

29.03.2024 1:01


11.04.2019 17:34
FinSoft
 
Есть две схемы работы с терминалом оплаты Сбербанка - с использованием транзакций и без них.

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

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

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

Хотел поинтересоваться, кто что думает на этот счет?
11.04.2019 17:36
FinSoft
 
Уточню, что подразумевается работа в продуктовой рознице. Это может быть критично.
11.04.2019 17:45
Fomka
 
А что за транзакции, о чем речь? У нас терминалы Сбера есть, но я про такую штуку не в курсе) Знаю только про RRN при возвратах.
11.04.2019 17:57
FinSoft
 
Ну вот выдержка из доки.

Цитата:
Платеж с возможностью аварийной отмены
В некоторых случаях программное или аппаратное обеспечение ККМ не гарантирует распечатку карточных чеков и/или корректное закрытие операции в кассовой базе данных после проведения платежа по карте.
Если операция не была корректно завершена в ККМ, ее необходимо отменить по карте, чтобы восстановить авторизованную сумму на счете карты. Для этого в библиотеке Сбербанка предусмотрен механизм отката и подтверждения транзакции.
Сразу после успешного завершения платежа (например, функции 4000) транзакция попадает в «нормальное» состояние. В этом состоянии она попадет в контрольную ленту и будет обработана в конце дня.
Если кассовое ПО использует механизм отката и подтверждения транзакции, то сразу после успешного завершения платежа оно должно вызвать функцию 6003. Функция 6003 переводит транзакцию из «нормального» в «неподтвержденное» состояние. В этом состоянии транзакция не включается в контрольную ленту, а при ближайшем сеансе связи с банком (или при закрытии дня) она автоматически отменяется, восстанавливая средства на карте клиента.
После этого кассовое ПО приступает к печати чеков и закрытию операции. Если чеки успешно распечатаны и операция корректно закрыта, кассовое ПО должно вызвать функцию 6001. Эта функция переводит транзакцию в «подтвержденное» состояние. «Подтвержденное» состояние отличается от «нормального» только тем, что в «подтвержденном» состоянии аварийный откат платежа (например, с помощью функций 6003 и/или 6004) уже невозможен.
Если же кассовое ПО убедилось, что корректно завершить операцию по кассе невозможно, оно должно вызвать функцию 6004. Эта функция вызывает немедленную отмену платежа (с восстановлением средств на карте клиента) и переводит транзакцию в «отмененное» состояние. Из «отмененного» состояния, как и из «подтвержденного», переход в другие состояния невозможен.
В случае, если в процессе закрытия операции кассовое ПО «зависло» и касса была перезагружена, транзакция остается в «неподтвержденном» состоянии. Это значит, что при любом следующем платеже (неважно, по этой же карте или по другой) она автоматически отменится.
11.04.2019 18:23
Fomka
 
FinSoft, понятно. В продуктах 1С для Сбера такой функционал не реализован. Т.е. даже в официальной компоненты от Сбера этого нет.
Мне сказали, что в 1С про эту тему писали и ответ был примерно такой: "опасность того, что транзакция ошибочно останется в "неподтвержденном" состоянии и затем отменится,
куда более существенна, чем проблемы, которые такой подход решает."
11.04.2019 19:09
FinSoft
 
Я, в общем, тоже склоняюсь к такому мнению. То есть у вас на кассах происходит по второму сценарию, в случае сбоя запрашиваете карту покупателя для возврата денег? Точнее, выбор (повторно послать на ккм, вернуть деньги или подвесить чек в базе с соответствующим статусом).

Может еще такая ситуация возникнуть. Покупатель оплатил по карте, получил смс и убежал, не дожидаясь чека. Кассир его не остановил, а чек не вылез. Деньги получены и товар отдан. А там может еще и алкоголь быть. В этом случае, по идее, отменять продажу не надо, а надо оставить чек с соответствующим статусом (деньги получены, в егаис отправлено, чек не напечатан), и перед следующей продажей проверять подобный последний чек и слать его в ккм повторно.
12.04.2019 12:55
Fomka
 
Цитата:
FinSoft То есть у вас на кассах происходит по второму сценарию, в случае сбоя запрашиваете карту покупателя для возврата денег? Точнее, выбор (повторно послать на ккм, вернуть деньги или подвесить чек в базе с соответствующим статусом).
Да. Но в случае с нашим софтом там 2 варианта: чек попал в "Непробитые" или остался набранным на экране кассира. Зависит от различных факторов, в какой момент и какая ошибка прилетела в 1С.
Если чек попал в непробитые, то кассиру его просто оттуда надо пробить, уточнив, что оплата прошла.
Если не попал, то отмена операции с картой и пробиваем заново.

И, кстати, такая схема у нас и с терминалами ВТБ, за исключением нюансы, что у ВТБ можно отменить только последнюю операцию, а в Сбере можно выбрать из списка.


Цитата:
FinSoft Может еще такая ситуация возникнуть. Покупатель оплатил по карте, получил смс и убежал, не дожидаясь чека. Кассир его не остановил, а чек не вылез. Деньги получены и товар отдан. А там может еще и алкоголь быть. В этом случае, по идее, отменять продажу не надо, а надо оставить чек с соответствующим статусом (деньги получены, в егаис отправлено, чек не напечатан), и перед следующей продажей проверять подобный последний чек и слать его в ккм повторно.
Нам проще, у нас трафик маленький, егаиса нет) Ситуации такие бывают, их решаем пробитием чека мимо терминала, если банк подтвердил, что платеж не сомнительный. С офиса удаленно подключаемся, отрубаем в софте терминал, кассир чек пробивает, затем включаем обратно.
Но, опять же, это работоспособно в нашей специфике, но наверняка мало реально для продуктовых с алкашкой)
Часовой пояс GMT +3, время: 01:01.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.