С 1 июля 2017 года в соответствии с законом 54-ФЗ все онлайн-расчеты с помощью банковских карт должны проходить через кассу, выдающую электронные чеки. А значит, на онлайн-торговлю ложатся все тяготы, свойственные офлайн-ритейлу – регистрация касс, техобслуживание, замена фискальных накопителей, хранение старых ФН.  Упрощенный вариант — не приобретать все оборудование, а воспользоваться сервисом по аренде ККТ и ПО. Мы хотим рассказать о том, как мы придумывали и реализовывали наш сервис АТОЛ Онлайн, зачем нам понадобилось ломать и вновь строить бизнес-процессы, а также о самой проектной команде и принципе работы сервиса. За подробностями — под кат.



Первые зачатки идеи сервиса появились в середине 2016 года, когда мы, проанализировав требования 54-ФЗ, начали искать решение для рынка, ранее не применявшего (хотя обязанного) кассовую технику, — интернет-торговли. Компании, которые принимают плату за контент или товар через интернет, как правило, не имеют собственной инфраструктуры, а активно используют облачные сервисы. Для них появление физического устройства, которое нужно регистрировать, подключать, обслуживать, — это лишняя головная боль.

Обладая опытом в разработке контрольно-кассовой техники, мы сделали опытный образец кассы АТОЛ 42ФС, которую можно применять только при расчетах через интернет. Она не имеет печатающего модуля, это такая маленькая коробочка со светодиодом и двумя разъемами.
Касса есть. Но что дальше? Ее нужно как-то интегрировать, эксплуатировать, чтобы она работала в режиме 24/7 365 дней в году, ведь онлайн-торговля идет круглосуточно.



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

Решение проблемы одинаковое — нужно больше касс. Даже маленькой компании оптимально использовать как минимум 2 кассы. При большом количестве покупок в интернет-магазине бесперебойную и комфортную работу можно организовать с помощью десятков онлайн-касс. Мы еще расскажем об этом подробно, а пока вернемся к идеям.

С учетом рекомендаций крупных игроков этого рынка и платежных сервисов мы подошли к идее некоего универсального сервиса, избавляющего интернет-предпринимателей от большинства проблем при переходе на ккт. В законченном виде она появилась к октябрю, ее идеологами стали Юрий Ярков и Эдуард Болмосов.

Для компании это был абсолютно новый опыт: содержание ЦОД, выстраивание модели ежемесячных платежей, работа с большим количеством пользователей.

Вопиющие в пустыне


Мы столкнулись с проблемой: рынок был плохо информирован о грозящих ему нововведениях в законодательстве. Большинство ничего не знали, а те, кто слышал, что 54-ФЗ касается расчетов в интернете, надеялись, что закон не заработает, будут перенесены сроки, найдутся пути обхода. Даже те мероприятия, которые проводили ФНС и другие структуры, в первую очередь были ориентированы на сегмент офлайн-торговли, интернет стоял в стороне.

В начале года мы поняли, что рынок не осведомлен совсем, и начали активную маркетинговую коммуникацию, провели несколько мероприятий. Мы стали знакомить рынок с основами технической реализации законодательства, так называемыми форматами фискальных документов, согласно которым вся эта экосистема работает. АТОЛ провел огромное мероприятие на РИФе, семинар на целый день в четыре слота. Казалось, что мы охватили весь рынок, но на самом деле дотянулись далеко не до всех.

Осознание рынком, что «касса нужна, что делать?» случилось в июне, а самый пик пришелся на крайние две недели перед 1 июля. В сентябре, когда начнутся первые штрафы по новому закону, наверняка поднимется вторая волна.

Анатомия сервиса



АТОЛ Онлайн условно можно разделить на три составляющие. Первая – касса АТОЛ 42ФС как устройство для фискализации платежей.


Вторая – инфраструктура, в которой размещаются кассы. Мы арендуем ЦОД с уровнем отказоустойчивости Tier 3. Кассы монтируются в сборки, на двухюнитовую основу устанавливается 48 касс. Они имеют 2 интерфейса: по USB идет питание, по Ethernet – управление и обмен данными.



Третья составляющая – программное обеспечение, фронтенд и бэкенд. Фронтенд — это личный кабинет, через который происходит менеджмент услуги: подключение к сервису, авторизация, обмен информацией, необходимой для фискализации кассы. Бэкенд следит за состоянием техники и управляет балансировкой нагрузки. Ведь у одного юрлица может быть как 1 касса, так и 1000 или 10 тыс.

Одной кассы мало


Даже для небольшого интернет-магазина одной онлайн-кассы недостаточно. Он должен работать 24 часа в сутки 7 дней в неделю, а касса – это устройство, которое иногда может выходить из строя, останавливаться на обслуживание, требовать замены фискального накопителя (ФН).

Как только у компании возникает потребность в 100% доступности операции по выдаче электронных чеков, так как риски простоя для бизнеса очень высоки — ей требуется как минимум две кассы. Вероятность выхода из строя двух касс одновременно очень низкая: мы размещаем их особым образом, не храним в одной стойке, в одной сборке, они разнесены внутри ЦОДа.

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

1. Скорость работы. ФН работает медленно. Общее время на обработку одного чека составляет примерно 0,9 с. Но на практике при работе периодически возникают сетевые задержки — поскольку чек надо отправить ОФД и получить от него ответ. В итоге при самом хорошем раскладе не стоит рассчитывать на скорость более одного чека в секунду. Если у магазина нагрузка выше и есть только одна касса, будет формироваться очередь. Запрос на формирование чека может храниться до пяти минут, после чего «отваливается» с тайм-аутом. Если у магазина 50 транзакций в секунду, в идеальном случае нужно установить 50 касс. У нас есть специальный калькулятор, с помощью которого можно посчитать, сколько касс необходимо (и экономически выгодно), чтобы обеспечить требуемую пропускную способность. Стоит также заложить запас на выход касс из строя или техобслуживание. Точные значения каждый определяет сам, но обычно при большом числе касс «запас» — это 10-15%.



2. Емкость ФН. Фискальный накопитель может подписать ограниченное количество документов. Типичная емкость — 250 тысяч документов. Если такому ФН присылать по одному документу в секунду, он заполнится за 3 дня. При этом длина чека и количество товаров в нем не имеют значения, поскольку ФН хранит только итоговую сумму, занимающую примерно 40 байт. Замена ФН — это процедура, связанная с налоговой, она требует перерегистрации и занимает 1-2 дня. Если менять эти накопители раз в два дня, работать будет невозможно. Для того, чтобы сервис не простаивал, имеет смысл рассчитать количество касс так, чтобы замена ФН происходила раз в несколько месяцев, а лучше не чаще чем раз в полгода, и кассы останавливались на замену определенными партиями. То есть так чтобы система была не перенагружена и защищена от сбоев.

Все крупные интернет-компании закладывают эти риски при подсчете и арендуют у нас от 50 касс.

Внутренний стартап


Для нас все было новое: и проект, и рынок, и сервис. Проект потребовал переработки всех внутренних бизнес-процессов в компании и организации клиентского обслуживания. Все необходимо было адаптировать и перестраивать наживую, так как времени было мало.
Создание сервиса АТОЛ Онлайн стало для компании по сути внутренним стартапом. На старте проекта численность команды не превышала 10 человек. Их силами в первый месяц был создан прототип. Когда увидели перспективы, команда стала расти, сейчас активно задействованы в развитии сервиса около 40 человек.

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

Все было как в стартапе: неизведанный рынок, поиск и реализация идей, их тестирование на потенциальных заказчиках. Использовали Agile-подход, методологию Kanban. Сначала мы пообщались с топами интернет-торговли, определили их потребности и ожидания, собрали обратную связь, поняли, что людям действительно требуется такой сервис.

Момент, когда владельцы бизнеса поверили в стартап, случился в декабре, после того как сформировался бизнес-план, первая итерация бизнес-модели. Основная сложность была связана с отсутствием достоверной информации об объеме рынка интернет-торговли. Оценки разнятся очень сильно, от 20 до 100 тысяч компаний. Мы взяли за основу, что компаний, которые ведут коммерческую деятельность с картами в интернете, порядка 40 тысяч, и каждой из них нужно минимум по одной кассе. Изначально закладывалась сильно пессимистическая модель, но и она дала понять, что этим стоит заниматься.

Разработчики активно включились в процесс развития сервиса, люди до сих пор фонтанируют идеями, им приятно участвовать в создании чего-то исторического, того, что до них не делал никто.



Бескровная интеграция


Больше всего тревог у владельцев интернет-бизнеса вызывали вопросы интеграции. Тут требовалось максимально простое решение. Мы реализовали несколько вариантов интеграции, непосредственно из CMS-системы и через платежные сервисы. У нас API для всех единый, JSON REST, достаточно простой в реализации. Он выполнен по всем требованиям стандарта фискальных документов.

С платежными системами все совсем просто. Владелец сайта подключается к нашему сервису, ставит кассу на учет, мы ее фискализируем, и на финальном этапе он получает файл настройки, там 3 строки: код группы, логин, пароль. Пользователь задает эти данные платежному сервису в личном кабинете, там есть соответствующие параметры для ввода. Все, можно работать.
Сейчас выполнена интеграция с основными игроками рынка: 14 CMS (1С-Битрикс, AdvantShop,  NetCat, RetailCRM и иные) и 19 платежными сервисами (например, Яндекс.Касса, Robokassa, интернет-эквайринг от Сбербанка и Тинькофф и др.)

Перспективы


В ближайших планах развития сервиса – модернизация API, поддержка формата фискальных документов версии 1.05, это позволит пользователю корректно отражать информацию по авансам, предоплатам, подарочным картам. Кроме того мы планируем расширять набор пользовательских функций, доступных из личного кабинета: добавить возможность проведения ручных операций по возвратам и коррекций, такую мини-CMS, а также информацию по сервисному мониторингу и подробную статистику по кассам.

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

Идеи есть, много, надо делать. Ведь АТОЛ Онлайн для компании – это возможность диверсифицировать свои решения, вывести их на развивающийся рынок Digital-технологий, выйти на другой класс потребителя. Мы давно и профессионально разрабатываем кассы, но всегда хотелось сделать что-то большее, чем просто «железку», дать еще и сервис. Это не только наш путь развития, но и многих других компаний, которые хотят в перспективе расти, развиваться, как того требует рынок: потребитель меняется, и бизнес тоже.

Комментарии (25)


  1. kirmorozov
    05.09.2017 22:54

    Подскажите у какого магазина поток заказов — 50 в секунду или 3000 в минуту?
    Из описанного выше следует, что для большинства магазинов 1 кассы более чем достаточно.
    Даже при нескольких тысячах заказов-сутки, так как чек можно отправить в течении нескольких минут, а всплески свыше 60 заказов/минуту — не самое распространенное явление и спокойно можно обработать поток на одной железке.


    1. Sly_tom_cat
      06.09.2017 10:59

      Так проблема то в том что там на ККТ как минимум:
      — 1 раз в сутки надо закрыть и открыть заново смену — это простой до 10-15 минут что уже за пределами дозволенного ФНС 5-и минутного интервала между операцией и чеком.
      — периодически (и об этом написано в статье) надо менять ФН — а это при самом лучшем раскладе — уже почти час простоя и скорее всего стоять ККТ будет днем, когда на работе есть главбух с ключом для доступа в ЛК ФНС.… да и ФН нужно купить успеть…

      Так что может по пропускной способности магазинам и не надо больше одной, но те реалии в которые нас запихнул ФЗ-54 требуют практически любому интернет магазину иметь хотя бы две ККТ.

      Но, да, про магазин у которого 50 заказов секунду в течении достаточно долгого периода — хотелось бы услышать?
      Истерию такие как АТОЛ нагнали на рынке — значительную, и не удивлюсь если кто-то заказал 50 ККТ, Но оправдано такое — вряд ли.


      1. kirmorozov
        06.09.2017 16:28

        Спасибо, дохотчиво. 2 KKT и забыли.


        1. Sly_tom_cat
          06.09.2017 16:55

          2 и запускать со сдвигом во времени. Если на две поровну раскидывать чеки то и ФН закончатся в одно время. Т.е. первая работает, а вторая только подстраховывает первую. Чуть позже можно запустить полноценную балансировку.


      1. Structure
        07.09.2017 21:30

        Нет никаких 5 минут в онлайне. Не надо выдумывать.


  1. Che603000
    06.09.2017 07:02
    +1

    Зачем вообще реализовывать кассы ввиде отдельного устройства? Почему нельзя сделать кассу, как ПО для компа, а ФН подключать к нему через серийный порт?


    1. Sly_tom_cat
      06.09.2017 10:53
      +1

      Вы это тем скажите, кто законы пишет.

      Технари то понимают что реализованная законом ФЗ-54 модель — ни разу не для онлайн-торговли. Но законотворцы этого не понимают.


  1. shurupkirov
    06.09.2017 08:04
    +1

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


    ФН работает медленно. Общее время на обработку одного чека составляет примерно 0,9 с. Но на практике при работе периодически возникают сетевые задержки — поскольку чек надо отправить ОФД и получить от него ответ. В итоге при самом хорошем раскладе не стоит рассчитывать на скорость более одного чека в секунду. Если у магазина нагрузка выше и есть только одна касса, будет формироваться очередь. Запрос на формирование чека может храниться до пяти минут, после чего «отваливается» с тайм-аутом. Если у магазина 50 транзакций в секунду, в идеальном случае нужно установить 50 касс


  1. Hacksli
    06.09.2017 09:18
    +1

    Пфф. У продвинутых стран сама налоговая предоставляет такой API без извращений с железками.


    1. it_manager
      07.09.2017 11:33

      Вот тоже возникла эта мысль. Почему бы не сделать со стороны налоговой этой? Без железок и другого геморроя.


      1. kirmorozov
        07.09.2017 14:31

        Решили контролировать все интернет-обороты, у налоговой бизнес такой — продавать ФН.
        С точки зрения ускорения товарооборота по РФ это не так весело продавать в розницу ФН.

        Отчасти похоже на оптимизацию сбора свежих данных со всего товарооборота через интернет. Надеюсь дальше сбора данных для налоговой дело не пойдет.


    1. newartix
      07.09.2017 21:30

      Но ведь нужно было поддержать отечественного «производителя» касс.


    1. pavia
      07.09.2017 21:31

      Преследовался смысл в продаже железок, штрафов, т.е. нужен процесс, ради процесса, а не результат и эффективность. И это далеко от заявленного в статье:

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

      Интересно, сколько ресурсов затрачивается на всю эту железную ерунду? Кстати, в статье не сказано о надежности и отказоустойчивости их коробочек, 50-ти хватит?


  1. solalex
    06.09.2017 15:50

    С дублированием платежей в ОФД уже разобрались? Очень уж много жалоб было по этому поводу, из-за этого выбрали другое решение.


    1. solovetski
      07.09.2017 21:30

      Если не секрет, то какое выбрали?


      1. solalex
        07.09.2017 21:53

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


        1. shurupkirov
          09.09.2017 13:00

          модулькасса это сервис по приему платежей?


          1. solalex
            09.09.2017 17:17

            это физическая касса, которая может интегрироваться и для интернет-продаж
            modulkassa.ru


            1. shurupkirov
              09.09.2017 17:23

              спасибо за ссылку!
              дорогой продукт, однако
              Нам хватает обычной кассы+офд+яндекс.касса и банк-эквайер


  1. MikeKosulin
    07.09.2017 21:31

    Интересно, но не рассказали самое главное: откуда такая цена в месяц?
    Ну серьезно, вы же когда услугу эту анонсировали, фактически задали уровень цен которого почти все придерживаются.


  1. kolabaister
    07.09.2017 21:31

    Если не секрет, и об этом можно говорить — из чего состоит цена на сервис АТОЛ Онлайн (я про ежемесячную составляющую)?
    Когда вопрос возник, меня отпугнули две вещи: цена, и отсутствие реакции на запрос на сайте (кстати, его не было до сих пор).


  1. Andrei_ra
    07.09.2017 21:31

    Возникает логичный вопрос, а зачем вообще кассы нужны теперь? По крайней мере для онлайн торговли. Раньше кассы требовались для контроля бизнеса, товар вернуть насколько помню и без чека можно. А теперь? Почему в качестве кассы не может быть простой софт, который можно поставить на любом vps — пусть он шлёт в налоговую на или оператору данные о продажах, и чек в PDF делает. Зачем для этого отдельная коробка, да ещё за такие деньги?


  1. 1me
    07.09.2017 21:31

    В голову приходят сервисы типа delivery club. А так, даже сетевые магазины, работающие от одного юридического лица на всей территории РФ, не наберут такого объема.


  1. dmoskvin77
    07.09.2017 21:31

    Хорошая схема нарисована в видеоролике, но на деле — очень не многие CMS внедрили в свой код интеграцию с онлайн кассой.


  1. piroman
    08.09.2017 00:59

    Почему нет в продаже АТОЛ 42ФС?