Почему возникает ошибка «System error: 077» при возврате товара через эквайринговый терминал в 1С:Розница?

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

При работе с интегрированным эквайрингом в 1С:Розница пользователи часто сталкиваются с ситуацией, когда оплата проходит корректно, а при попытке оформить возврат система выдает ошибку System error: 077: Answer code is not received. Данная ошибка свидетельствует о нарушении коммуникации между 1С и банковским терминалом на уровне интерпретации команд драйвером оборудования, чаще всего — Arcus2.

Анализ причин возникновения ошибки

Разберем, почему возникает этот конфликт. Программное обеспечение Arcus2 использует файл конфигурации ops.ini, в котором прописано соответствие между цифровым кодом команды, отправляемой из 1С, и типом операции, выполняемой на терминале. Основная путаница возникает из-за того, что существуют две схожие, но технически разные операции:

  1. Универсальная отмена (Void): применяется для операций, совершенных в текущей кассовой смене, которые еще не были переданы в банк для окончательного клиринга.
  2. Возврат товара (Refund): полноценная финансовая операция списания средств, необходимая, если смена закрыта или требуется проведение возврата по строгим правилам протокола.

Если в 1С жестко прописан вызов команды, которая в ops.ini определена как «Универсальная отмена», а терминал при этом ожидает команду «Возврат» (или наоборот), возникает ошибка System error: 077. Терминал «не понимает», что от него требуется, так как запрос не соответствует текущему состоянию транзакции.

Пошаговое решение проблемы через настройку конфигурационного файла

Для исправления данной ошибки необходимо выполнить проверку и настройку файла ops.ini. Действуйте согласно следующему алгоритму:

  1. Перейдите в директорию, где установлен драйвер Arcus2 (обычно это c:\Arcus2\INI\).
  2. Найдите файл конфигурации ops.ini и откройте его с помощью текстового редактора (например, «Блокнот» от имени администратора).
  3. Найдите строки, описывающие операции 3 и 4. Обычно они выглядят следующим образом:
    
    3=1,11,ВОЗВРАТ ТОВАРА
    4=1,5,УНИВЕРСАЛЬНАЯ ОТМЕНА
    
  4. В ряде случаев, из-за специфики настроек платежных систем или прошивки терминала, коды операций могут быть инвертированы или смещены. Если вы видите, что 1С пытается вызвать «код 4», а вам требуется «возврат», попробуйте изменить значения в файле следующим образом:
    
    4=1,11,ВОЗВРАТ ТОВАРА
    3=1,5,УНИВЕРСАЛЬНАЯ ОТМЕНА
    
  5. Сохраните изменения в файле ops.ini.
  6. Перезапустите 1С:Розница для того, чтобы изменения вступили в силу и драйвер перечитал параметры конфигурации.

Важные рекомендации при настройке оборудования

Рассмотрим дополнительные аспекты, которые помогут избежать проблем в будущем:

Таким образом, проанализировав ситуацию, мы выяснили, что ошибка кроется в несоответствии команд в конфигурационном файле драйвера. Переопределение индексов операций в ops.ini позволяет восстановить корректный обмен данными между 1С и банковским оборудованием.

← На главную