Работа с СКО (v2.0.1+)

Для работы с СКО не требуется дополнительных настроек.

В случае компрометации устройства, либо по решению РУП ИИЦ МНС или Оператора Программной Кассы СКО может быть заблокировано для совершения всех фискальных операций.

При попытке совершения фискальных в случаях, приведенных в абзаце выше, будет возникать ошибка avtpcr.status.blocked. В случае, если статус СКО устарел (Отсутствовала синхронизация с сервером более 7 дней), будет возвращаться ошибка avtpcr.status.sync-required.

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

В случае, если конфигурация не удалась или не завершилась (отсутствие интернета или другие причины), при попытке совершения фискальных операций будет возвращена ошибка avtpcr.not-configured. Автоматическая попытка конфигурации СКО осуществляется раз в 2 секунды. При последующих запусках, если данные не устарели и присутствуют, конфигурация может осуществляться без наличия интернета

Определить состояние работы с СКО можно путем запроса Данных об СКО. Поля is_configured и is_compatible должны быть установлены в значение true, а status.block_reasons должен быть пустым

Работа с СКО (v1.8.x)

Для корректного запуска приложения и работы с СКО, требуется объявление переменной окружения OPERATOR_CODE с указанием кода оператора. На основании кода оператора будут доступны устройства с соответствующим кодом оператора.

Доступные коды оператора:

  • 5 - dev окружение iKassa
  • 910000001 - stage окружение iKassa, используемое Республиканским Унитарным Предприятием "Информационно-Издательский Центр Министерства по Налогам и Сборам" (РУП ИИЦ МНС)
  • 1 - prod окружение iKassa, используемое на реальных торговых точках

В случае компрометации устройства, либо по решению РУП ИИЦ МНС или Оператора Программной Кассы СКО может быть заблокировано для совершения всех фискальных операций, кроме операции изъятия и закрытия смены. Все операции, в случае блокировки, будут отдавать ошибку TSRV_TOKEN_NOT_ACTIVE

Запросить текущий статус СКО можно с помощью метода get_status

Важно: статус СКО по умолчанию - unknown и, если нет подключения к интернету, либо сервера iKassa недоступны, из текущей сети, использование СКО невозможно и требуется подключение к интернету.

Важно: на старте приложения осуществляется поиск доступного СКО.


Обновление списка СКО

Важно помнить, что список доступных СКО обновляется в ручном режиме, путем передачи заголовка tokens.refresh со значением "true".

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

Исходя из изложенного выше, стоит передавать tokens.refresh исключительно в том случае, если СКО не было найдено, либо по какой-то причине команда отдала ошибку TSRV_TOKEN_NOT_FOUND