Как избежать задвоения платежных поручений в 1С:ERP при загрузке банковской выписки

Программист 1С v8.3 (Управляемые формы) Управленческий учет
← На главную

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

Разберем механизмы сопоставления документов при загрузке

Для начала проанализируем ситуацию, почему стандартный механизм обмена «Клиент-банк» не находит созданный вручную документ. Типовой алгоритм поиска 1С:ERP при импорте файла .txt (формат 1С/SMS) ориентируется на следующие ключевые реквизиты — для точности сопоставления есть автоматическая обработка платежей после загрузки выписки.

  1. Номер документа: Это самый «болезненный» реквизит. Банки часто дополняют номер префиксами или ведущими нулями (например, вместо «123» в файле может быть «00000123»). Если номер в системе не совпадает символ в символ, поиск не сработает.
  2. Дата документа: Часто пользователь вводит документ датой его создания, а банк проводит операцию следующим днем. Если в настройках поиска стоит жесткое ограничение по дате, система проигнорирует существующий документ.
  3. Сумма и валюта: Эти параметры должны совпадать идеально.
  4. ИНН/КПП контрагента и расчетный счет: Ошибки в выборе расчетного счета при ручном вводе — частая причина появления дублей.

Выясним причину технического сбоя в коде. В модулях обработки загрузки выписки часто используется логика, подобная этой:


ПараметрыПоиска = Новый Структура;
ПараметрыПоиска.Вставить("Номер", НомерИзФайла);
ПараметрыПоиска.Вставить("Дата", ДатаИзФайла);
ПараметрыПоиска.Вставить("СуммаДокумента", СуммаИзФайла);

НайденныеСсылки = Документы.СписаниеБезналичныхДенежныхСредств.НайтиПоРеквизитам(ПараметрыПоиска);
Если НайденныеСсылки.Количество() = 0 Тогда
    // Создание нового документа, что приводит к задвоению
КонецЕсли;

Методология правильной работы: использование статусов

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

  1. Ответственный сотрудник создает документ Списание безналичных денежных средств в статусе Не согласовано или Подготовлено — есть модуль согласования и контроля статусов объектов.
  2. После одобрения статус меняется на К оплате. В этот момент документ уже делает движения в оперативных регистрах (например, в платежном календаре).
  3. При загрузке выписки из банка система должна не создавать новый документ, а найти существующий со статусом К оплате и перевести его в статус Проведено банком, установив дату проведения — удобнее через обработка заполнения реквизитов при загрузке выписки.

Если же мы создаем «Поступление» вручную, важно понимать, что до загрузки выписки оно не должно иметь признака Проведено банком. Только загрузка выписки должна ставить эту «галочку».

Переход на технологию DirectBank

Разберем, почему классический обмен файлами проигрывает современным методам. Мы настоятельно рекомендуем рассмотреть переход на DirectBank. Это технология прямого взаимодействия с банком без выгрузки промежуточных файлов.

Преимущества DirectBank в контексте борьбы с дублями:

Настройка оперативного учета через Заявки

Часто пользователи создают платежки раньше времени, чтобы «видеть деньги в отчетах». Посмотрим на более правильный подход. Для целей оперативного планирования в 1С:ERP предназначен блок Казначейство — Планирование ДДС.

Вместо создания фактических документов движения денег, используйте:

  1. Заявка на расходование денежных средств — для планирования списаний.
  2. Ожидаемое поступление денежных средств — для планирования приходов.

Эти документы формируют Платежный календарь. В нем вы будете видеть остатки на счетах с учетом будущих движений, не создавая при этом «черновики» реальных платежек, которые потом задваиваются — для этого подойдёт инструмент планирования ДДС и платежного календаря.

Как излечить уже возникшее задвоение

Если проблема уже возникла и в базе накопились сотни дублей, проанализируем инструменты исправления. В 1С:ERP существует встроенная обработка «Поиск и удаление дублей» (раздел Администрирование — Обслуживание) — есть универсальная обработка поиска и удаления дублей.

При настройке поиска укажите следующие критерии:

После поиска система предложит объединить документы. Важно выбрать в качестве «Оригинала» тот документ, который был загружен из банка, так как он содержит верные идентификаторы для последующих обменов.

Пошаговая инструкция по настройке загрузки

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

  1. Зайдите в настройки НСИ и администрирование — Казначейство. Убедитесь, что включены опции использования заявок.
  2. В настройках обмена с банком (в карточке банковского счета) проверьте правила заполнения реквизитов.
  3. Проверьте, включена ли проверка уникальности номеров в параметрах учета.
  4. Приучите сотрудников не вводить Поступление безналичных денежных средств вручную. В 1С:ERP это делается через рабочее место Безналичные платежи на вкладке К поступлению, где система сама предлагает создать документы на основании заказов или накладных, что значительно снижает риск ошибок в реквизитах.

Таким образом, для решения проблемы задвоения необходимо сочетать технические настройки (DirectBank) и методологические изменения (использование статусов и заявок). Проанализировав бизнес-процесс компании, вы сможете выбрать наиболее подходящий путь автоматизации казначейства.

← На главную