Мы часто сталкиваемся с ситуацией, когда владельцы торговых точек бьют тревогу: недобросовестные кассиры могут осуществлять фиктивные возвраты товаров, переводя деньги на свои личные банковские карты. Это серьезная уязвимость, способная нанести ощутимый финансовый ущерб бизнесу. В этой статье мы подробно разберем, как технически и организационно решить эту проблему в 1С:Управление торговлей 11 (или 1С:Розница) при работе с подключенным эквайринговым терминалом. Выясним, действительно ли эту задачу нужно решать исключительно силами программиста 1С, или банк лукавит, отправляя нас дорабатывать систему.
---
Прежде чем переходить к техническим настройкам в 1С, давайте проанализируем правовую базу. Часто продавцы ошибочно полагают, что закон жестко запрещает возвращать деньги на другую карту покупателя.
---
Проанализируем, почему в типовых конфигурациях 1С (УТ 11, Розница 3.0) по умолчанию нет жесткого сравнения номеров физических карт в момент возврата.
Дело в том, что сама программа 1С напрямую не считывает данные вашей банковской карты (ее полный номер, CVV и т.д.). Она лишь обменивается командами с эквайринговым терминалом через специальный драйвер. При совершении продажи 1С передает на терминал сумму, а терминал возвращает в 1С статус операции и маскированный номер карты (например, 4111******1111) для печати чека. Сами платежные данные хранятся и обрабатываются внутри защищенного контура банковского терминала.
Поэтому при оформлении обычного возврата без интеграции терминал просто ждет, когда к нему приложат любую карту, на которую банк запишет транзакцию возврата. Чтобы защититься от этого, нам необходимо использовать современные протоколы взаимодействия.
---
Рассмотрим самый надежный способ защиты от фрода кассиров, который поддерживается большинством современных банков-эквайеров и интегрирован в последние релизы 1С.
Этот механизм называется ссылочным возвратом (Referenced Refund). Разберем по шагам, как он работает:
RRN.RRN в банк-эквайер. Банк на своей стороне мгновенно находит исходную операцию продажи и автоматически направляет деньги на ту карту, с которой была совершена покупка.Если кассир попытается оформить возврат без привязки к чеку продажи, современная настроенная система выдаст ошибку или потребует авторизации администратора.
---
Проанализируем еще один важный нюанс работы платежных систем. Важно разделять две операции:
---
Для того чтобы полностью исключить возможность мошенничества кассиров с возвратами на личные карты, рекомендуем внедрить комплекс организационных и технических мер.
Если у вас используются автономные терминалы (когда кассир вручную вбивает сумму на терминале, а в 1С просто нажимает кнопку «Оплачено картой»), риск фрода максимален. Необходимо связаться с вашим банком-эквайером и перевести терминалы в интегрированный режим работы с 1С (по протоколам Arus, СБП, DualConnector и др.). Это позволит автоматически передавать параметры транзакций и использовать RRN для ссылочных возвратов.
Обычный кассир не должен иметь возможности самостоятельно оформлять документы возврата. Настройте права доступа в 1С так, чтобы операция создания документа ВозвратТоваровОтКлиента или проведение чека на возврат требовали авторизации старшего кассира, администратора или ввода специального пароля/карты доступа руководителя.
Установите жесткое правило: любой возврат товара осуществляется только при предъявлении паспорта покупателя и заполнении бумажного заявления. ФИО в заявлении должно совпадать с ФИО владельца карты (если она именная). Кассир не сможет незаметно провести возврат на свою карту, так как при проверке у него не окажется подписанного покупателем заявления с паспортными данными.
Если покупатель утверждает, что его карта утеряна или заблокирована, кассир на фронт-офисе не должен делать возврат через эквайринговый терминал на «другую карту».
Вместо этого торговая точка должна принять у покупателя заявление с указанием полных реквизитов его банковского счета. Данное заявление передается в бухгалтерию, которая производит возврат платежным поручением из базы 1С:Бухгалтерия. Рядовой кассир на кассе физически не имеет доступа к проведению таких банковских платежей, что сводит риск фрода к нулю.
---
Если ваш банк-эквайер по какой-то причине не поддерживает ссылочные возвраты (RRN), а терминал подключен в интегрированном режиме, можно заказать программисту небольшую доработку системы 1С.
Рассмотрим логику работы такой доработки:
5412********9999) и записывается в реквизит чека.Посмотрим на пример концептуального кода, который можно внедрить в модуль обработки проведения чека на возврат:
Процедура ПередЗаписьюДокументаВозврата(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт
// Проверяем, что это документ возврата и он проводится
Если Источник.Проведен ИЛИ НЕ РежимПроведения Тогда
Возврат;
КонецЕсли;
// Получаем маску карты из исходного чека продажи
МаскаКартыПродажи = Источник.ДокументОснование.ЭквайринговаяТранзакция.МаскаКарты;
// Получаем маску карты, считанную при оформлении текущего возврата
МаскаКартыВозврата = Источник.ЭквайринговаяТранзакция.МаскаКарты;
// Сравниваем маски карт
Если ЗначениеЗаполнено(МаскаКартыПродажи) И ЗначениеЗаполнено(МаскаКартыВозврата) Тогда
Если МаскаКартыПродажи <> МаскаКартыВозврата Тогда
Отказ = Истина;
ВызватьИсключение "Ошибка! Номер карты возврата не совпадает с картой, которой производилась оплата. Операция заблокирована.";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Применение такой программной проверки совместно с административным регламентом позволит вам полностью обезопасить свой бизнес от мошеннических действий персонала на кассовых узлах.