Как настроить печать слипов эквайрингового терминала Verifone VX820 в 1С 7.7?

Программист 1С v7.7 Управленческий учет Торговля и дистрибуция
← На главную

При работе с эквайринговым терминалом Verifone VX820 в связке с 1С часто возникает проблема: оплата проходит успешно, смена закрывается, но бумажный слип-чек на печать не выводится. Давайте разберемся, почему это происходит и как реализовать надежную печать слипов.

Понимание архитектуры работы терминала

Важно понимать, что при использовании стандартного софта Сбербанка сам пин-пад (терминал) не отправляет данные на принтер напрямую, если вы работаете через интеграцию. Терминал или драйвер формируют текстовый файл, который содержит слип. Этот файл обычно сохраняется в ту же папку, где располагается библиотека SBRF.dll. Кассовое программное обеспечение должно «подхватить» этот файл и вывести его содержимое на печать как обычный текстовый документ.

Решение 1: Использование интеграции напрямую через библиотеку Сбербанка

Многие разработчики сталкиваются с тем, что драйверы сторонних производителей (например, АТОЛ) могут работать нестабильно или требовать дополнительных настроек. Альтернативным и зачастую более надежным способом для 1С 7.7 является интеграция напрямую через библиотеку Сбербанка. Разберем основные этапы такой работы:

  1. Отказ от посредников: Мы можем исключить драйвер платежных систем, обращаясь напрямую к методам SBRF.dll. Это позволяет избежать лишних затрат и упростить отладку.
  2. Работа с COM-объектом: Для реализации взаимодействия используйте объект SBRFCOM.SBRFClient. В системе 1С 7.7 создание объекта выглядит следующим образом:
    
    ОбъектСбер = СоздатьОбъект(\"SBRFCOM.SBRFClient\");
    // Далее идут методы вызова оплаты или возврата
    
  3. Чтение файла слипа: После успешного завершения транзакции библиотека создает текстовый файл. Ваша задача — реализовать в 1С механизм считывания этого файла. Для этого используйте объект Текст:
    
    Текст = СоздатьОбъект(\"Текст\");
    Текст.Открыть(ПутьКФайлуСлипа);
    // Вывод на печать
    Текст.Показать(); // или отправка на принтер
    

Важные технические нюансы при настройке

Чтобы система работала без сбоев, обратите внимание на следующие аспекты:

Рекомендации по реализации

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

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

← На главную