Как я интегрировал POS-терминал и ФР IKKM-Touch в 1С: предприятие

  • Tutorial
image

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

Оригинальная статья в моем исполнении на эту тему уже есть на просторах интернета, а этот вариант переписан и доработан специально для читателей Хабра с соблюдением правил (надеюсь, ничего не нарушил). Итак…

Взаимодействие кассового оборудования с платформой 1С


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

При OFFLINE обмене


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

image

Курьер, к примеру, берет аппарат и едет в поле по заказам, раздавая клиентам фискальные чеки и принимая наличку и карты банков к оплате. После окончания рабочего дня, работник возвращается для сдачи отчета и денег, аппарат подключается к локальной сети предприятия и выгружает результаты рабочей смены (отчет о розничных продажах, см. рисунок ниже).

image

Классика жанра-ONLINE обмен


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

И еще пару важностей перед началом интеграции


Поскольку аппарат является и кассовым, и одновременно эквайринг-терминалом, в случае ONLINE обмена к платформе 1С он цепляется двумя разными драйверами (как два отдельных устройства).

Интегрировать будем при помощи:
драйвера фискального регистратора версии 1.9 для платформы 1С 8.3
драйвера эквайринг-терминала версии 1.9 для той же платформы
Программное обеспечение для обмена данными OFFLINE IKKM Exchange версии 1.6

Интегрируем c OFFLINE обменом


Распаковываем архив iKKMExchange.rar по ссылке выше в удобное место

image

Запускаем сценарий createINI.bat, при этом создается файл настроек Settings.ini

image

Подробнее остановимся на настройках, открыв Settings.ini в любом текстовом редакторе:

image

«Log»:«off» — журнал работы приложения, по умолчанию отключен.

«RecNumLim»:2500 -макс. кол-во Stock Keeping Unit (SKU) в базе номенклатуры. 2500-цифра по умолчанию.

«IPPort»:8082 порт по которому будет производиться обмен с 1С.

«Cash»:0, «Bank»:1, «Tara»:2, «Credit»: 3 — это параметры, которые должны быть идентичны и на стороне 1С платформы.

Cash -признак обозначает прием налички.

Bank -обозначает прием оплаты по карте банка.

Tara -обозначает прием тары. Признак используется в качестве учета скидки, в действующей системе лояльности и пр.

Credit -обозначение кредита.

Чтобы обмен происходил корректно, нужно обязательно сверить и откорректировать признаки по их наименованиям и идентифицирующим цифрам на стороне 1С.

Вносим изменения на свое усмотрение, сохраним файл.

После проведенных настроек, можно запустить iKKMExchange.exe. После успешного старта, в панели задач рабочего стола появится одноименная иконка.

image

Переходим к настройке на стороне интегрируемого аппарата IKKM


Для этого в аппарате заходим в пункт «Настройка аппарата», затем в «Импорт», в открывшемся окне интерфейса выполняем процедуры, показанные в видео ниже:



Как видно в видеоинструкции, в окне «Настройка соединения» нужно обратить особое внимание на заполнение двух строк: «Справочник товаров HTTP» и «Журнал документов HTTP».

Начинаются обе ссылки с IP-адреса ПК, куда будем интегрироваться, далее прописывается порт соединения (который ранее мы указывали в Settings.ini), после косой черты команда остается без изменений.

Таким образом, строка ссылки справочника будет выглядеть так:
192.168.0.11:8082/GetPriceList с учетом порта соединения по умолчанию.
А строка журнала документов так:
192.168.0.11:8082/SalesReport

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

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

image

Теперь вернемся к папке с приложением IKKMExchange.

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

image

Обмен данными происходит через REST API. Успешный обмен в папке будет выглядеть так:

image

OFFLINE настройка на стороне 1С


Заводим новое правило обмена с подключаемым оборудованием.

image

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

image

Создадим новое правило для обмена с указанием наименования и склада для выгрузки товарных позиций, также укажем параметры по которым будет выбран товар для выгрузки в поле «Отбор».

image

При нажатии на «Обновить» во вкладке «Прайс-лист», наблюдаем заполнение табличной части ниже товарными позициями согласно отбору. Столбец «SKU» содержит код каждого товара в списке, с помощью которого уже на аппарате можно будет легко найти нужную номенклатуру. Если некоторые товары в списке не содержат кода SKU, его лучше создать при помощи клавиши «Сгенерировать SKU». Сохраняем внесенные изменения.

image

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

image

Выбираем соответствующий тип оборудования, нажимаем на «Создать», в новом окне нужно указать драйвер, правило обмена, созданное нами ранее, серийный номер аппарата указать можно, но не требуется.

image

Проведем дополнительные настройки подключаемого оборудования, нажав в этом же окне
«Настроить».
«Версия формата обмена» — 1.6 из выпадающего списка.
«Каталог выгрузки» — путь к папке с серийным номером оборудования в каталоге iKKMExchange.
«Имя файла настроек» — прописываем «Settings».
«Макса файла прайс-листа» — нужно прописать «PriceList».
«Каталог загрузки» — путь аналогичен каталогу выгрузки.
«Имя файла отчета о продажах» — указываем «SalesReport».
Сохраняем изменения и выходим.

image

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

Заходим в раздел, как показано на рисунке ниже:

image

По клавише «Создать» открывается окно добавления нового кассового оборудования в 1С.

Первым пунктом- указание корректного рабочего места.

Вторым можно указать серийный номер ККМ, это необязательное условие.

Третьим пунктом- выбирается ранее созданные настройки оборудования «KKM Offline»

В «Соответствии видов оплаты» (четвертый пункт на рисунке) указываем наименование и устанавливаем идентификационные значения из Settings.ini

image

Сохраним изменения и перейдем к последнему шагу настройки.

Проверим как данные будут выгружаться из 1С в соответствующую аппарату папку в IKKMExchange, переходим в нужный раздел 1С:

image

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

image

Выгрузка произойдет в папку с серийным номером Вашего ККМ.

image

Если открыть Settings.xml, то можно обнаружить коды оплаты, заданные нами ранее.

image

Настройка OFFLINE обмена завершена.

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

image

Настройка ONLINE обмена


Чтобы статья не превращалась в двухтомник, демонстрация настройки ONLINE обмена будет показана на примере IKKM, как фискального регистратора. Процесс настройки обмена с банковской частью аппарата (как эквайринг-терминала) выглядит аналогично. В примере используется конфигурация «1С: управление торговлей», процесс установки на других конфигурациях будет немного отличаться ввиду особенностей интерфейса, но принцип сохраняется.

Для начала, необходимо установить драйвер.

В окне пункта «РМК и оборудование», находим ссылку «Подключаемое оборудование» и переходим по ней.

image

Переходим на вкладку «Драйверы оборудования», далее нажимаем на клавишу «Добавить новый драйвер из файла».

image

Скачиваем архив с драйвером, выложенный в статье выше, и открываем его.

image

image

Первая прогрузка драйвера выдает ошибку. Чтобы продолжить интеграцию, нужно всего лишь повторить попытку инсталляции, и на второй раз драйвер будет успешно установлен.

image

image

Половина пути настройки ONLINE обмена пройдена, перейдем на вкладку «Подключение и настройка оборудования», тип подключаемого оборудования- «Фискальные регистраторы», нажимаем «Создать». Из выпадающего списка выберем iKKM.

image

image

После клика на «Настроить» откроется окно параметров выбранного нами оборудования, где стоит обратить внимание на параметр печати принтера «Кол-во символов в строке»: для встроенного в iKKM принтера (ширина бумаги 57мм) подходит стандартный параметр (двадцать четыре символа), если подключать внешний принтер (80мм и выше) можно использовать и другие значения (тридцать шесть, сорок восемь символов).

В пункте «IP-адрес» нужно указать ip без добавления порта iKKM-аппарата в сети, предварительно задав ему статический адрес посредством роутера.

«Где будем хранить API ключ» — пункт в котором размещаем удобную для Вас директорию с текстовым документом динамического API-ключа для защиты проводимых по сети операций. Каждый раз при проведении фискальной операции ключ будет заменен на другое значение.

Пункт «WEB API ключ» должен содержать текущий ключ защиты.

image

Tекущий API-ключ можно получить из веб-интерфейса аппарата, обратившись к нему после подключения к сети через браузер «ip-адрес аппарата:8080».

image

Все настройки внесены, теперь можно провести тест устройства.

image

Ура, настройка ФР успешно завершена!

Напоследок еще один трюк


Если в процессе использования аппарата, Вы не можете провести продажу через iKKM того, или иного товара (аппарат не пробивает его в чеке), проверьте настройки округления в Вашей 1С:

Правильный вариант для 1С: Розница, 1С: Аптека

image

Для 1С: Ресторан

image

Всем добра, быстрых и удобных Вам касс!
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама

Комментарии 8

    0
    Редкость какая-то. На сайте производителя написано, что продается только за тенге.
    Официальное приложение в гугл плее с 2017 года имеет 50+ скачиваний.
    Китайский оригинал, к которому добавили фискальный накопитель быстро опознать не могу.
    Термопринтер, считывание карт и NFC есть у многих. Но еще с механическими кнопками
    быстро вспомнить не могу.
      0
      Приложение в гугл тут скорее в качестве примера идет, как устройство можно интегрировать со смартфоном. А чтобы NFC и остальное железо взлетело в рамках сертификации WAY4 и Compass Plus, не говоря про PCI DSS, требуется разработать практически свою операционную систему.
        0
        В РФ по 54-ФЗ только хардварные решения. Завидую словакам. И них офицальное приложение Pokladnica существует. В Казахстане знаю про регистрацию в качестве ККМ простого андроид приложения. Не требует фискального накопителя. На простой телефон ставиться приложение reKassa.

          0
          Такое решение (аппарат из статьи)- это прежде всего интеграция эквайринг-терминала с функциями кассового аппарата. Международный стандарт EMV позволяет работать с любым банком в разных странах, а единого стандарта для кассовой техники нет. Между делом, производитель ищет дистрибьютора в России.
            0
            За свои 2.4 процента банки в РФ раздают не только свои экваринг-терминалы, но и термобумагу к ним по запросу бесплатно привозят малому бизнесу.
              0
              Дьявол в деталях, 2,4%- грабеж среди бела дня. С подобным терминалом- 2.0%, щелкните на калькуляторе за пол-года, почём Вам бумагу продают…
              0

              А как обстоят дела с поддержкой ФН, ФФД, и причими РФийскими законами? Обратил внимание на тару и кредит, их теперь нельзя использовать по методика ФНС. Опять же, есть ли передача признака предмета расчёта, и признака расчёта? Выбор СНО? Драйвера для мобильной платформы 1С?

                0
                Уважаемый innovaIT, прежде всего хотим поблагодарить Вас за Ваши публикации на Хабре, которые помогают нашим разработчикам в написании драйверов для мобильной платформы. Спасибо!
                Драйвера для моб.платформы практически готовы, одна проблема: решений на мобильной платформе в Казахстане не встречал.
                Работа с ФН тестировалась еще в 2017 году, в банковском терминале есть SAM ключи для шифрования трафика, по идеологии похожа на работу с ФН. За очень короткое время сможем локализовать решение для Российского рынка.

      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

      Самое читаемое