4.8. API интерфейс

REGOS: VCR предоставляет API интерфейс для взаимодействия с пользовательскими функциями.

Порядок взаимодействия

Взаимодействие с REGOS: VCR осуществляется с помощью HTTP-запросов методом POST.

Каждый запрос должен содержать обязательный заголовок (Header):

"Content-Type": "application/json;charset=utf-8"

Тело запроса (Body) имеет следующую структуру:

{
    "id":1,
    "jsonrpc":"2.0",
    "method":"ZReport.GetInfo",
    "params":null,
    "auth":"cmVF5dd6cGds33M5"
}

где:

  • "id" - Id запроса к API;
  • "method" - поле содержит в себе название метода, вызываемого при обращении к API интерфейсу;
  • "params" - Объект, при необходимости, должен содержать в себе дополнительные данные, необходимые для выполнения API метода;
  • "auth" - Поле содержит в себе Base64(Login:Password) - логин:пароль, зашифрованные в формате base64. Доступ к использованию API интерфейса имеет только пользователь Кассир.

При корректном выполнении метода сервер вернет ответ с кодом 200. Другие коды ответа, могут возникать при ошибке на стороне сервера.

Тело ответа (Body) имеет следующую структуру:

{
    "id":1,
    "ok":true,
    "result": object,
    "jsonrpc":"2.0"
}

где:

  • id - id запроса;
  • ok - статус выполнения запроса (true - успех, false - ошибка);
  • result - объект ответа. Если ok=true, то ответ метода, если ok=false - объект с описанием ошибки.

Все методы, кроме sys.getinfo, sys.getoverflowinfo, sys.initialize осуществляют печать на принтере на который настроена виртуальная касса. Без настроенного принтера методы работать не будут.

Для тестирования API виртуальной кассы REGOS: VCR можно использовать следующий Endpoint: http://vcr-test.regos.uz
Для проверки работы методов в тестовой среде и просмотра напечатанного результата на POS принтере запущена онлайн Web-камера

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