Описание продукта
Каждый раз, когда клиент совершает покупку с помощью банковской карты, банк фиксирует информацию о транзакции. Держатель карты может увидеть сумму, место и время покупки в личном кабинете.
Информацией о купленных товарах и их цене оперируют независимые от банков организации — операторы фискальных данных: они собирают такие данные и передают в федеральную налоговую службу. До недавнего времени покупатель мог получить информацию о покупке только в момент оплаты на бумажном кассовом чеке или по электронной почте.
Команда Лиги цифровой экономики и Национальной системы платежных карт (НСПК) разработала ПО, которое позволяет однозначно связать каждую транзакцию и фискальные данные о покупке. Теперь клиенты нескольких банков могут получить чеки по большинству покупок через мобильное приложение в любое время после совершения транзакции. Фактически, разработка снимает необходимость в бумажных чеках.
Цель проекта:
Предоставить банкам и их клиентам постоянный доступ к кассовым чекам их транзакций в электронном виде.
Результаты проекта:
За первые 4 месяца работы к системе подключены семь крупнейших ОФД и несколько банков:
Особенности проекта:
Система обрабатывает около 50 миллионов чеков и транзакций каждый день. При этих объемах поиск и отгрузка банку фискальных данных по транзакции занимает 3-4 часа. Количество данных растет с подключением новых участников и увеличением объема безналичного расчета, поэтому в архитектуре системы заложена возможность для масштабирования.
Разработка математического алгоритма привязки чеков и транзакций оказалась нетривиальной задачей, поскольку не существует параметров, по которым можно однозначно сопоставить эти объекты. Для решения задачи команда использовала самообучающийся вероятностный алгоритм, который эффективно находит подходящие пары транзакция-чек.
Основным языком программирования на проекте стал Kotlin.