Кейсы

Загрузчик данных из Excel: как создавать документы в 1С на основе платежей из банка Kaspi

Доработка
Не все банки позволяют выгружать данные для 1С прямо из личного кабинета — например, в Kaspi такой функции нет. Именно поэтому бизнесу приходится вносить сведения в 1С вручную, как итог — расхождения в документах из-за ошибок и меньше времени на выполнение других важных задач. Рассказываем, какое решение мы разработали для загрузки информации о банковских платежах в 1С.

С какой задачей клиент обратился

Клиент — частная образовательная школа в Казахстане. В организации платное обучение. Она ведет учет платежей в программе «1С:Бухгалтерия предприятия».

Расчетный счет школы открыт в банке Kaspi, но у него нет автоматического обмена информацией с 1С. Именно поэтому бухгалтеру приходилось вручную вносить все данные об оплатах: специалист выгружал из личного кабинета Kaspi файл в формате Excel за нужный период и создавал в 1С документы на каждый платеж.

Школа столкнулась со следующими проблемами:

  • Ручной ввод данных занимал много времени. Бухгалтер тратил несколько часов или даже дней, чтобы внести информацию в 1С, если платежей было много. В это время специалист не мог выполнять другие рабочие задачи.

  • Из-за ручного ввода возникали ошибки в документах. Если бухгалтер их не замечал, то информация об оплатах различалась в 1С и личном кабинете банка. Например, могли не совпадать даты платежей, их суммы и Ф. И. О. Чтобы исправить недочеты, требовалось дополнительное время.

Школа решила автоматизировать выгрузку информации о платежах из банка Kaspi в 1С.

Как решили задачу

В банке Kaspi нет возможности автоматически загружать данные в 1С. Чтобы посмотреть информацию о платежах, нужно зайти в личный кабинет или выгрузить данные в файл Excel. Именно поэтому мы создали загрузчик, который автоматически считывает сведения из документа. Вот как устроен инструмент:

Форма, которая появляется при запуске загрузчика. Если нажать на кнопку «Открыть файл», на экране отображается окно для выбора Excel-документа.
Еще через форму можно перейти в настройки загрузки платежей
Форма настроек. В них указываются данные, которые будут заполняться в каждом документе: например, организация, банковский счет и получатель. Кроме того, в настройках задаются правила, куда сохранять новую информацию и как должны быть связаны данные из файла с элементами 1С.

Если в будущем данные изменятся, пользователь может обновить их через форму настроек. Например, у организации поменялся номер банковского счета. Чтобы в документах 1С заполнялись новые реквизиты, пользователю достаточно изменить данные в настройках. Тогда школе не надо каждый раз просить нас переписывать код.
Для изменения данных достаточно добавить новую информацию в настройках
Форма проверки данных платежей. Она выполняет две функции:

  • Сверка информации с данными из Excel-файла. После того как система считает сведения о платежах, она покажет их пользователю. Он сможет проверить, правильно ли информация перенеслась, а затем вручную внести исправления, если необходимо.

  • Проверка корректности данных. При нажатии на кнопку «Загрузить» система проконтролирует, есть ли пустые ячейки и ошибки в написании Ф. И. О. Если обнаружены недочеты, загрузчик отправит сообщение и подсветит некорректные поля. Пользователь не сможет создать документы по платежам, пока не исправит все ошибки.
Форма помогает пользователю проверить, правильно ли данные считались перед загрузкой в 1С
Форма создания платежей. Когда пользователь нажимает на кнопку «Загрузить», система создает такие документы: «Реализация ТМЗ и услуг», «Платежное поручение (входящее)» и «Платежный ордер (списание денежных средств)».
Документы отображаются в таблице
Загрузчик заполняет поля и вносит в них данные платежей, потом в 1С появляется список созданных документов. Пользователь может открыть их и проверить, правильно ли указана информация.

Какие сложности были в процессе разработки проекта

Из-за большой клиентской базы и ручного ввода данных мы столкнулись с двумя проблемами:

Дублирование данных в 1С. В базе клиента многие контрагенты повторялись. Это значит, что в документ попадали не те ученики и при сверке платежей были расхождения.

Чтобы решить проблему с дублированием данных, мы реализовали поиск контрагентов по нескольким параметрам. Сначала загрузчик приводит Ф. И. О. из платежки банка к единому формату: например, «Иванов Иван Иванович». Затем алгоритм работает в следующем порядке:

  1. Поиск данных по ИИН, который указан в платежке.
  2. Поиск информации по Ф. И. О. после того, как по ИИН ничего не найдено.
  3. Создание нового контрагента, если поиск по Ф. И. О. не дал результат.

Если у загрузчика всё равно не получилось найти оригинального контрагента, система сообщит пользователю, что есть дубли. Тогда он вручную сможет выбрать нужного плательщика.

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

Мы описали сложную логику проверки написания Ф. И. О. с использованием регулярных выражений. Это инструмент для поиска и замены последовательностей символов в тексте. Мы задали шаблон, которому должны соответствовать данные, и загрузчик выявляет строки, где сведения указаны с ошибками.

Например, в файле Ф. И. О. записаны некорректно: «Иванова Yльяна ИBановна». С помощью регулярного выражения можно найти все латинские и казахские символы и заменить их, чтобы привести Ф. И. О. к единому формату: «Иванова Ульяна Ивановна».

Использование регулярных выражений позволило сократить количество потенциальных ошибок. Значит, в 1С контрагенты будут записаны правильно.

Какой результат клиент получил

После разработки проекта школа внедрила загрузчик в работу, и вот какие результаты получились:

  • Бухгалтер тратит меньше времени на внесение данных в 1С. Раньше этот процесс занимал несколько часов или дней, теперь — пару минут. Документы заполняются автоматически, бухгалтеру нужно только проверить информацию.

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

Сколько стоит решение

Стоимость разработки составила 945 600 тенге. В сумму вошла не только разработка решения, но и другие услуги:

  • Доработка решения под пожелания заказчика, которые возникали в процессе создания проекта.

  • Подготовка инструкции по работе с загрузчиком.

  • Поддержка работы загрузчика — например, когда банк добавляет в файл новые колонки или, наоборот, удаляет.

  • Исправление недочетов по обращению пользователей.

Хотите тоже автоматически загружать в 1С данные о платежах, которые проходят через банк Kaspi? Заполните форму, и мы договоримся о дате консультации ⬇️