- PVSM.RU - https://www.pvsm.ru -

Зачем «Яндекс» запустил передачу фискальных данных как услугу

Леонид Шныр, руководитель сервиса Яндекс.ОФД о новых правилах работы с кассовой техникой для интернет-магазинов и роли «Яндекса»

Поправки к федеральному закону номер 54 «О применении контрольно-кассовой техники» принесли для рынка довольно много новых понятий, связанных с процессом передачи фискальных данных с чеков от продавцов в Федеральную налоговую службу. Стоит сказать, что сама по себе процедура не уникальна, в мире есть аналогичные схемы, например, в Корее, Чехии и ряде других стран.

Среди прочего, появилось понятие оператор фискальных данных (ОФД). Всего на рынке уже работают 12 ОФД, в числе которых теперь и «Яндекс», и более 20 производителей контрольно-кассовой техники, и число участников скорее всего будет увеличиваться.

Почему появился протокол обмена фискальными данными

Если раньше фискальные данные записывались в кассе в «электронной контрольной ленте защищённой» (ЭКЛЗ) и затем вручную передавались в ФНС, по новым правилам обмен происходит автоматически через оператора фискальных данных, при этом фискальные данные по-прежнему сохраняются и в кассе в фискальном накопителе (ФН). Прежде чем попасть в ФНС, данные от кассы собираются ОФД, и это происходит по определенному протоколу. Его спецификация была предложена и описана ФНС. Реализация же оставалась на стороне участников рынка.
Касса и ОФД общаются между собой в бинарном формате. Благодаря протоколу касса и ОФД понимают друг друга — он регламентирует, где какие данные записаны. Например, сначала номер фискального документа, потом дата, название торговой точки, фискальный признак и так далее. Таким образом, можно взять бинарное сообщение от кассы и преобразовать его в фискальный документ, или наоборот — взять фискальный документ и перевести его в бинарный формат, чтобы касса поняла. Использование бинарного формата является наиболее простым с технической точки зрения решением — с этим форматом могут довольно быстро работать даже не очень современные и продвинутые модели касс, в том числе старые модели после модернизации под требования 54ФЗ. Потенциально это удешевляет стоимость производства соответствующего железа, однако из-за дефицита на рынке его цена еще довольно высока.

Трудности реализации

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

Примечательно, что сам процесс реализации занял около месяца, и, возможно, если бы в нашем распоряжении была готовая версия протокола, мы бы серьезно сэкономили время (как и другие компании). Помимо того, что протокол нужно было делать с нуля (реализованных вариантов в открытом доступе не было), на первом этапе было сразу несколько препятствий — дефицит оборудования для тестирования (сейчас оно уже есть), отсутствие в описании протокола конкретных алгоритмов (их приходилось подбирать самостоятельно и тестировать каждый новый вариант) и, наконец, две части предложенного протокола (взаимодействие кассы и ОФД и взаимодействие ОФД и ФНС) были просто не совместимы друг с другом (и это тоже пришлось дорабатывать опытным путём). Итого, три недели ушло на реализацию взаимодействия ОФД с кассой (в том числе доработку самого протокола) и неделя на доработку кода.

Наличие на рынке открытого варианта протокола могло бы, на наш взгляд, сильно облегчить жизнь и действующим и будущим игрокам. Это подтолкнуло нас к тому, чтобы открыть доступ к нашей версии протокола [1]всем желающим. Как показал опыт ClickHouse, делиться знаниями при создании технически сложных продуктов может быть весьма привлекательным решением. Тем более что со стороны ФНС наверняка еще будут изменения и в форматах обмена, и в форматно-логическом контроле, под которые всем тоже нужно будет адаптировать свои продукты. Совместная работа позволит сконцентрироваться на продуктах для пользователей и меньше времени тратить на внесение необходимых изменений в технологии обмена данными.

Дополнительно мы выложили JSON схемы фискальных документов, по которым осуществляется форматно-логический контроль расшифрованных документов от касс. Их можно использовать для проверки того, насколько сформированное сообщение от кассы соответствует требованиям, которые заявлены в протоколе.

Как использовать открытый протокол

Зачем это нужно и что с этим делать? Очевидно, что данное открытое решение касается ограниченного круга лиц — производителей касс, операторов фискальных данных, экспертных организаций. Но мы ожидаем, что оно, с одной стороны, облегчит им жизнь, а с другой — поможет систематизировать новую для российского рынка процедуру. Например, если ФНС вносит изменения в спецификацию протокола, то наличие единого открытого для всех варианта, который соответствует всем изменениям, позволит быстро протестировать оборудование — корректно ли оно работает.

В качестве примера использования мы создали «Эмулятор ОФД [1]» — приложение, которое получает сообщение от кассы, расшифровывает его и в ответ отправляет кассе подтверждение о приеме документа. Оно вполне может быть использовано для тестирования новых касс и ОФД. Наше приложение уже доступно всем желающим. А мы открыты для обсуждений и совместной работы с этим форматом.

Источник [2]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/yandeks/262395

Ссылки в тексте:

[1] открыть доступ к нашей версии протокола : https://github.com/yandex/ofd

[2] Источник: https://roem.ru/18-08-2017/257228/yandex-ofd/