ТЕХНИЧЕСКАЯ ДОКУМЕНТАЦИЯ

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

> СерверККМ V4 > REST API
Дата обновления: 23 июля 2026 г.

GET kkt/list

Получение список зарегистрированных ККТ.

URL: {{HTTPRoot}}/kkt/list

Тело ответа

Успешный ответ (200 OK)

{
    "Result": [
        {
            "DeviceName": "Atol",
            "Driver": 3,
            "DeviceStatusDescription": "НетСвязи(выкл)"
        },
        {
            "DeviceName": "Emu",
            "Driver": 100,
            "DeviceStatusDescription": "Ok"
        }
    ],
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле: Result

Тип: массив DeviceListResponse

Имя поля Тип Назначение Пример
DeviceName string Имя устройства “Atol”
Driver int Тип драйвера.
1 — Shtrih;
2 — 1C(4.7);
3 — Atol;
4 — RrElectro;
5 — 1C(5.0);
100 — Emulator;
3
DeviceStatusDescription string Описание статуса устройства. “Ok”

GET kkt/list/byPool?pool={pool}

Получить список устройств, входящих в указанный пул.

Пулом называется именованная группа устройств ККТ, объединённых для распределения заданий на печать между несколькими кассами.

URL: {{HTTPRoot}}/kkt/list/byPool?pool={pool}

Параметры запроса

Имя параметра Тип Обяз Назначение Пример
pool string + Название пула. Если пул с указанным названием не найден или в него не включено ни одно устройство, сервер возвращает пустой массив pool

Тело ответа

Успешный ответ (200 OK)

{
    "Result": [
        "Atol",
        "Emu",
        "Shtrih"
    ],
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле Result

Тип: массив Devices.

Имя поля Тип Назначение Пример
Result string Название устройства “Atol”,
“Emu”,
“Shtrih”

GET kkt?device={device}

Получение подробной информации об устройстве ККТ.

URL: {{HTTPRoot}}/kkt?device={device}

Параметры запроса

Имя параметра Тип Обяз Назначение Пример
device string + Имя устройства. Atol

Тело ответа

Успешный ответ (200 OK)

{
    "Result": {
        "ServerVersion": "4.0.58.211",
        "Fn": {
            "Execution": "",
            "FnContainsKeysUpdaterServerUri": false,
            "FiscalizationsCount": 1,
            "FiscalizationsFree": 0,
            "FiscalizationDocumentNumber": "1",
            "FiscalizationDateTime": "2025-03-16T00:00:00",
            "ReasonCode": 0,
            "LivePhase": "fiscalMode",
            "Version": "1.0",
            "RnNumber": "00031415926",
            "FnsUrl": "nalog.ru",
            "SenderEmail": "ivanov@mail.ru",
            "FfdVersion": "1.2",
            "SerialNumber": "0123123123123",
            "OrganizationName": "ООО 'Ромашка'",
            "Vatin": "7722345678",
            "ValidityDate": "2027-02-15T23:36:30.0725604+08:00",
            "SaleAddress": "г.Улан-Удэ, ул.Виноградная, д11А, офис 25",
            "SaleLocation": "Офис",
            "TaxVariant": 63,
            "SignOfAgent": 127,
            "AutomaticNumber": "",
            "Ofd": {
                "Name": "Тестовый ОФД",
                "Vatin": "1234554321",
                "Host": "ofd.example.ru",
                "Port": 7777
            },
            "Warnings": {
                "CriticalError": false,
                "MemoryOverflow": false,
                "NeedReplacement": false,
                "OfdTimeout": false,
                "ResourceExhausted": false
            },
            "Modes": {
                "PrinterAutomatic": false,
                "OfflineMode": false,
                "ServiceSign": true,
                "BsoSign": false,
                "CalcOnlineSign": false,
                "DataEncryption": true,
                "SaleExcisableGoods": true,
                "SignOfGambling": true,
                "SignOfLottery": true,
                "Pawnshop": true,
                "Assurance": true,
                "Marking": true,
                "VendingMachine": true,
                "CateringServices": true,
                "WholesaleTrade": true,
                "AutomaticMode": false
            }
        },
        "Device": {
            "FfdVersion": "1.2",
            "FnFfdVersion": "1.2",
            "IsFiscal": true,
            "LineLength": 64,
            "DeviceClass": 4,
            "Model": "АТОЛ FPrint-22ПТК",
            "ModelName": "АТОЛ FPrint-22ПТК",
            "SerialNumber": "0020260207",
            "FirmwareVersion": "2026",
            "ConfigurationVersion": "02.07"
        },
        "Driver": {
            "Type": "Atol",
            "Version": "26.01.27",
            "Vendor": "Atol"
        },
        "Status": {
            "IsFnPresent": true,
            "IsFnError": false,
            "IsIsmDisconnected": false,
            "IsOfdDisconnected": false,
            "Backlog": {
                "DocumentsCounter": 0,
                "DocumentFirstNumber": 0,
                "DocumentFirstDateTime": "0001-01-01T00:00:00"
            },
            "ExchangeStatusIsm": {
                "IsFnPresent": true,
                "IsFnError": false,
                "IsIsmDisconnected": false,
                "IsOfdDisconnected": false,
                "Ism": {
                  "Address": "ism.example.ru",
                  "Port": 8888,
                  "Errors": {
                    "FnCommandCode": 0,
                    "DocumentNumber": 0,
                    "LastSuccessConnectionDateTime": "0001-01-01T00:00:00",
                    "Fn": {
                      "Code": 0
                    },
                    "Network": {
                      "Code": 0
                    },
                    "Ism": {
                      "Code": 0,
                      "Description": ""
                    }
                  },
                  "Backlog": {
                    "DocumentsCounter": 0,
                    "DocumentFirstNumber": 0,
                    "DocumentFirstDateTime": "0001-01-01T00:00:00"
                  }
                },
                "Warnings": {
                  "CriticalError": false,
                  "MemoryOverflow": false,
                  "NeedReplacement": false,
                  "OfdTimeout": false,
                  "ResourceExhausted": false
                },
            "ShiftNumber": 4,
            "CheckNumber": 22,
            "CheckNumberByShift": 13,
            "CashSum": 2624.89,
            "Sum": 10588.89,
            "IsFiscal": true,
            "OpenShiftTime": "2026-02-15T00:18:26",
            "IsShiftOpened": true,
            "IsShiftExpired": false,
            "ComputerTime": "2026-02-15T23:37:05.0357118+08:00",
            "DeviceTime": "2026-02-15T23:37:05.0357118+08:00",
            "IsDrawerOpened": false,
            "IsCheckPaperPresent": true,
            "IsControlPaperPresent": false,
            "IsWaitContinuePrint": false,
            "IsCoverOpened": false,
            "IsBatteryLow": false,
            "IsOpenDocument": false,
            "LineLength": 42,
            "TaskId": "00000000-0000-0000-0000-000000000000",
            "Error": 0,
            "IsBusy": false,
            "ErrorCode": 0,
            "ErrorCodeDescription": "OK",
            "DriverMode": 0,
            "DriverModeDescription": "",
            "DriverAdvancedMode": 0,
            "DriverAdvancedModeDescription": "",
            "LicenseStatus": 0,
            "License": {
                "code": 0,
                "isEndUser": false,
                "isActivated": false,
                "isBlocked": false,
                "blockDate": "0001-01-01T00:00:00",
                "date": "0001-01-01T00:00:00",
                "expired": "0001-01-01T00:00:00",
                "updateExpired": "0001-01-01T00:00:00",
                "limitInstalls": 0,
                "needObjectActivation": false,
                "limitObjects": 0,
                "setupTokenIndex": 0,
                "licenseUpdated": "0001-01-01T00:00:00"
            },
            "LicenseUpdated": "0001-01-01T00:00:00"
        }
    },
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле Result

Тип: DataKkt

Имя поля Тип Назначение Пример
ServerVersion string Версия сервера ККМ “4.0.58.0330”
Fn Тип данных Описание фискального накопителя “Fn”: {
“Execution”: “”,
“FnContainsKeysUpdaterServerUri”: false,
“FiscalizationsCount”: 1,
“FiscalizationsFree”: 0,
“FiscalizationDocumentNumber”: “1”,
“FiscalizationDateTime”: “2025-03-16T00:00:00”,
“ReasonCode”: 0,
“LivePhase”: “fiscalMode”,
“Version”: “1.0”,
“RnNumber”: “00031415926”,
“FnsUrl”: “nalog.ru”,
“SenderEmail”: “kuznicov@mail.ru”,
“FfdVersion”: “1.2”,
“SerialNumber”: “0123123123123”,
“OrganizationName”: “ООО ‘Ромашка’“,
“Vatin”: “7722345678”,
“ValidityDate”: “2027-02-15T23:36:30.0725604+08:00”,
“SaleAddress”: “г.Улан-Удэ, ул.Виноградная, д11А, офис 25”,
“SaleLocation”: “Офис”,
“TaxVariant”: 63,
“SignOfAgent”: 127,
“AutomaticNumber”: “”,
“Ofd”: {
“Name”: “Тестовый ОФД”,
“Vatin”: “1234554321”,
“Host”: “ofd.example.ru”,
“Port”: 7777
},
“Warnings”: {
“CriticalError”: false,
“MemoryOverflow”: false,
“NeedReplacement”: false,
“OfdTimeout”: false,
“ResourceExhausted”: false
},
“Modes”: {
“PrinterAutomatic”: false,
“OfflineMode”: false,
“ServiceSign”: true,
“BsoSign”: false,
“CalcOnlineSign”: false,
“DataEncryption”: true,
“SaleExcisableGoods”: true,
“SignOfGambling”: true,
“SignOfLottery”: true,
“Pawnshop”: true,
“Assurance”: true,
“Marking”: true,
“VendingMachine”: true,
“CateringServices”: true,
“WholesaleTrade”: true,
“AutomaticMode”: false
}
}
Device Тип данных Описание ККМ “Device”:
Driver Тип данных Описание драйвера ККМ “Driver”:
Status Тип данных Состояние обмена с ОФД “Status”: {
“IsFnPresent”: true,
“IsFnError”: false,
“IsIsmDisconnected”: false,
“IsOfdDisconnected”: false,
“Backlog”: {
“DocumentsCounter”: 0,
“DocumentFirstNumber”: 0,
“DocumentFirstDateTime”: “0001-01-01T00:00:00”
},
“ExchangeStatusIsm”: {
“AddressIsm”: “testism.ru”,
“PortIsm”: 20,
“Errors”: {
“FnCommandCode”: 0,
“DocumentNumber”: 0,
“LastSuccessConnectionDateTime”: “0001-01-01T00:00:00”,
“Fn”: {
“Code”: 0
},
“Network”: {
“Code”: 0
},
“Ism”: {
“Code”: 0
}
},
“Status”: {
“DocumentsCounter”: 0,
“DocumentFirstNumber”: 0,
“DocumentFirstDateTime”: “0001-01-01T00:00:00”
},
“Warnings”: {
“DataForSendIsEmpty”: false
}
},
“Warnings”: {
“CriticalError”: false,
“MemoryOverflow”: false,
“NeedReplacement”: false,
“OfdTimeout”: false,
“ResourceExhausted”: false
},
“ShiftNumber”: 4,
“CheckNumber”: 22,
“CheckNumberByShift”: 13,
“CashSum”: 2624.89,
“Sum”: 10588.89,
“IsFiscal”: true,
“OpenShiftTime”: “2026-02-15T00:18:26”,
“IsShiftOpened”: true,
“IsShiftExpired”: false,
“ComputerTime”: “2026-02-15T23:37:05.0357118+08:00”,
“DeviceTime”: “2026-02-15T23:37:05.0357118+08:00”,
“IsDrawerOpened”: false,
“IsCheckPaperPresent”: true,
“IsControlPaperPresent”: false,
“IsWaitContinuePrint”: false,
“IsCoverOpened”: false,
“IsBatteryLow”: false,
“IsOpenDocument”: false,
“LineLength”: 42,
“TaskId”: “00000000-0000-0000-0000-000000000000”,
“Error”: 0,
“IsBusy”: false,
“ErrorCode”: 0,
“ErrorCodeDescription”: “OK”,
“DriverMode”: 0,
“DriverModeDescription”: “”,
“DriverAdvancedMode”: 0,
“DriverAdvancedModeDescription”: “”,
“LicenseStatus”: 0,
“License”: {
“code”: 0,
“isEndUser”: false,
“isActivated”: false,
“isBlocked”: false,
“blockDate”: “0001-01-01T00:00:00”,
“date”: “0001-01-01T00:00:00”,
“expired”: “0001-01-01T00:00:00”,
“updateExpired”: “0001-01-01T00:00:00”,
“limitInstalls”: 0,
“needObjectActivation”: false,
“limitObjects”: 0,
“setupTokenIndex”: 0,
“licenseUpdated”: “0001-01-01T00:00:00”
},
“LicenseUpdated”: “0001-01-01T00:00:00”
}

Тип: Fn

Имя поля Тип Назначение Пример
Execution string Исполнение ФН ”“
FnContainsKeysUpdaterServerUri bool ФН содержит URI сервера ОКП false
FiscalizationsCount int Количество проведенных регистраций 0
FiscalizationsFree int Количество оставшихся регистраций 0
FiscalizationDocumentNumber string Номер документа регистрация фискального накопителя “0”
FiscalizationDateTime datetime Дата и время операции регистрации фискального накопителя “2026-02-15T00:00:00”
ReasonCode int Код причины перерегистрации 0
LivePhase string Фаза жизни ФН “fiscalMode”
Version string Версия ФН “1.0”
RnNumber string Регистрационный номер ККТ “00031415926”
FnsUrl string Адрес сайта уполномоченного органа(ФНС) в сети «Интернет» “nalog.ru”
SenderEmail string Адрес электронной почты отправителя чека “ivanov@mail.ru”
FfdVersion string Версия ФФД ФН “1.2”
SerialNumber string Серийный номер ФН “0123123123123”
OrganizationName string Название организации “ООО ‘Ромашка’“
Vatin string ИНН организации “7722345678”
ValidityDate datetime Срок действия ФН “2027-06-08T17:22:38.2396579+08:00”
SaleAddress string Адрес установки ККТ для проведения расчетов “г.Улан-Удэ, ул.Виноградная, д11А, офис 25”
SaleLocation string Место проведения расчетов “Офис”
TaxVariant int Коды систем налогообложения:
1 — Общая (ОСН);
2 — Упрощенная Доход(УСН);
3 — Упрощенная Доход минус Расход(УСНД_Р);
4 — Единый налог на вмененный доход(ЕНВД);
5 — Единый сельскохозяйственный налог(ЕСН);
6 — Патентная система налогообложения(ПСН)
63
SignOfAgent int Коды признаков агента.
0 — Банковский платежный агент;
1 — Банковский платежный субагент;
2 — Платежный агент;
3 — Платежный субагент;
4— Поверенный;
5 — Комиссионер;
6 — Агент;
127
AutomaticNumber string Номер автомата ”“
Ofd Тип данных ОФД “Ofd”: {
“Name”: “Тестовый ОФД”,
“Vatin”: “1234554321”,
“Host”: “ofd.example.ru”,
“Port”: 7777
},
Warnings Тип данных Предупреждения ФН “Warnings”:
Modes Тип данных Признаки ФН {…”Modes”: {
“PrinterAutomatic”: false,
“OfflineMode”: false,
“ServiceSign”: true,
“BsoSign”: false,
“CalcOnlineSign”: false,
“DataEncryption”: true,
“SaleExcisableGoods”: true,
“SignOfGambling”: true,
“SignOfLottery”: true,
“Pawnshop”: true,
“Assurance”: true,
“Marking”: true,
“VendingMachine”: true,
“CateringServices”: true,
“WholesaleTrade”: true,
“AutomaticMode”: false
}}

Тип: Ofd

Имя поля Тип Назначение Пример
Name string Имя ОФД “Тестовый ОФД”
Vatin string ИНН ОФД “1234554321”
Host string Адрес сервера ОФД “ofd.example.ru”
Port int Порт сервера ОФД 7777

Тип: Warnings

Имя поля Тип Назначение Пример
CriticalError bool Критическая ошибка ФН false
MemoryOverflow bool Память ФН переполнена false
NeedReplacement bool Требуется срочная замена ФН false
OfdTimeout bool Превышено время ожидания ответа от ОФД false
ResourceExhausted bool Исчерпан ресурс ФН false

Тип: Modes

Имя поля Тип Назначение Пример
PrinterAutomatic bool Признак установки принтера в автомате false
OfflineMode bool Признак автономного режима false
ServiceSign bool Признак расчетов за услуги false
BsoSign bool Признак формирования только БСО false
CalcOnlineSign bool Признак ККТ для расчетов только в Интернет false
DataEncryption bool Признак шифрование данных false
SaleExcisableGoods bool Продажа подакцизного товара false
SignOfGambling bool Признак проведения азартных игр false
SignOfLottery bool Признак проведения лотереи false
Pawnshop bool Признак применения при осуществлении ломбардами кредитования граждан false
Assurance bool Признак применения при осуществлении деятельности по страхованию false
Marking bool Признак применения при осуществлении торговли товарами, подлежащими обязательной маркировке средствами идентификации false
VendingMachine bool Признак применения в автоматическом торговом автомате false
CateringServices bool Признак применения при оказании услуг общественного питания false
WholesaleTrade bool Признак применения о оптовой торговле с организациями и ИП false
AutomaticMode bool Признак автоматического режима false

Тип: Device

Имя поля Тип Назначение Пример
FfdVersion string Версия ФФД “1.2
FnFfdVersion string Версия ФФД ФН “1.2”
TimeZone int Часовая зона устройства 7
KktLicenses Массив типа данных Массив лицензий ККТ []
IsFiscal bool Фискальный true
LineLength int Ширина чековой ленты 64
LineLengthPixels int Ширина чековой ленты в пикселях 0
DeviceClass int Тип устройства:
1 — Принтер
2 — Чековый принтер
3 — Фискальный регистратор (не онлайн-ккм)
4 — Онлайн-ккм, применяемая в РФ в соответствии с ФЗ-54.
5 — Эквайринговый терминал
6 — Терминал сбора данных
7 — Электронные весы
8 — Электронные весы
9 — Сканер штрихкодов
7
SerialNumber string Заводской номер ККТ “0020260207”
FirmwareVersion string Версия прошивки “2026”
ConfigurationVersion string Версия конфигурации прошивки устройства “02.07”

Тип: Driver

Имя поля Тип Назначение Пример
Type string Тип драйвера “Atol”
Version string Версия драйвера “26.01.27”
Vendor string Данные поставщика “Atol”

Тип: Status

Имя поля Тип Назначение Пример
IsFnPresent bool Присутствует ли фискальный накопитель false
IsFnError bool Находится ли фискальный накопитель в состоянии ошибки false
IsIsmDisconnected bool Доступен ли информационной системы маркировки false
IsOfdDisconnected bool Доступен ли оператор информационной системы маркировки false
Backlog Тип данных Данные о непереданных документах “Backlog”:
ExchangeStatusIsm Тип данных Состояние обмена с ИСМ “ExchangeStatusIsm”: {
“AddressIsm”: “testism.ru”,
“PortIsm”: 20,
“Errors”: {
“FnCommandCode”: 0,
“DocumentNumber”: 0,
“LastSuccessConnectionDateTime”: “0001-01-01T00:00:00”,
“Fn”: {
“Code”: 0
},
“Network”: {
“Code”: 0
},
“Ism”: {
“Code”: 0
}
},
“Status”: {
“DocumentsCounter”: 0,
“DocumentFirstNumber”: 0,
“DocumentFirstDateTime”: “0001-01-01T00:00:00”
},
“Warnings”: {
“DataForSendIsEmpty”: false
}
}
Warnings Тип данных Предупреждения ФН “Warnings”:
ShiftNumber int Номер смены 17
DocNumber int Номер фискального документа 98
DocNumberInShift int Номер фискального документа за смену 3
CashSum decimal Сумма наличных в денежном ящике 2128.0
TotalSum decimal Сумма выручки 0.0
IsFiscal bool Фискальный true
OpenShiftTime DateTime Время открытия кассовой смены “0001-01-01T00:00:00”
IsShiftOpened bool Смена открыта false
IsShiftExpired bool Смена истекла false
ComputerTime DateTime Время получения данных “2026-05-23T19:50:04.7531056+08:00”
DeviceTime DateTime Время в часах устройства “2026-05-23T19:50:04.7531056+08:00”
IsDrawerOpened bool Открыт денежный ящик false
IsCheckPaperPresent bool Наличие чековой ленты false
IsControlPaperPresent bool Наличие контрольной ленты false
IsWaitContinuePrint bool Ожидание продолжения печати false
IsCoverOpened bool Открыта ли крышка false
IsBatteryLow bool Аккумулятор разряжен false
IsOpenDocument bool Открытый документ false
LineLength int Ширина чековой ленты 42
LineLengthPixels int Ширина чековой ленты в пикселях 512
TaskId string Идентификатор текущей задачи “00000000-0000-0000-0000-000000000000”
Error int Код ошибки 0
ErrorCodeDescription string Описание ошибки устройства по данным драйвера “OK”
DriverMode int Режим по данным драйвера 0
DriverModeDescription string Описание режима Mode по данным драйвера ”“
DriverAdvancedMode int Специальный режим по данным драйвера 0
DriverAdvancedModeDescription string Описание режима AdvancedMode по данным драйвера 0
LicenseStatus int Статус состояния лицензии 0
License тип данных Описание лицензии “License”:
LicenseUpdated DateTime Время последней проверке лицензии “0001-01-01T00:00:00”

Тип: ExchangeStatusIsm

Имя поля Тип Назначение Пример
Address string Адрес сервера информационной системы маркировки “ism.example.ru”
Port int Порт сервера информационной системы маркировки 8888
Errors Тип данных Сведения об ошибках обмена данными “Errors”: {
“FnCommandCode”: 0,
“DocumentNumber”: 0,
“LastSuccessConnectionDateTime”: “0001-01-01T00:00:00”,
“Fn”: {
“Code”: 0
},
“Network”: {
“Code”: 0
},
“Ism”: {
“Code”: 0,
“Description”: “”
}
}
Backlog Тип данных Сведения о непереданных документах “Backlog”:

Тип: Errors

Имя поля Тип Назначение Пример
FnCommandCode int Код команды фискального накопителя 0
DocumentNumber int Номер документа 0
LastSuccessConnectionDateTime DateTime Время последнего успешного подключения “0001-01-01T00:00:00”
Fn Тип данных Код ошибки фискального накопителя “Fn”: {
“Code”: 0
},
Network Тип данных Код ошибки сети “Network”:
Ism Тип данных Код ошибки информационной системы маркировки “Ism”:

Тип: Fn

Имя поля Тип Назначение Пример
Code int Код ошибки фискального накопителя 0

Тип: Network

Имя поля Тип Назначение Пример
Code int Код ошибки сети 0

Тип: Ism

Имя поля Тип Назначение Пример
Code int Код ошибки информационной системы маркировки 0

Тип: Backlog

Имя поля Тип Назначение Пример
DocumentsCounter int Количество непереданных документов 0
DocumentFirstNumber int Номер первого непереданного документ 0
DocumentFirstDateTime DateTime Дата и время первого из непереданных документов “0001-01-01T00:00:00”

Тип: Warnings

Имя поля Тип Назначение Пример
CriticalError bool Критическая ошибка ФН false
MemoryOverflow bool Память ФН переполнена false
NeedReplacement bool Требуется срочная замена ФН false
OfdTimeout bool Превышено время ожидания ответа от ОФД false
ResourceExhausted bool Исчерпан ресурс ФН false

Тип: License

Имя поля Тип Назначение Пример
code int Код ошибки 0
isEndUser bool Признак лицензии на конечного пользователя.
true — лицензия выдана конечному пользователю.
false — лицензия выдана партнеру для перепродажи
false
isActivated bool Признак активации false
isBlocked bool Признак блокировки 0
blockDate DateTime Дата блокировки “0001-01-01T00:00:00”
date DateTime Дата продажи “0001-01-01T00:00:00”
expired DateTime Дата истечения срока действия “0001-01-01T00:00:00”
updateExpired DateTime Дата истечения доступа к обновлениям “0001-01-01T00:00:00”
limitInstalls int Количество разрешенных привязок равно числу ККМ, которые можно привязать к одной лицензии 0
needObjectActivation bool Признак необходимости привязки объектов лицензирования после привязки. 0
limitObjects int Количество объектов привязки на каждую установку 0
setupTokenIndex int Индекс установочного токена 0
LicenseUpdated DateTime Время последней проверке лицензии “0001-01-01T00:00:00”

Примеры ошибок

4 — Не указано имя ККТ

{
    "Code": 4,
    "Description": "Не указано имя ККТ",
    "Success": false
}

709 — Устройство не найдено

{
    "Code": 709,
    "Description": "Устройство не найдено: Устройство '{device}' не найдено.",
    "Success": false
}

POST kkt

Добавление устройства ККТ.

URL: {{HTTPRoot}}/kkt

Тело запроса

{
  "DeviceName": "{device}",
  "Settings": {
    "DeviceType": 1,
    "Available": true,
    "DeviceName": "{device}",

    "MethodConnection": 0,
    "PortNumber": 1,
    "BaudRate": 9600,
    "IpAddress": "192.168.0.109",
    "TcpPort": 7778,

    "Password": "30",

    "SerialNumber": "0392790042005043",

    "SenderEmail": "noreply@example.com",
    "Cashier": "Иванов А.И.",
    "CashierVatin": "7722345678",

    "Vatin": "7700000000",
    "OrganizationName": "ООО Ромашка",
    "SaleAddress": "г. Москва, ул. Пример, д. 1",
    "ClientSaleLocation": "Торговый зал",

    "TimeoutConnection": 5000,
    "TimeoutWaitForPrinting": 60000,

    "OfdAddress": "ofd.example.ru",
    "OfdPort": 7777
  }
}
Имя поля Тип Обяз Назначение Пример
DeviceName string + Имя устройства “Atol”
Settings Тип данных + Настройки устройства. Обязателен к передаче, но отдельные поля внутри необязательны “Settings”: {
“DeviceType”: 1,
“Available”: true,
“DeviceName”: “MyKkt054”,
“MethodConnection”: 0,
“PortNumber”: 1,
“BaudRate”: 9600,
“IpAddress”: “192.168.0.109”,
“TcpPort”: 7778,
“Password”: “30”,
“SerialNumber”: “0392790042005043”,
“SenderEmail”: "noreply@example.com”,
“Cashier”: “Иванов А.И.”,
“CashierVatin”: “7722345678”,
“Vatin”: “7700000000”,
“OrganizationName”: “ООО Ромашка”,
“SaleAddress”: “г. Москва, ул. Пример, д. 1”,
“ClientSaleLocation”: “Торговый зал”,
“TimeoutConnection”: 5000,
“TimeoutWaitForPrinting”: 60000,
“OfdAddress”: “ofd.example.ru”,
“OfdPort”: 7777
}

Поле Settings

Имя поля Тип Обяз Назначение Пример
DeviceName string + Имя устройства. Должно совпадать со значением поля DeviceName, указанным непосредственно в теле запроса. “Atol”
DeviceType int + Тип драйвера:
1 — Shtrih;
2 — 1С(4.7);
3 — Atol;
4 — RrElectro;
5 — 1С(5.0);
100 — Эмулятор.
1
Available bool - Признак доступности устройства. Если указано значение true, сервер немедленно предпринимает попытку подключения к устройству. Если подключиться не удалось, значение автоматически сбрасывается в false, при этом запрос на добавление устройства всё равно завершается успешно. true
MethodConnection int + Метод подключения: 0 — COM;
1 — TCP/IP
0
PortNumber int - Номер COM-порта.
Обязателен при MethodConnection=0
1
BaudRate int - Скорость COM-порта.
Обязателен при MethodConnection=0
9600
IpAddress string - IP-адрес.
Обязателен при MethodConnection=1
“192.168.0.109”
TcpPort int - TCP-порт.
Обязателен при MethodConnection=1
7778
Password string + Пароль устройства (пароль доступа к драйверу ККТ) “30”
AccessPassword string - Пароль доступа к настройкам устройства (не путать с паролем устройства Password) “0000”
SerialNumber string - Серийный номер устройства “0392790042005043”
Vatin string - ИНН организации “7722345678”
OrganizationName string - Название организации “ООО Ромашка”
SaleAddress string - Адрес расчётов “г.Улан-Удэ, ул.Виноградная, д11А, офис 25”
ClientSaleLocation string - Место расчётов “Офис”
Cashier string - ФИО кассира по умолчанию “Иванов А.И.”
CashierVatin string - ИНН кассира “7722345678”
SenderEmail string - Email отправителя чека “ivanov@mail.ru”
TimeoutConnection int - Таймаут подключения к устройству, в миллисекундах.

Если не указан или указано значение 0 — применяется значение по умолчанию, равное 5000 мс.
5000
TimeoutWaitForPrinting int - Таймаут ожидания завершения печати, в миллисекундах.

Если не указан или указано значение 0 — применяется значение по умолчанию, равное 5000 мс.
60000
OfdAddress string - Адрес ОФД “ofd.example.ru”
OfdPort int - Порт ОФД 7777
Pool string - Имя пула, в который включается устройство.

Если не указано — устройство не входит ни в один пул.
“pool”

Тело ответа

Успешный ответ (200 OK)

{
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Примеры ошибок

-1 — Устройство с таким именем уже существует

{
    "Code": -1,
    "Description": "ошибка: Ошибка добавления устройства. Устройство с таким именем уже существует",
    "Success": false
}

DELETE kkt?device={device}

Удаление устройства ККТ

URL: {{HTTPRoot}}/kkt?device={device}

Параметры запроса

Имя параметра Тип Обяз Назначение Пример
device string + Имя устройства. Atol

Тело ответа

Успешный ответ (200 OK)

{
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Примеры ошибок

4 — Не указано имя ККТ

{
    "Code": 4,
    "Description": "Не указано имя ККТ",
    "Success": false
}

PUT kkt

Редактирование параметров устройства ККТ.

URL: {{HTTPRoot}}/kkt

Тело запроса

{
  "DeviceName": "{device}",
  "Settings": {
    "DeviceType": 1,
    "Available": true,
    "DeviceName": "{device}",

    "MethodConnection": 0,
    "PortNumber": 1,
    "BaudRate": 9600,
    "IpAddress": "192.168.0.109",
    "TcpPort": 7778,

    "Password": "30",

    "SerialNumber": "0392790042005043",

    "SenderEmail": "noreply@example.com",
    "Cashier": "Иванов А.И.",
    "CashierVatin": "7722345678",

    "Vatin": "7700000000",
    "OrganizationName": "ООО Ромашка",
    "SaleAddress": "г. Москва, ул. Пример, д. 1",
    "ClientSaleLocation": "Торговый зал",

    "TimeoutConnection": 5000,
    "TimeoutWaitForPrinting": 60000,

    "OfdAddress": "ofd.example.ru",
    "OfdPort": 7777
  }
}

Смотрите документацию POST-запроса kkt

Тело ответа

Успешный ответ (200 OK)

{
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Примеры ошибок

-1 — Устройство не поддерживает метод UpdateKKM

{
    "Code": -1,
    "Description": "ошибка: Ошибка обновления устройства: Устройство не поддерживает метод UpdateKKM",
    "Success": false
}

GET kkt/lineLength?device={device}

Получение максимальной ширины строки чека устройства.

URL: {{HTTPRoot}}/kkt/lineLength?device={device}

Параметры запроса

Имя параметра Тип Обяз Назначение Пример
device string + Имя устройства. Atol

Тело ответа

Успешный ответ (200 OK)

{
    "Result": {
        "LineLength": 64,
        "LineLengthPixels": 512
    },
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Тип: LineLength

Имя поля Тип Назначение Пример
LineLength int Ширина чековой ленты в символах 42
LineLengthPixels int Ширина чековой ленты в пикселях 384

GET kkt/status?device={device}

Получение расширенного статуса ККТ.

URL: {{HTTPRoot}}/kkt/status?device={device}

Параметры запроса

Имя параметра Тип Обяз Назначение Пример
device string + Имя устройства. Atol

Тело ответа

Успешный ответ (200 OK)

{
    "Result": {
        "IsFnPresent": true,
        "IsFnError": false,
        "IsIsmDisconnected": false,
        "IsOfdDisconnected": false,
        "Ism": {
            "Address": "ism.example.ru",
            "Port": 8888,
            "Errors": {
                "FnCommandCode": 0,
                "DocumentNumber": 0,
                "LastSuccessConnectionDateTime": "0001-01-01T00:00:00",
                "Fn": {
                    "Code": 0
                },
                "Network": {
                    "Code": 0
                },
                "Ism": {
                    "Code": 0,
                    "Description": ""
                }
            },
            "Backlog": {
                "DocumentsCounter": 0,
                "DocumentFirstNumber": 0,
                "DocumentFirstDateTime": "0001-01-01T00:00:00"
            }
        },
        "Warnings": {
            "CriticalError": false,
            "MemoryOverflow": false,
            "NeedReplacement": false,
            "OfdTimeout": false,
            "ResourceExhausted": false
        },
        "ShiftNumber": 0,
        "DocNumber": 0,
        "DocNumberInShift": 0,
        "CashSum": 0,
        "TotalSum": 0,
        "IsFiscal": true,
        "OpenShiftTime": "0001-01-01T00:00:00",
        "IsShiftOpened": false,
        "IsShiftExpired": false,
        "ComputerTime": "2026-05-23T21:54:46.9737064+08:00",
        "DeviceTime": "2026-05-23T21:54:46.9737064+08:00",
        "IsDrawerOpened": false,
        "IsCheckPaperPresent": true,
        "IsControlPaperPresent": false,
        "IsWaitContinuePrint": false,
        "IsCoverOpened": false,
        "IsBatteryLow": false,
        "IsOpenDocument": false,
        "LineLength": 42,
        "LineLengthPixels": 512,
        "TaskId": "00000000-0000-0000-0000-000000000000",
        "Error": 0,
        "IsBusy": false,
        "ErrorCode": 0,
        "ErrorCodeDescription": "OK",
        "DriverMode": 0,
        "DriverModeDescription": "",
        "DriverAdvancedMode": 0,
        "DriverAdvancedModeDescription": "",
        "LicenseStatus": 0,
        "License": {
            "code": 0,
            "isEndUser": false,
            "isActivated": false,
            "isBlocked": false,
            "blockDate": "0001-01-01T00:00:00",
            "date": "0001-01-01T00:00:00",
            "expired": "0001-01-01T00:00:00",
            "updateExpired": "0001-01-01T00:00:00",
            "limitInstalls": 0,
            "needObjectActivation": false,
            "limitObjects": 0,
            "setupTokenIndex": 0,
            "licenseUpdated": "0001-01-01T00:00:00"
        },
        "LicenseUpdated": "0001-01-01T00:00:00"
    },
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле Result

Тип: KktStatus

Имя поля Тип Назначение Пример
IsFnPresent bool Присутствует ли фискальный накопитель false
IsFnError bool Находится ли фискальный накопитель в состоянии ошибки false
IsIsmDisconnected bool Доступен ли информационной системы маркировки false
IsOfdDisconnected bool Доступен ли оператор информационной системы маркировки false
ShiftNumber int Смена 4
DocNumber int Номер чека 22
CashSum decimal Сумма наличных в денежном ящике 2624.89
TotalSum decimal Сумма выручки 110.0
IsFiscal bool Фискальный true
OpenShiftTime DateTime Время открытия кассовой смены “2026-05-23T19:50:04.7531056+08:00”
IsShiftOpened bool Смена открыта false
IsShiftExpired bool Смена истекла false
ComputerTime DateTime Время получения данных “2026-05-23T19:50:04.7531056+08:00”
DeviceTime DateTime Время в часах устройства “2026-05-23T19:50:04.7531056+08:00”
IsDrawerOpened bool Открыт денежный ящик false
IsCheckPaperPresent bool Наличие чековой ленты false
IsControlPaperPresent bool Наличие контрольной ленты false
IsWaitContinuePrint bool Ожидание продолжения печати false
IsCoverOpened bool Открыта ли крышка false
IsBatteryLow bool Аккумулятор разряжен false
IsOpenDocument bool Открытый документ false
LineLength int Ширина чековой ленты 42
LineLengthPixels int Ширина чековой ленты в пикселях 512
TaskId string Идентификатор текущей задачи “24f4bffe-98ef-4627-846c-b1f74c5a495b”
Error int Код ошибки 0
IsBusy bool Признак занятости устройства false
ErrorCode int Код ошибки 0
ErrorCodeDescription string Описание ошибки устройства по данным драйвера “OK”
DriverMode int Режим по данным драйвера 0
DriverModeDescription string Описание режима Mode по данным драйвера ”“
DriverAdvancedMode int Специальный режим по данным драйвера 0
DriverAdvancedModeDescription string Описание режима AdvancedMode по данным драйвера 0
LicenseStatus int Статус состояния лицензии.
0 — none, проверка ещё не была проведена для устройства;
1 — ok, лицензия присутствует;
2 — fall, лицензия отсутствует;
3 — blocked, лицензия заблокирована
0
LicenseUpdated DateTime Время последней проверке лицензии “0001-01-01T00:00:00”
Ism Тип данных Данные сервера ИСМ “Ism”: {
“Address”: “ism.example.ru”,
“Port”: 8888,
“Errors”: {
“FnCommandCode”: 0,
“DocumentNumber”: 0,
“LastSuccessConnectionDateTime”: “0001-01-01T00:00:00”,
“Fn”: { “Code”: 0 },
“Network”: { “Code”: 0 },
“Ism”: { “Code”: 0, “Description”: “” }
},
“Backlog”: {
“DocumentsCounter”: 0,
“DocumentFirstNumber”: 0,
“DocumentFirstDateTime”: “0001-01-01T00:00:00”
}
}
Warnings Тип данных Предупреждения ФН “Warnings”:
License Тип данных Описание лицензии “License”:

Тип: Ism

Имя поля Тип Назначение Пример
Address string Адрес сервера информационной системы маркировки “ism.example.ru”
Port int Порт сервера информационной системы маркировки 8888
Errors Тип данных Сведения об ошибках обмена данными “Errors”: {
“FnCommandCode”: 0,
“DocumentNumber”: 0,
“LastSuccessConnectionDateTime”: “0001-01-01T00:00:00”,
“Fn”: { “Code”: 0 },
“Network”: { “Code”: 0 },
“Ism”: { “Code”: 0, “Description”: “” }
}
Backlog Тип данных Сведения о непереданных документах “Backlog”:

Тип: Errors

Имя поля Тип Назначение Пример
FnCommandCode int Код команды фискального накопителя 0
DocumentNumber int Номер документа 0
LastSuccessConnectionDateTime DateTime Время последнего успешного подключения “0001-01-01T00:00:00”
Fn Тип данных Код ошибки фискального накопителя “Fn”:
Network Тип данных Код ошибки сети “Network”:
Ism Тип данных Код ошибки информационной системы маркировки “Ism”:

Тип: Fn

Имя поля Тип Назначение Пример
Code int Код ошибки ФН 0

Тип: Network

Имя поля Тип Назначение Пример
Code int Код ошибки сети 0

Тип: Ism

Имя поля Тип Назначение Пример
Code int Код ошибки ИСМ 0

Тип: Backlog

Имя поля Тип Назначение Пример
DocumentsCounter int Количество непереданных документов 0
DocumentFirstNumber int Номер первого непереданного документ 0
DocumentFirstDateTime DateTime Дата и время первого из непереданных документов “0001-01-01T00:00:00”

Тип: Warnings

Имя поля Тип Назначение Пример
CriticalError bool Критическая ошибка ФН false
MemoryOverflow bool Память ФН переполнена false
NeedReplacement bool Требуется срочная замена ФН false
OfdTimeout bool Превышено время ожидания ответа от ОФД false
ResourceExhausted bool Исчерпан ресурс ФН false

Тип: License

Имя поля Тип Назначение Пример
code int Код ошибки лицензирования 0
isEndUser bool Признак лицензии, выданной конечному пользователю.
true — лицензия выдана конечному пользователю.
false — лицензия выдана партнёру для перепродажи
false
isActivated bool Признак активации лицензии false
isBlocked bool Признак блокировки лицензии false
blockDate DateTime Дата блокировки “0001-01-01T00:00:00”
date DateTime Дата продажи лицензии “0001-01-01T00:00:00”
expired DateTime Дата истечения срока действия лицензии “0001-01-01T00:00:00”
updateExpired DateTime Дата истечения доступа к обновлениям “0001-01-01T00:00:00”
limitInstalls int Количество разрешённых привязок лицензии, равное числу ККТ, которые допускается привязать к одной лицензии 0
needObjectActivation bool Признак необходимости привязки объектов лицензирования после привязки лицензии false
limitObjects int Количество объектов привязки на каждую установку 0
setupTokenIndex int Индекс установочного токена 0
licenseUpdated DateTime Время последней проверки лицензии “0001-01-01T00:00:00”

Примеры ошибок

-1 — GetDeviceStatus: Не удалось найти устройство по deviceName =

{
    "Code": -1,
    "Description": "GetDeviceStatus: Не удалось найти устройство по deviceName = {device}",
    "Success": false
}

4 — Не указано имя ККТ

{
    "Code": 4,
    "Description": "Не указано имя ККТ",
    "Success": false
}

GET kkt/shift/status?device={device}

Получение краткого статуса смены и очереди ОФД.

URL: {{HTTPRoot}}/kkt/shift/status?device={device}

Параметры запроса

Имя параметра Тип Обяз Назначение Пример
device string + Имя устройства. Atol

Тело ответа

Успешный ответ (200 OK)

{
    "Result": {
        "ShiftNumber": 0,
        "CheckNumber": 0,
        "ShiftState": 1,
        "Backlog": {
            "DocumentsCounter": 0,
            "DocumentFirstNumber": 0,
            "DocumentFirstDateTime": "0001-01-01T00:00:00"
        }
    },
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле Result

Тип: ResponseCurrentStatus

Имя поля Тип Назначение Пример
ShiftNumber int Номер смены 4
CheckNumber int Номер последнего ФД 22
ShiftState int 1 — закрыта, 2 — открыта, 3 — истекла 2
Backlog Тип данных Backlog Статус обмена данными с ОФД “Backlog”:

Тип: Backlog

Имя поля Тип Назначение Пример
DocumentsCounter int Количество непереданных документов 0
DocumentFirstNumber int Номер первого непереданного документа 0
DocumentFirstDateTime datetime Дата первого непереданного документа “0001-01-01T00:00:00”

Примеры ошибок

-1 — GetDeviceStatus: Не удалось найти устройство по deviceName =

{
    "Code": -1,
    "Description": "GetDeviceStatus: Не удалось найти устройство по deviceName = {device}",
    "Success": false
}

4 — Не указано имя ККТ

{
    "Code": 4,
    "Description": "Не указано имя ККТ",
    "Success": false
}

GET kkt/counters/shift?device={device}

Получение счётчики за смену.

URL: {{HTTPRoot}}/kkt/counters/shift?device={device}

Параметры запроса

Имя параметра Тип Обяз Назначение Пример
device string + Имя устройства. Atol

Тело запроса

{
    "DeviceName": "{device}"
}

Тело ответа

Успешный ответ (200 OK)

{
    "Result": {
        "ShiftNumber": 40,
        "CashDrawer": {
            "Sum": 1365.68,
            "Count": 0
        },
        "ShiftIncome": {
            "Count": 0,
            "Sum": 0
        },
        "ShiftOutcome": {
            "Count": 0,
            "Sum": 0
        },
        "Counters": {
            "SumCorrection": 0,
            "NumberCorrections": 0,
            "Sales": {
                "Count": 1,
                "Sum": 50,
                "Payments": {
                    "Sum": 0,
                    "Cash": 50
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {
                    "TaxVat_5": 2.38
                }
            },
            "SalesReturn": {
                "Count": 0,
                "Sum": 0,
                "Payments": {
                    "Sum": 0
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {}
            },
            "SalesCorrection": {
                "Count": 0,
                "Sum": 0,
                "Payments": {
                    "Sum": 0
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {}
            },
            "SalesReturnCorrection": {
                "Count": 0,
                "Sum": 0,
                "Payments": {
                    "Sum": 0
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {}
            },
            "Purchases": {
                "Count": 0,
                "Sum": 0,
                "Payments": {
                    "Sum": 0
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {}
            },
            "PurchasesReturn": {
                "Count": 0,
                "Sum": 0,
                "Payments": {
                    "Sum": 0
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {}
            },
            "PurchasesCorrection": {
                "Count": 0,
                "Sum": 0,
                "Payments": {
                    "Sum": 0
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {}
            },
            "PurchasesReturnCorrection": {
                "Count": 0,
                "Sum": 0,
                "Payments": {
                    "Sum": 0
                },
                "Discount": {
                    "Count": 0,
                    "Sum": 0
                },
                "Adding": {
                    "Count": 0,
                    "Sum": 0
                },
                "Tax": {}
            }
        }
    },
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле Result

Тип: ResShiftTotal

Имя поля Тип Назначение Пример
ShiftNumber double Номер смены 40.0
CashDrawer Тип данных CashDrawer Детали денежного ящиика “CashDrawer”:
ShiftIncome Тип данных Внесение “ShiftIncome”:
ShiftOutcome Тип данных Выемка “ShiftOutcome”:
Counters Тип данных Счётчики за кассовую смену “Counters”: {
“SumCorrection”: 0,
“NumberCorrections”: 0,
“Sales”: {
“Count”: 1,
“Sum”: 50,
“Payments”: {
“Sum”: 0,
“Cash”: 50
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {
“TaxVat_5”: 2.38
}
},
“SalesReturn”: {
“Count”: 0,
“Sum”: 0,
“Payments”: {
“Sum”: 0
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {}
},
“SalesCorrection”: {
“Count”: 0,
“Sum”: 0,
“Payments”: {
“Sum”: 0
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {}
},
“SalesReturnCorrection”: {
“Count”: 0,
“Sum”: 0,
“Payments”: {
“Sum”: 0
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {}
},
“Purchases”: {
“Count”: 0,
“Sum”: 0,
“Payments”: {
“Sum”: 0
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {}
},
“PurchasesReturn”: {
“Count”: 0,
“Sum”: 0,
“Payments”: {
“Sum”: 0
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {}
},
“PurchasesCorrection”: {
“Count”: 0,
“Sum”: 0,
“Payments”: {
“Sum”: 0
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {}
},
“PurchasesReturnCorrection”: {
“Count”: 0,
“Sum”: 0,
“Payments”: {
“Sum”: 0
},
“Discount”: {
“Count”: 0,
“Sum”: 0
},
“Adding”: {
“Count”: 0,
“Sum”: 0
},
“Tax”: {}
}
}

Тип: CashDrawer

Имя поля Тип Назначение Пример
Sum decimal Сумма 1365.68
Count int Количество 7

Тип: ShiftIncome

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.0

Тип: ShiftOutcome

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.0

Тип: Counters

Имя поля Тип Назначение Пример
SumCorrection decimal Сумма коррекций 0.0
NumberCorrections int Количество коррекций 0
Sales Тип данных Чеки прихода “Sales”: {
“Count”: 0,
“Sum”: 50,
“Payments”: {
“Sum”: 24739.54,
“Cash”: 25163.08,
“Credit”: 9400.00,
“Electronically”: 4949.54,
“Barter”: 2350.00,
“Prepaid”: 4700.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_20”: 93.03,
“TaxVat_7”: 1536.90
}
}
SalesReturn Тип данных Чеки возврата прихода “SalesReturn”: {
“Count”: 45,
“Sum”: 4500.0,
“Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_7”: 294.30
}
},
SalesCorrection Тип данных Чеки прихода “SalesCorrection”: {
“Count”: 45,
“Sum”: 4500.0,
“Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_7”: 294.30
}
},
SalesReturnCorrection Тип данных Чеки возврата прихода “SalesReturnCorrection”: {
“Count”: 45,
“Sum”: 4500.0,
“Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_7”: 294.30
}
},
Purchases Тип данных Чеки расхода “Purchases”: {
“Count”: 45,
“Sum”: 4500.0,
“Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_7”: 294.30
}
},
PurchasesReturn Тип данных Чеки возврата расхода “PurchasesReturn”: {
“Count”: 45,
“Sum”: 4500.0,
“Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_7”: 294.30
}
},
PurchasesCorrection Тип данных Чеки расхода “PurchasesCorrection”: {
“Count”: 45,
“Sum”: 4500.0,
“Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_7”: 294.30
}
},
PurchasesReturnCorrection Тип данных Чеки возврата расхода “PurchasesReturnCorrection”: {
“Count”: 45,
“Sum”: 4500.0,
“Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
“Discount”: {
“Count”: 0,
“Sum”: 0.0
},
“Adding”: {
“Count”: 0,
“Sum”: 0.0
},
“Tax”: {
“TaxVat_7”: 294.30
}
}

Тип: Sales

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 50.0
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: SalesReturn

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.00
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: SalesCorrection

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.00
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: SalesReturnCorrection

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.00
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: Purchases

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.00
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: PurchasesReturn

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 1365.68
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: PurchasesCorrection

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.00
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: PurchasesReturnCorrection

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.00
Payments Тип данных Оплаты “Payments”: {
“Sum”: 4500.0,
“Cash”: 4500.00,
“Credit”: 1800.00,
“Electronically”: 900.00,
“Barter”: 450.00,
“Prepaid”: 900.00
},
Discount Тип данных Скидка Discount”:
Adding Тип данных Надбавки “Adding”:
Tax Тип данных Налоги “Tax”:

Тип: Payments

Имя поля Тип Назначение Пример
Sum decimal Общая сумма чеков 50.0
Cash decimal Сумма оплат наличными 50.0

Тип: Discount

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.0

Тип: Adding

Имя поля Тип Назначение Пример
Count int Количество 0
Sum decimal Сумма 0.0

Тип: Tax

Имя поля Тип Назначение Пример
TaxVat_5 decimal Налоги 0.0

Примеры ошибок

4 — Не указано имя ККТ

{
    "Code": 4,
    "Description": "Не указано имя ККТ",
    "Success": false
}

POST kkt/reboot

Перезагрузка устройства.

URL: {{HTTPRoot}}/kkt/reboot

Тело запроса

{
    "DeviceName": "Atol"
}
Имя поля Тип Обяз Назначение Пример
DeviceName string + Название устройства “Atol”

Тело ответа

Успешный ответ (200 OK)

{
    "Code": 0,
    "Description": "ОК",
    "Success": false
}

Примеры ошибок

2 — Не указано имя ККТ

{
    "Code": 2,
    "Description": "Bad Request",
    "Success": false
}

2 — Не найдено устройство

{
    "Code": 2,
    "Description": "RebootDevice(): Не найдено устройство {device}.",
    "Success": false
}

POST kkt/font/setting

Редактирование настроек шрифта шаблона для устройства.

URL: {{HTTPRoot}}/kkt/font/setting

Тело запроса

{
    "DeviceName": "{device}",
    "Settings": {
        "Name": "lines2",
        "TemplateSettingH1": "1",
        "TemplateSettingH2": "1",
        "TemplateSettingH3": "2",
        "TemplateSettingH4": "2",
        "TemplateSettingH5": "2"
    }
}
Имя поля Тип Обяз Назначение Пример
DeviceName string + Имя устройства “Atol”
Settings Тип данных + Настройки шрифта шаблона. “Settings”:

Поле Settings

Имя поля Тип Обяз Назначение Пример
Name string + Название шаблона “lines2”
TemplateSettingH1 string - Номер шрифта заголовка H1. Если не указано — ранее сохранённое значение стирается. “1”
TemplateSettingH2 string - Номер шрифта заголовка H2. Если не указано — ранее сохранённое значение стирается. “1”
TemplateSettingH3 string - Номер шрифта заголовка H3. Если не указано — ранее сохранённое значение стирается. “2”
TemplateSettingH4 string - Номер шрифта заголовка H4. Если не указано — ранее сохранённое значение стирается. “2”
TemplateSettingH5 string - Номер шрифта заголовка H5. Если не указано — ранее сохранённое значение стирается. “2”

Тело ответа

Успешный ответ (200 OK)

{
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Примеры ошибок

709 — Устройство не найдено

{
    "Code": 709,
    "Description": "Устройство не найдено: Устройство '{device}' не найдено.",
    "Success": false
}

GET pool/list

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

URL: {{HTTPRoot}}/pool/list

Тело ответа

Успешный ответ (200 OK)

{
    "Result": [
        "asd"
    ],
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле Result

Тип: массив пулов.

Имя поля Тип Назначение Пример
Result string[] Название пулов “asd”,
“dsa”

Служба

GET service/settings

Получение настроек службы

URL: {{HTTPRoot}}/service/settings

Тело ответа

Успешный ответ (200 OK)

{
    "Result": {
        "WcfServicePort": 4398,
        "WebServicePort": 8866,
        "ServiceTimeOut": "00:00:15",
        "ProxyServerSettings": {
            "IsUseProxy": false,
            "IpAddress": "",
            "Port": 0,
            "Name": "",
            "Password": ""
        },
        "MaxQueueSize": 100,
        "RepeatPrintingOnError": false
    },
    "Code": 0,
    "Description": "OK",
    "Success": true
}

Поле Result

Тип данных: ServiceSettings

Имя поля Тип Назначение Пример
WcfServicePort int Порт, на котором работает WCF-служба и принимает REST API запросы.

Если значение не удаётся прочитать из настроек сервера, возвращается значение по умолчанию — 4398.
4398
WebServicePort int Порт, на котором работает веб-страница администрирования сервера (добавление и настройка ККТ, редактирование рекламных шаблонов, просмотр очереди печати). Это тот адрес, который открывают в браузере.

Если значение не удаётся прочитать из настроек сервера, возвращается значение по умолчанию — 8866.
8866
ServiceTimeOut TimeSpan Таймаут обработки запросов.

Если значение не удаётся прочитать из настроек сервера, возвращается "00:00:00", без явной пометки ошибки.
“00:00:15”
MaxQueueSize int Максимальный размер очереди заданий.

Если значение не удаётся прочитать из настроек сервера, возвращается значение по умолчанию — 100.
100
RepeatPrintingOnError bool Повторять печать при ошибке/перезапуске.

Если значение не удаётся прочитать из настроек сервера, возвращается значение по умолчанию false.
false
ProxyServerSettings Тип данных Конфигурация прокси сервера “ProxyServerSettings”:

Тип: ProxyServerSettings

Имя поля Тип Назначение Пример
IsUseProxy bool Использовать прокси-сервер false
IsUseProxyService bool Использовать прокси-сервер для работы сервера ККМ false
IsUseProxyMarking bool Использовать прокси-сервер для работы с сервисами по проверки маркировки false
IpAddress string IP-адрес прокси ”“
Port int Порт прокси 0
Name string Логин к прокси-серверу ”“
Password string Пароль к прокси-серверу ”“

POST service/settings

Сохранение настроек служб

URL: {{HTTPRoot}}/service/settings

Тело запроса

{
    "ServiceSettings": {
        "WcfServicePort": 4398,
        "WebServicePort": 8888,
        "ServiceTimeOut": "00:00:15",
        "ProxyServerSettings": {
            "IsUseProxy": false,
            "IpAddress": "",
            "Port": 0,
            "Name": "",
            "Password": ""
        },
        "MaxQueueSize": 100,
        "RepeatPrintingOnError": false
    }
}

Тип: ServiceSettings

Имя поля Тип Обяз Назначение Пример
WcfServicePort int + Порт, на котором работает WCF-служба и принимает REST API запросы.

Если указано значение 0 или поле не указано, текущее значение порта в настройках сервера не изменяется.
4398
WebServicePort int + Порт, на котором работает веб-страница администрирования сервера (добавление и настройка ККТ, редактирование рекламных шаблонов, просмотр очереди печати). Это тот адрес, который открывают в браузере.

Если указано значение 0 или поле не указано, текущее значение порта в настройках сервера не изменяется.
8866
ServiceTimeOut string - Таймаут обработки запросов (hh:mm:ss).

Если поле не передано, будет сохранено значение "00:00:00"
“00:00:15”
ProxyServerSettings Тип данных - Конфигурация прокси сервера “ProxyServerSettings”:
MaxQueueSize int + Максимальный размер очереди заданий.

Значение сохраняется, если поле не передано в запросе — в таком случае будет сохранено значение 0.
100
RepeatPrintingOnError bool - Признак повторной печати задания при ошибке или перезапуске службы.

Значение сохраняется, если поле не передано в запросе — в этом случае будет сохранено значение false.
false

Тип: ProxyServerSettings

Имя поля Тип Обяз Назначение Пример
IsUseProxy bool - Признак использования прокси-сервера.

Если указано значение true, а поля IsUseProxyService и IsUseProxyMarking не переданы (или оба переданы как false), сервер принудительно устанавливает оба этих поля в true
false
IsUseProxyService bool - Признак использования прокси-сервера непосредственно для работы сервера ККМ false
IsUseProxyMarking bool - Признак использования прокси-сервера для обращения к сервисам проверки кодов маркировки false
IpAddress string - IP-адрес прокси-сервера “193.148.21.111”
Port int - Порт прокси-сервера 67
Name string - Логин доступа к прокси-серверу.

Если поле не передано, ранее сохранённый логин будет затёрт пустым значением.
“ProxyServer”
Password string - Пароль доступа к прокси-серверу.

Если поле не передано, ранее сохранённый пароль будет затёрт пустым значением.
“ProxyPassword”

Тело ответа

Успешный ответ (200 OK)

{
    "Code": 0,
    "Description": "OK",
    "Success": true
}