Как пробить фискальный чек, если оплата по карте прошла, а 1С требует приложить ее повторно?

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

В процессе розничной торговли часто возникает неприятная ситуация: банковский терминал успешно списывает деньги у клиента и выдает слип-чек («Одобрено»), но в этот момент происходит технический сбой. Программа 1С не получает подтверждение от терминала, фискальный чек на кассе (ККТ) не печатается, а сама операция «зависает» в статусе отложенной. При попытке повторно пробить чек система снова требует вставить карту, что приводит к двойному списанию средств. Рассмотрим подробно, как выйти из этой ситуации в конфигурациях 1С:Комплексная автоматизация 2, ERP и Розница.

Проблема: desynchronization между банком и 1С

Прежде чем переходить к решениям, проанализируем ситуацию. Проблема заключается в том, что интеграционный модуль между 1С и банковским терминалом (эквайрингом) работает в режиме транзакции. Если связь обрывается после списания денег, но до регистрации этого факта в базе данных, документ Чек ККМ остается не проведенным или в статусе «отложен». Наша задача — зафиксировать в системе факт оплаты без физического обращения к терминалу и пробить фискальный чек на ККТ.

Способ 1: Использование фиктивного (автономного) терминала

Этот метод считается самым универсальным и безопасным. Мы создадим «виртуальный» терминал, который не имеет связи с реальным оборудованием, чтобы 1С «поверила» в успешную оплату.

  1. Перейдем в раздел НСИ и администрирование (или «Продажи») — Эквайринговые терминалы.
  2. Создадим новый элемент справочника. Назовем его, например, «Временный (без подключения)».
  3. Важный момент: в поле Подключаемое оборудование не нужно ничего выбирать. Оставьте его пустым. Это сделает терминал автономным.
  4. Теперь вернемся в наш проблемный Чек ККМ. Если он находится в режиме РМК и требует карту, закроем интерфейс РМК и откроем сам документ «Чек».
  5. В табличной части «Оплата» заменим реальный терминал на наш новый «Временный».
  6. Нажмем кнопку Пробить чек. Поскольку терминал не подключен, программа просто спросит номер ссылки (RRN) или предложит подтвердить оплату вручную.
  7. После успешного выхода фискального чека временный терминал можно пометить на удаление.

Способ 2: Пробитие чека напрямую из формы документа (минуя РМК)

Часто интерфейс Рабочего места кассира (РМК) накладывает жесткие ограничения на редактирование чеков. Разберем, как обойти это через форму самого документа.

Проанализируем поведение системы: в РМК при нажатии «Оплатить» запускается сложный алгоритм опроса оборудования. Однако, если открыть Чек ККМ из списка документов (Продажи — Чеки ККМ), функционал может отличаться. Попробуем выполнить следующие шаги:

  1. Найдем «отложенный» чек в списке.
  2. Попробуем его провести (кнопка Провести). Если система выдает ошибку заполнения оплат, переходим в форму документа.
  3. Проверим вкладку «Оплата». Если запись об эквайринговой операции уже создана, но чек не пробит, иногда достаточно просто нажать кнопку Пробить чек непосредственно в форме документа.
  4. В ряде конфигураций (например, в «Рознице») этот метод позволяет игнорировать повторный запрос к терминалу, если статус оплаты в регистрах уже зафиксирован как «выполнено».

Способ 3: Создание документа «Операция по платежной карте»

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

Выясним причину блокировки: 1С не видит движения по регистру Расчеты по эквайрингу. Чтобы исправить это, можно создать документ Операция по платежной карте (раздел Казначейство) с видом операции «Поступление оплаты от клиента». После его проведения мы фиксируем долг за банком и погашаем долг клиента. На основании этой операции можно попытаться сформировать Чек ККМ. Этот метод сложнее, так как требует корректного указания всех аналитик учета, но он гарантирует чистоту взаиморасчетов.

Способ 4: Ручная фискализация через «Тест драйвера ККТ»

Если 1С категорически отказывается печатать чек из-за программных ошибок, а товар клиенту отдать нужно, воспользуемся сервисным ПО производителя кассы (например, «Тест драйвера АТОЛ» или «Штрих-М»).

Внимание: Этот метод требует определенных навыков и осторожности, так как данные в ОФД уйдут в обход 1С.

  1. Закроем 1С, чтобы освободить порт кассы.
  2. Откроем утилиту Тест драйвера ККТ.
  3. Перейдем в раздел формирования чеков (Регистрация).
  4. Вручную добавим позиции номенклатуры, их цену и количество.
  5. Критически важно: при выборе типа оплаты укажите Электронными (или «Безналичными»), чтобы сумма не попала в кассовый отчет как «Наличные».
  6. Нажмем «Сформировать чек». Касса выдаст фискальный документ.
  7. Вернемся в 1С. Поскольку в ОФД данные уже ушли, нам нужно просто «закрыть» документ в программе. Для этого можно использовать метод с автономным терминалом (Способ 1), чтобы 1С просто провела чек, но физически не посылала команду на ККТ (для этого временно отключите ККТ в настройках или используйте эмулятор).

Способ 5: Оформление чека коррекции

Если смена уже закрыта, а ошибка обнаружилась только на следующий день (например, при сверке итогов), обычный чек пробить уже нельзя. Согласно 54-ФЗ, в этом случае оформляется Чек коррекции.

  1. Создаем документ Чек коррекции.
  2. Выбираем тип коррекции: «Самостоятельно».
  3. Указываем причину: «Неприменение ККТ» (так как оплата была, а чек не вышел).
  4. В способах оплаты выбираем «Безналичные».
  5. Пробиваем чек. Это легализует поступившие на счет деньги перед налоговой.

Рекомендации по предотвращению ошибок

Посмотрим на ситуацию шире: почему это происходит? Чаще всего причина в нестабильном соединении или кэше драйвера. Рекомендуем:

Используя приведенные выше инструкции, вы сможете оперативно исправить ошибки в работе кассы и избежать недовольства клиентов при повторных списаниях средств.

← На главную