API ОФД

Версия 1.0 от 10.10.2024 Открыть pdf-файл

Введение

В документации приведено описание программного интерфейса приложений (API) информационной системы (ИС) «ОФД» (далее - API «ОФД»). API ИС «ОФД» позволяет сторонним (клиентским) приложениям возможность взаимодействовать с данными фискальных документов и отчетности о контрольно-кассовой технике (ККТ). Взаимодействие происходит через отправку HTTP-запросов к серверу и получение ответов в формате JSON, что обеспечивает удобный и структурированный обмен информацией.

Для обеспечения безопасности передаваемых данных используется протокол HTTPS.

1. Авторизация

Для получения токена авторизации, который будет использоваться для выполнения запросов, пользователю необходимо обратиться в раздел «Настройки» в Личном кабинете клиента.

Далее пользователь переходит на вкладку «Управление передачей данных» и попадает в блок создания заявки на получение доступа к использованию API 2.0.

  • Ключ доступа к API 2.0 (API KEY) предоставляется на личный кабинет организации (уникальную пару ИНН и КПП);
  • Имеется возможность настройки доступа на конкретный список касс в интерфейсе личного кабинета;
  • Имеется возможность блокировки ключа доступа в интерфейсе личного кабинета в случае компрометации;
  • Срок действия ключа доступа - от 1 года;
  • Право на выделение ключа доступа есть у пользователей с полными правами ко всем кассам в ЛКК.

После успешного заполнения заявки и обработки запроса, сгенерированный ключ появляется на соответствующей вкладке «Ключи доступа к API 2.0».

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

Используемое обозначение параметра ключа доступа в запросах - AuthToken={Code}

2. Запросы к ИС на получение информации по чекам и ККТ

В API ИС «ОФД» реализованы необходимые запросы для работы клиентского приложения с фискальными данными и кассами.

В запросах и ответах используется кодировка UTF-8. Ответы выдаются сервером в формате JSON. Код успешного ответа по протоколу HTTP равен 200.

Обобщенный вид ответа с кодом 200:

{
  "Status": "Success",
  "Data": {
    "Prop1": "Val1",
    "Prop2": "Val2",
    ...
    "PropN": "ValN"
  },
  "Elapsed": "чч:мм:сс.ддддддд"
}

Параметр «Status» – это состояние обработки запроса. Параметр имеет значение «Success» (запрос обработан успешно).

Параметр «Data» имеет значение в виде структуры вложенных параметров. Структура вложенных параметров представлена в следующем обобщенном виде, где «Prop1», «Prop2», … «PropN» и «Val1», «Val2», … «ValN» — параметры со значениями в разных видах представления.

Параметр «Elapsed» — время, затраченное ИС на обработку запроса.

Формат времени — представлен в строковом виде «чч:мм:сс.ддддддд» в формате дата-время со следующей структурой:

  • чч – часы;
  • мм – минуты;
  • сс – секунды;
  • ддддддд – доли секунды.

Если в ответе на запрос код по протоколу HTTP не равен 200, то запрос к API ИС «ОФД» выполнен с ошибкой. Возможные причины:

  • некорректно написан запрос;
  • допущена ошибка;
  • значения параметров заданы некорректно.

Обобщенный вид неуспешного ответа:

{
  "Status": "Failed",
  "Errors": [
    "Ошибка 1",
    "Ошибка 2",
    ...
    "Ошибка N"
  ],
  "Elapsed": "чч:мм:сс.ддддддд"
}

Параметр «Status» имеет значение «Failed» (обработка запроса не удалась).

Параметр «Errors» представлен в виде одномерного массива с сообщениями об ошибках. В массиве представлены строки, где «Ошибка 1», «Ошибка 2», … «Ошибка N» – перечисление сообщений об ошибках.

Параметр «Elapsed» – время затраченное системой на обработку запроса.

2.1. Запрос информации о KKT

В API ИС «ОФД» вы можете получить информацию о ККТ. Информацию о ККТ вы можете получить по текущему ФН и по архивному ФН. Запрос выполняется методом GET.

Запрос имеет вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/kkts?FNSerialNumber={FNumber}&KKTSerialNumber={KKTNumber}&KKTRegNumber={KKTRegNumber}&AuthToken={Code}

Параметры, необходимые для запроса:

  • INN – Идентификационный номер налогоплательщика (ИНН юридического лица);
  • FNumber – номер фискального накопителя (если в запросе параметр не указан, в ответ вернется информация по текущему ФН);
  • KKTNumber – заводской номер кассы;
  • KKTRegNumber – регистрационный номер кассы;
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Успешный ответ по протоколу HTTP равен коду 200. На запрос возвращается структура данных в формате JSON.

Успешный ответ на запрос:

{
  "Status": "Success",
  "Data": [
    {
   "Id": "00000000-0000-0000-0000-000000000000",
   "KktRegId": "9304171212297195",
      "KktName": "Касса 1",
      "SerialNumber": "44444444444443421132",
      "ActivationDate": "2017-01-13T12:15:48",
      "ContractStartDate": "2017-01-13T12:12:47",
      "ContractEndDate": "2018-02-12T12:12:47",
      "CreateDate": "2017-01-13T12:09:51",
      "FnNumber": "0666666666666660",
      "SignDate": "2017-01-14T10:00:00",
      "PaymentDate": "2017-01-13T12:15:43",
      "CheckDate": "2017-01-13T12:12:47",
      "LastDocOnKktDateTime": "2017-02-12T10:12:00",
      "LastDocOnOfdDateTimeUtc": "2017-02-12T07:13:10",
      "FirstDocumentDate": "2017-01-13T14:15:48",
      "FiscalAddress": "https://ofd.ru/",
      "FiscalPlace": "https://ofd.ru/",
      "Path": "/Мои кассы/Список касс 1/",
      "KktModel": "АТОЛ 42ФС",
      "FnEndDate": "2019-10-17T12:47:57"
    },
    ...
  ]
}

Описание параметров ответа представлено в таблице 1.

Таблица 1. Описание параметров ответа на запрос информации о KKT

ПараметрВид значенияОписание
IdString Уникальный номер ККТ (кассы)
KktRegIdString Регистрационный номер ККТ (кассы)
KktNameString Наименование кассы
SerialNumberString Заводской (серийный) номер ККТ (кассы)
ActivationDateString Дата успешной проверки регистрационного номера в ФНС
ContractStartDateString Дата начала действия контракта на получение услуг оператора “OFD.ru”
ContractEndDateString Дата окончания действия контракта на получение услуг оператора “OFD.ru”
CreateDateString Дата регистрации кассы в личном кабинете клиента
FnNumberString Номер фискального накопителя
SignDateString Дата подписания договора
PaymentDateString Дата оплаты услуг ОФД для кассы
CheckDateString Дата подписания КЭП (квалификационной электронной подписью)
LastDocOnKktDateTimeString Дата и время последнего документа, сгенерированного кассой (по локальному времени кассы)
LastDocOnOfdDateTimeUtcString Дата и время получения последнего документа кассы в ОФД (по времени оператора “OFD.ru” в UTC)
FirstDocumentDateString Дата и время генерации кассой первого документа
FiscalAddressString Адрес установки кассы
FiscalPlaceString Место расчетов
PathString Иерархия расположения кассы в личном кабинете клиента
KktModelString Модель кассы (ККТ)
FnEndDateString Дата и время окончания работы фискального накопителя

В ответ на запрос к ИС возможна следующая ошибка:

  • InnNotFound – для текущей учетной записи не найдено юридическое лицо по заданному ИНН.

2.2. Запрос списка отчетов по смене одной ККТ

В API ИС «ОФД» вы может сделать запрос списка отчетов по кассе на указанный вами период. Запрос выполняется методом GET.

Запрос имеет вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/kkt/{KKT}/zreports?dateFrom={Date1}&dateTo={Date2}&AuthToken={Code}

Параметры необходимые для запроса:

  • INN – идентификационный номер налогоплательщика (ИНН юридического лица);
  • KKT – регистрационный номер кассы (строка символов);
  • Date1 – начальная дата периода для формирования отчета. Значения содержат дату и время в формате ISO;
  • Date2 – конечная дата периода для формирования отчета. Значения содержат дату и время в формате ISO. Разница значений Date1 и Date2 не должна превышать 30 дней. Даты начала и конца периода формирования списка отчетов не должны быть одинаковые.
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Успешный ответ имеет следующий вид:

{
  "Status": "Success",
  "Data": [
    {
   "Id": "fc6562fc-e8b9-4ce2-a7c1-461a02171a98",
   "Open_CDateUtc": "2016-07-26T09:28:54",
      "Close_CDateUtc": "2016-07-27T15:47:36",
      "UserInn": "7802870820",
      "KktRegNumber": "111222333",
      "FnNumber": "99990789388",
      "ShiftNumber": 1,
      "Operator": "Администратор",
      "Open_DocNumber": 2,
      "Open_DocDateTime": "2016-07-26T12:28:00",
      "Open_DocRawId": "7e66f625-2cf6-428f-bf98-be37077daf55",
      "Close_DocNumber": 9,
      "Close_DocDateTime": "2016-07-27T18:47:00",
      "Close_DocRawId": "cc3110c0-f1ca-49d1-9d3c-1f880e28957f",
      "ShiftDocsCount": 9,
      "IncomeSumm": 375420,
      "IncomeCashSumm": 0,
      "IncomeECashSumm": 0,
      "IncomeCount": 5,
      "AdvanceSumm": 0,
      "CreditSumm": 0,
      "ExchangeSumm": 0,
      "RefundIncomeSumm": 6360,
      "RefundIncomeCashSumm": 0,
      "RefundIncomeCount": 1,
      "ExpenseSumm": 0,
      "ExpenseCount": 0,
      "RefundExpenseSumm": 0,
      "RefundExpenseCount": 0,
      "RefundAdvanceSumm": 0,
      "RefundCreditSumm": 0,
      "RefundExchangeSumm": 0,
      "TaxTotalSumm": 0,
      "Tax10Summ": 0,
      "Tax18Summ": 0,
      "Tax110Summ": 0,
      "Tax118Summ": 0,
      "TaxNaSumm": 0,
      "Tax0Summ": 0
    },
    ...
  ]
}

Описание параметров ответа представлено в таблице 2.

Таблица 2. Описание параметров ответа на запрос списка отчетов по смене для заданной кассы за период

ПараметрВид значенияОписание
IdString Идентификатор смены
Open_CDateUtcString Дата и время отчета об открытии смены (UTC +3)
Close_CDateUtcString Дата и время отчета о закрытии смены (UTC +3)
UserInnString ИНН владельца кассы
KktRegNumberString Регистрационный номер кассы
FnNumberString Номер фискального накопителя, установленного в кассу
ShiftNumberInteger Номер смены по данным кассы
OperatorString Фамилия, имя, отчество оператора
Open_DocNumberInteger Фискальный номер документа отчета об открытии смены,
присвоенный кассой (уникальный в рамках текущего фискального режима)
Open_DocDateTimeString Дата и время формирования отчета об открытии смены по данным кассы
Open_DocRawIdString Идентификатор документа отчета об открытии смены,
полученного от кассы
Close_DocNumberInteger Фискальный номер документа отчета о закрытии смены,
присвоенный кассой (уникальный в рамках текущего фискального режима)
Close_DocDateTimeString Дата и время формирования отчета о закрытии смены по данным кассы
Close_DocRawIdString Идентификатор документа отчета о закрытии смены,
полученного от кассы
ShiftDocsCountInteger Общее количество документов за смену
IncomeSummInteger Сумма полученных денежных средств за смену в копейках
IncomeCashSummInteger Сумма полученных денежных средств за смену наличными в копейках
IncomeECashSummInteger Сумма полученных денежных средств за смену безналичными в копейках
IncomeCountInteger Количество выданных за смену чеков, соответствующих получению суммы IncomeSumm
AdvanceSummInteger Сумма полученных денежных средств авансом в копейках
CreditSummInteger Сумма полученных денежных средств кредита в копейках
ExchangeSummInteger Сумма полученных денежных средств обмена в копейках
RefundIncomeSummInteger Сумма выданных (возвращенных) денежных средств за смену в копейках
RefundIncomeCashSummInteger Сумма выданных (возвращенных) денежных средств за смену наличными в копейках
RefundIncomeCountInteger Количество чеков, выданных за смену, соответствующих возврату суммы RefundIncomeSumm
ExpenseSummInteger Сумма расхода за смену
ExpenseCountInteger Количество чеков расхода за смену
RefundExpenseSummInteger Сумма возвратов расхода за смену
RefundExpenseCountInteger Количество чеков возврата прихода за смену
RefundAdvanceSummInteger Сумма возврата аванса
RefundCreditSummInteger Сумма возврата кредита
RefundExchangeSummInteger Сумма возврата обмена
TaxTotalSummInteger Общая сумма удерживаемых налогов,
начисленная за смену в копейках
Tax10SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10%,
начисленная за смену в копейках
Tax18SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20%,
начисленная за смену в копейках
Tax110SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10/110,
начисленная за смену в копейках
Tax118SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20/120,
начисленная за смену в копейках
TaxNaSummInteger Сумма по операциям, не облагаемая НДС, накопленная за смену в копейках
Tax0SummInteger Сумма по операциям, облагаемая НДС по ставке 0%,
накопленная за смену в копейках

В ответ на запрос к ИС возможны следующие ошибки:

  • InnNotFound – для текущей учетной записи не найдена организация;
  • KktNotFound – для текущей учетной записи не найдена касса с заданным номером;
  • InvalidTimeInterval – неверно указан временной интервал;
  • TimeIntervalMustNotExceed30Days – временной интервал более 30 дней.

2.3. Запрос списка отчетов по смене для всех ККТ за период

Запрос на получение списка отчетов по смене для всех ККТ за период выполняется методом GET.

Запрос имеет вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/zreports?dateFrom={Date1}&dateTo={Date2}&AuthToken={Code}

Параметры, необходимые для запроса:

  • INN – идентификационный номер налогоплательщика (ИНН юридического лица);
  • KKT – регистрационный номер кассы (строка символов);
  • Date1 – начальная дата периода для формирования отчета. Значения содержат дату и время в формате ISO;
  • Date2 – конечная дата периода для формирования отчета. Значения содержат дату и время в формате ISO. Разница значений Date1 и Date2 не должна превышать 30 дней. Даты начала и конца периода формирования списка отчетов не должны быть одинаковые.
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Пример успешного ответа и описание параметров ответа представлено в разделе 2.2.

В ответ на запрос к ИС возможны следующие ошибки:

  • InnNotFound – для текущей учетной записи не найдена организация;
  • InvalidTimeInterval – неверно указан временной интервал;
  • TimeIntervalMustNotExceed30Days – временной интервал более 30 дней.

Внимание! В ответе на запрос возвращается информация по сменам для всех ККТ только по текущему ФН.

2.4. Список чеков за период по заданной кассе

Запрос на получение списка чеков за период по заданной кассе выполняется методом GET.

Запрос имеет вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/kkt/{KKT}/receipts?dateFrom={Date1}&dateTo={Date2}&AuthToken={Code}

Параметры, необходимые для запроса:

  • INN – идентификационный номер налогоплательщика (ИНН юридического лица);
  • KKT – регистрационный номер кассы (строка символов);
  • Date1 – начальная дата периода для формирования отчета. Значения содержат дату и время в формате ISO;
  • Date2 – конечная дата периода для формирования отчета. Значения содержат дату и время в формате ISO. Разница значений Date1 и Date2 не должна превышать 30 дней. Даты начала и конца периода формирования списка отчетов не должны быть одинаковые.
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Успешный ответ имеет следующий вид:

{
  "Status": "Success",
  "Data": [
    {
   "Id": "3a6e3b83-a0b0-4587-bfb3-1b7539b05cf3",
   "CDateUtc": "2016-07-26T09:32:41",
      "Tag": 0,
      "IsBso": false,
      "IsCorrection": false,
      "OperationType": "Income",
      "UserInn": "7802870820",
      "KktRegNumber": "111222333",
      "FnNumber": "99990789388",
      "DocNumber": 3,
      "DocDateTime": "2016-07-26T12:32:00",
      "DocShiftNumber": 1,
      "ReceiptNumber": 1,
      "DocRawId": "3a6e3b83-a0b0-4587-bfb3-1b7539b05cf3",
      "TotalSumm": 0,
      "CashSumm": 0,
      "ECashSumm": 0,
      "PrepaidSumm": 0,
      "CreditSumm": 0,
      "ProvisionSumm": 0,
      "TaxTotalSumm": 0,
      "Tax10Summ": 0,
      "Tax18Summ": 0,
      "Tax110Summ": 0,
      "Tax118Summ": 0,
      "Tax0Summ": 0,
      "TaxNaSumm": 0,
      "Depth": 3
    },
    ...
  ]
}

Описание параметров ответа представлено в таблице 3.

Таблица 3. Описание параметров ответа на запрос списка чеков за период по заданной кассе

ПараметрВид значенияОписание
IdString Уникальный номер фискального документа в ИС используется в запросе подробной информации по чеку, как RawId
CDateUtcString Дата и время приема документа в ИС (UTC +3)
TagInteger Численный признак вида документа:
3 – чек;
31 – чек коррекции;
4 – бланк строгой отчетности;
41 – бланк строгой отчетности коррекции
IsBsoBoolean Имеет значение true, если документ является БСО, иначе (если документ является чеком) – false
IsCorrectionBoolean Имеет значение true, если чек или бланк строгой отчетности (БСО) является документом коррекции, иначе – false
OperationTypeString Тип операции:
«Income» – приход;
«Expense» – расход;
«RefundIncome» – возврат прихода;
«RefundExpense» – возврат расхода.
UserInnString ИНН владельца кассы
KktRegNumberString Регистрационный номер кассы
FnNumberString Номер фискального накопителя, установленного в кассу
DocNumberInteger Фискальный номер документа
DocDateTimeString Дата и время формирования документа по данным кассы
DocShiftNumberInteger Номер смены (по данным кассы), в которую был сформирован документ
ReceiptNumberInteger Номер документа в смене (по данным кассы)
DocRawIdString Уникальный номер фискального документа в ИС, (используется в запросе подробной информации по чеку, как RawId, дублирует поле Id)
TotalSummInteger Общая сумма по чеку в копейках
CashSummInteger Сумма по чеку (БСО) наличными в копейках
ECashSummInteger Сумма по чеку (БСО) электронными в копейках
PrepaidSummInteger Сумма по чеку (БСО) предоплатой (авансами)
CreditSummInteger Сумма по чеку (БСО) постоплатами (кредитами)
ProvisionSummInteger Сумма по чеку (БСО) встречными предоставлениями
TaxTotalSummInteger Общая сумма удерживаемых налогов, начисленная за смену в копейках
Tax10SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10%, начисленная за смену в копейках
Tax18SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20%, начисленная за смену в копейках
Tax110SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10/110, начисленная за смену в копейках
Tax118SummInteger Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20/120, начисленная за смену в копейках
TaxNaSummInteger Сумма по операциям, не облагаемая НДС, накопленная за смену в копейках
Tax0SummInteger Сумма по операциям, облагаемая НДС по ставке 0%, накопленная за смену в копейках
DepthInteger Количество товарных позиций в чеке

В ответе на запрос к ИС возможны следующие сообщения об ошибке:

  • InnNotFound – для текущей учетной записи не найдена организация;
  • KktNotFound – для текущей учетной записи не найдена касса с заданным номером;
  • InvalidTimeInterval – неверно указан временной интервал;
  • TimeIntervalMustNotExceed7Days – временной интервал более 7 дней.

2.5. Список чеков за смену по заданной кассе

Запрос на получение списка за смену по заданной кассе выполняется методом GET.

Запрос имеет вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/kkt/{KKT}/receipts?ShiftNumber={Shift}&FnNumber={Fn}&AuthToken={Code}

Здесь:

  • INN – ИНН юридического лица;
  • KKT – регистрационный номер кассы (строка символов);
  • Shift – номер смены, по которой требуется сгенерировать отчет;
  • Fn – номер фискального накопителя, установленного в кассу;
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Пример успешного ответа приведен в разделе 2.4. Описание параметров ответа представлено в Таблице 3, описание возможных ошибок приведено в разделе 2.4.

2.6. Подробная информация по чеку

Запрос на получение подробной информации по конкретному чеку может быть выполнен двумя способами:

  • по уникальному номеру фискального документа;
  • по порядковому номеру смены и номеру документа в смене.

Запрос выполняется методом GET

Запрос по уникальному номеру фискального документа имеет вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/kkt/{KKT}/receipt/{RawId}?AuthToken={Code}

Запрос по порядковому номеру смены и номеру документа в смене имеет вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/kkt/{KKT}/zreport/{ShiftNumber}/receipt/{DocShiftNumber}?AuthToken={Code}

Необходимые параметры для запросов:

  • INN – ИНН юридического лица. Строка состоит из 10 цифр (от 0 до 9);
  • KKT – регистрационный номер кассы (строка символов);
  • RawId – уникальный номер фискального документа в ИС «ОФД» (строка в формате UUID);
  • ShiftNumber – номер смены, в течение которой был сгенерирован документ;
  • DocShiftNumber – номер документа внутри смены;
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Успешный ответ имеет следующий вид:

{
    "Status": "Success",
    "Data": {
   "Tag": 3,
   "User": "ООО МКАС СПб",
        "UserInn": "7802870820 ",
        "Number": 1,
        "DateTime": "2016-07-26T12:32:00",
        "ShiftNumber": 1,
        "OperationType": 1,
        "TaxationType": 1,
        "Operator": "Администратор",
        "KKT_RegNumber": "111222333",
        "FN_FactoryNumber": "99990789388",
        "Items": [
           {
               "Name": "Услуги",
               "Price": 599000,
               "Quantity": 12,
               "Total": 599000,
               "CalculationMethod": 4,
               "SubjectType": 1,
               "NDS_Rate": 1,
               "NDS_Summ": 99833,
               "Nds00_TotalSumm": 0
           }
        ],
        "Buyer_Address": "",
        "Nds18_TotalSumm": 99833,
        "Amount_Total": 599000,
        "Amount_Cash": 0,
        "Amount_ECash": 599000,
        "Document_Number": 3,
        "FiscalSign": "MQTLUGn8",
        "DecimalFiscalSign": "3393623696",
        "KKT_MachineNumber": "1",
        "InternetSign": 1,
        "Extra": [
            {
                "Name": "Name",
                "Value": "Value"
            },
            {
                "Name": "Name",
                "Value": "Value"
            }
        ],
        "Format_Version": 2,
        "Amount_Advance": 0,
        "Amount_Loan": 0,
        "Amount_Granting": 0
    }
}

Описания параметров структуры бланка строгой отчетности представлены в таблице 4.

Таблица 4. Описание параметров бланка строгой отчетности

ПараметрВложенный параметрВид значенияОписаниеТег
Tag Integer Численный признак вида документа:
3 – чек;
4 – бланк строгой отчетности
User String Полное имя или наименование владельца кассы1048
UserInn String ИНН владельца кассы1018
Number Integer Номер документа внутри смены1042
DateTime String Дата и время формирования документа (чека)1012
ShiftNumber Integer Номер смены (по данным кассы), в которую был сформирован документ1038
OperationType Integer Тип операции:1054
«1» – приход;
«2» – возврат прихода;
«3» – расход;
«4» – возврат расхода.
TaxationType Integer Внимание! Возможные (корректные) значения типа налогообложения ограничиваются значениями, выбранными при регистрации кассы. Чтобы изменить список допустимых типов налогообложения, необходимо выполнить перерегистрацию кассы.
Тип налогообложения:
1055
«1» — общая система налогообложения;
«2» — упрощенная система налогообложения (доход);
«4» — упрощенная система налогообложения (доход минус расход);
«8» — единый налог на вмененный доход;
«16» — единый сельскохозяйственный налог;
«32» — патентная система налогообложения.
Operator String Должность, фамилия, имя, отчество (фамилия и инициалы) оператора1021
KKT_RegNumber String Регистрационный номера кассы1037
FN_FactoryNumber String Номер фискального накопителя, установленного в кассу1041
Items Array Список товарных позиций в чеке1059
Object
NameString Наименование товарной позиции в чеке1030
PriceInteger Цена в копейках за единицу измерения товарной позиции1079
QuantityFloat Количество единиц товарной позиции1023
TotalInteger Стоимость товарной позиции в копейках1043
CalculationMethodInteger Признак способа расчета.
Может принимать следующие значения
1214
1 – предоплата 100%;
2 – предоплата;
3 – аванс;
4 – полный расчет;
5 – частичный расчет;
6 – передача в кредит;
7 – оплата в кредит.
SubjectTypeInteger Признак предмета расчета.
Возможные значения представлены в разделе 2.6.1
1212
NDS_RateInteger Ставка НДС принимает значения:
1 - НДС 20%;
2 - НДС 10%;
3 - НДС 20/120;
4 - НДС 10/110;
5 - НДС 0%;
6 - НДС не облагается.
NDS_SummInteger Общая сумма НДС в копейках
UnitOfMeasureString Единица измерения предмета расчета1197
OriginCountryCodeString Цифровой код страны происхождения товара в соответствии с Общероссийским классификатором стран мира1230
CustomDeclarationNumberString Номер таможенной декларации в соответствии с форматом, установленным решением Комиссии Таможенного союза от 20.05.2010 N 257 (в ред. 17.12.2019 N 223) «О форме декларации на товары и порядке ее заполнения»1231
ProductCheckResultDetailsInteger Результаты проверки товара с обязательной маркировкой.
Параметр может принимать следующие значения:
2106
0 - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен
1 - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен
3 - [М] Проверка КП КМ выполнена с положительным результатом, статус товара ОИСМ не проверен
16 - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
17 - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
19 - [М] Проверка КП КМ выполнена в ФН с положительным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
5 - [М-] Проверка КП КМ выполнена с отрицательным результатом, статус товара у ОИСМ некорректен
7 - [М-] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ некорректен
15 - [М+] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ корректен
Nds18_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 20% в копейках1102
Nds10_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 10% в копейках1103
Nds00_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 0% в копейках1104
NdsNA_TotalSumm Integer Сумма, к которой не применяется НДС в копейках1105
Nds18_CalculatedTotalSumm Integer Сумма НДС чека с рассчитанной ставкой 20%1106
Nds10_CalculatedTotalSumm Integer Сумма НДС чека с рассчитанной ставкой 10%1107
ProductNomenclature Array Код товарной номенклатуры1162
NDS_PieceSumm Integer Размер НДС за единицу предмета расчета1198
ProductAdditionalRequisite String Дополнительный реквизит предмета расчета1191
RetailPlaceAddress String Адрес расчётов1009
Buyer_Address String Адрес покупателя (используется службами доставки)1008
Sender_Address String Адрес электронной почты отправителя чека1117
PaymentAgent_Phone String Телефон оператора по приему платежей1074
MoneyOperator_Phone String Телефон оператора по переводу денежных средств1075
BankAgent_Phone String Телефон платёжного агента1073
BankAgent_Operation String Операция платёжного агента1044
MoneyOperator_Name String Наименование оператора по переводу денежных средств1026
MoneyOperator_Address String Адрес оператора по переводу денежных средств1005
MoneyOperator_INN String ИНН оператора по переводу денежных средств1016
Amount_Total Integer Общая сумма по чеку в копейках1020
Amount_Cash Integer Сумма наличными по чеку в копейках1031
Amount_ECash Integer Сумма, оплаченная картой в копейках1081
Document_Number Integer Фискальный номер документа1040
FiscalSign String Фискальный признак документа1077
DecimalFiscalSign String Фискальный признак документа
KKT_MachineNumber String Заводской номер автоматического устройства для расчетов1036
InternetSign Integer Признак осуществления расчетов только в сети «Интернет», в которой отсутствует устройство для печати фискальных документов в составе ККТ1108
Extra Array Дополнительный реквизит пользователя по чеку1084
Object
NameString Наименование дополнительного реквизита по чеку1085
ValueString Значение дополнительного реквизита по чеку1086
Format_Version Integer Номер версии формата фискальных документов1209
Amount_Advance Integer Сумма предоплаты (зачет аванса)1215
Amount_Loan Integer Сумма постоплаты (кредита)1216
Amount_Granting Integer Сумма встречным предоставлением1217
TaxAuthority_Site String Сайт налогового органа (Адрес сайта ФНС)1060
Calculation_Place String Место расчетов1187
Supplier_Phone String Телефон поставщика1171
Operator_INN String ИНН кассира1203
PaymentAgentMode String Применение платежными агентами (субагентами)1057
ReceiptAdditionalRequisite String Дополнительный реквизит чека (БСО)1192
ProductCheckResult Integer Результаты проверки маркированных товаров2107
ProductUnitOfMeasure Integer Единицы измерения количества предмета расчета.
Параметр может принимать значения, описанные в разделе 2.6.2
2108
ProductCode Object Код маркировки.
Параметр может иметь в составе один из параметров, описанных в таблице 6 со значением кода маркировки

Таблица 5. Описание параметров чека коррекции

ПараметрВложенный параметрВид значенияОписаниеТег
Tag Integer Численный признак вида документа:
31 – чек коррекции;
41 – бланк строгой отчетности коррекции
User String Полное имя или наименование владельца кассы1048
UserInn String ИНН владельца кассы1018
Number Integer Номер документа внутри смены1042
DateTime String Дата и время формирования документа (чека)1012
ShiftNumber Integer Номер смены (по данным кассы), в которую был сформирован документ1038
OperationType String Тип операции:1054
«Income» – приход;
«Expence» – расход;
«RefundIncome» – возврат прихода;
«RefundExpence» – возврат расхода.
TaxationType Integer Внимание! Возможные (корректные) значения типа налогообложения ограничиваются значениями, выбранными при регистрации кассы. Чтобы изменить список допустимых типов налогообложения, необходимо выполнить перерегистрацию кассы.
Тип налогообложения:
1055
«1» — общая система налогообложения;
«2» — упрощенная система налогообложения (доход);
«4» — упрощенная система налогообложения (доход минус расход);
«8» — единый налог на вмененный доход;
«16» — единый сельскохозяйственный налог;
«32» — патентная система налогообложения.
Operator String Должность, фамилия, имя, отчество (фамилия и инициалы) оператора1021
KKT_RegNumber String Регистрационный номера кассы1037
FN_FactoryNumber String Номер фискального накопителя, установленного в кассу1041
Correction_Type Integer Тип коррекции принимает значения:1173
0 - самостоятельно;
1 - по предписанию
Correction Object Основание для коррекции1174
DateString Дата документа основания для коррекции1178
DocNumberString Номер документа основания для коррекции1179
Items Array Список товарных позиций в чеке1059
Object
NameString Наименование товарной позиции в чеке1030
PriceInteger Цена в копейках за единицу измерения товарной позиции1079
QuantityFloat Количество единиц товарной позиции1023
TotalInteger Стоимость товарной позиции в копейках1043
CalculationMethodInteger Признак способа расчета.
Может принимать следующие значения
1214
1 – предоплата 100%;
2 – предоплата;
3 – аванс;
4 – полный расчет;
5 – частичный расчет;
6 – передача в кредит;
7 – оплата в кредит.
SubjectTypeInteger Признак предмета расчета.
Возможные значения представлены в разделе 2.6.1
1212
NDS_RateInteger Ставка НДС принимает значения:
1 - НДС 20%;
2 - НДС 10%;
3 - НДС 20/120;
4 - НДС 10/110;
5 - НДС 0%;
6 - НДС не облагается.
NDS_SummInteger Общая сумма НДС в копейках
UnitOfMeasureString Единица измерения предмета расчета1197
OriginCountryCodeString Цифровой код страны происхождения товара в соответствии с Общероссийским классификатором стран мира1230
CustomDeclarationNumberString Номер таможенной декларации в соответствии с форматом, установленным решением Комиссии Таможенного союза от 20.05.2010 N 257 (в ред. 17.12.2019 N 223) «О форме декларации на товары и порядке ее заполнения»1231
ProductCheckResultDetailsInteger Результаты проверки товара с обязательной маркировкой.
Параметр может принимать следующие значения:
2106
0 - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен
1 - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен
3 - [М] Проверка КП КМ выполнена с положительным результатом, статус товара ОИСМ не проверен
16 - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
17 - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
19 - [М] Проверка КП КМ выполнена в ФН с положительным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
5 - [М-] Проверка КП КМ выполнена с отрицательным результатом, статус товара у ОИСМ некорректен
7 - [М-] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ некорректен
15 - [М+] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ корректен
Nds18_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 20% в копейках1102
Nds10_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 10% в копейках1103
Nds00_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 0% в копейках1104
NdsNA_TotalSumm Integer Сумма, к которой не применяется НДС в копейках1105
Nds18_CalculatedTotalSumm Integer Сумма НДС чека с рассчитанной ставкой 20%1106
Nds10_CalculatedTotalSumm Integer Сумма НДС чека с рассчитанной ставкой 10%1107
ProductNomenclature Array Код товарной номенклатуры1162
NDS_PieceSumm Integer Размер НДС за единицу предмета расчета1198
ProductAdditionalRequisite String Дополнительный реквизит предмета расчета1191
RetailPlaceAddress String Адрес расчётов1009
Buyer_Address String Адрес покупателя (используется службами доставки)1008
Sender_Address String Адрес электронной почты отправителя чека1117
PaymentAgent_Phone String Телефон оператора по приему платежей1074
MoneyOperator_Phone String Телефон оператора по переводу денежных средств1075
BankAgent_Phone String Телефон платёжного агента1073
BankAgent_Operation String Операция платёжного агента1044
MoneyOperator_Name String Наименование оператора по переводу денежных средств1026
MoneyOperator_Address String Адрес оператора по переводу денежных средств1005
MoneyOperator_INN String ИНН оператора по переводу денежных средств1016
Amount_Total Integer Общая сумма по чеку в копейках1020
Amount_Cash Integer Сумма наличными по чеку в копейках1031
Amount_ECash Integer Сумма, оплаченная картой в копейках1081
Document_Number Integer Фискальный номер документа1040
FiscalSign String Фискальный признак документа1077
DecimalFiscalSign String Фискальный признак документа
KKT_MachineNumber String Заводской номер автоматического устройства для расчетов1036
InternetSign Integer Признак осуществления расчетов только в сети «Интернет», в которой отсутствует устройство для печати фискальных документов в составе ККТ1108
Extra Array Дополнительный реквизит пользователя по чеку1084
Object
NameString Наименование дополнительного реквизита по чеку1085
ValueString Значение дополнительного реквизита по чеку1086
Format_Version Integer Номер версии формата фискальных документов1209
Amount_Advance Integer Сумма предоплаты (зачет аванса)1215
Amount_Loan Integer Сумма постоплаты (кредита)1216
Amount_Granting Integer Сумма встречным предоставлением1217
TaxAuthority_Site String Сайт налогового органа (Адрес сайта ФНС)1060
Calculation_Place String Место расчетов1187
Supplier_Phone String Телефон поставщика1171
Operator_INN String ИНН кассира1203
PaymentAgentMode String Применение платежными агентами (субагентами)1057
ReceiptAdditionalRequisite String дополнительный реквизит чека (БСО)1192
ProductCheckResult Integer Результаты проверки маркированных товаров2107
ProductUnitOfMeasure Integer Единицы измерения количества предмета расчета.
Параметр может принимать значения, описанные в разделе 2.6.2
2108
ProductCode Object Код маркировки.
Параметр может иметь в составе один из параметров, описанных в таблице 6 со значением кода маркировки

Таблица 6. Возможные значения параметра «ProductCode» (Тег 1163)

ПараметрВид значенияОписаниеТег
Code_EAN_8String Код товара в формате EAN-81301
Code_EAN_13String Код товара в формате EAN-131302
Code_ITF_14String Код товара в формате ITF-141303
Code_GS_1String Код товара в формате GS1, нанесенный на товар, не подлежащий маркировке средствами идентификации1304
Code_GS_1MString Код товара в формате GS1, нанесенный на товар, подлежащий маркировке средствами идентификации1305
Code_KMKString Код товара в формате короткого кода маркировки, нанесенный на товар, подлежащий маркировке средствами идентификации1306
Code_MIString Контрольно-идентификационный знак мехового изделия1307
Code_F_1String Код товара в формате Ф.11320
Code_F_6String Код товара в формате Ф.61325

Ошибки в ответе на запрос, обрабатываемые ИС:

  • InnNotFound – для текущей учетной записи не найдена организация;
  • KktNotFound – для текущей учетной записи не найдена касса с заданным номером;
  • DocumentNotFound – документ (чек) не найден.

2.6.1. Возможные значения признака предмета расчета

  • 1 — о реализуемом товаре, за исключением подакцизного товара (наименование и иные сведения, описывающие товар) – «ТОВАР» или «Т»;
  • 2 — о реализуемом подакцизном товаре (наименование и иные сведения, описывающие товар) – «ПОДАКЦИЗНЫЙ ТОВАР» или «АТ»;
  • 3 — о выполняемой работе (наименование и иные сведения, описывающие работу) – «РАБОТА» или «Р»;
  • 4 — об оказываемой услуге (наименование и иные сведения, описывающие услугу) – «УСЛУГА» или «У» или может не печататься;
  • 5 — о приеме ставок при осуществлении деятельности по проведению азартных игр – «СТАВКА АЗАРТНОЙ ИГРЫ» или «СТАВКА ИГРЫ» или «СА»;
  • 6 — о выплате денежных средств в виде выигрыша при осуществлении деятельности по проведению азартных игр – «ВЫИГРЫШ АЗАРТНОЙ ИГРЫ» или «ВЫИГРЫШ АИ» или «ВА»;
  • 7 — о приеме денежных средств при реализации лотерейных билетов, электронных лотерейных билетов, приеме лотерейных ставок при осуществлении деятельности по проведению лотерей – «ЛОТЕРЕЙНЫЙ БИЛЕТ» или «СТАВКА ЛОТЕРЕИ» или «СЛ»;
  • 8 — о выплате денежных средств в виде выигрыша при осуществлении деятельности по проведению лотерей – «ВЫИГРЫШ ЛОТЕРЕИ» или «ВЫИГРЫШ ЛОТЕРЕИ» или «ВЛ»;
  • 9 — о предоставлении прав на использование результатов интеллектуальной деятельности или средств индивидуализации – «ПРЕДОСТАВЛЕНИЕ РИД» или «РИД» (в ред. Приказа ФНС России от 22.10.2018 N ММВ-7-20/605@) (см. текст в предыдущей редакции);
  • 10 — об авансе, задатке, предоплате, кредите, взносе в счет оплаты, пени, штрафе, вознаграждении, бонусе и ином аналогичном предмете расчета – «ПЛАТЕЖ» или «П», «ВЫПЛАТА» или «В»;
  • 11 — о вознаграждении пользователя, являющегося платежным агентом (субагентом), банковским платежным агентом (субагентом), комиссионером, поверенным или иным агентом – «АГЕНТСКОЕ ВОЗНАГРАЖДЕНИЕ» или «АВ»;
  • 12 — о предмете расчета, состоящем из предметов, каждому из которых может быть присвоено значение от «1» до «11» – «СОСТАВНОЙ ПРЕДМЕТ РАСЧЕТА» или «СПР»;
  • 13 — о предмете расчета, не относящемуся к предметам расчета, которым может быть присвоено значение от «1» до «12» и от «14» до «18» – «ИНОЙ ПРЕДМЕТ РАСЧЕТА» или «ИПР»;
  • 14 — о передаче имущественных прав – «ИМУЩЕСТВЕННОЕ ПРАВО»;
  • 15 — о внереализационным доходе – «ВНЕРЕАЛИЗАЦИОННЫЙ ДОХОД» или может не печататься;
  • 16 — о суммах расходов, уменьшающих сумму налога (авансовых платежей) в соответствии с пунктом 3.1 статьи 346.21 Налогового кодекса Российской Федерации – «СТРАХОВЫЕ ВЗНОСЫ»;
  • 17 — о суммах уплаченного торгового сбора – «ТОРГОВЫЙ СБОР»;
  • 18 — о курортном сборе – «КУРОРТНЫЙ СБОР»;
  • 19 — о залоге – «ЗАЛОГ»;
  • 20 — о суммах произведенных расходов в соответствии со статьей 346.16 Налогового кодекса Российской Федерации, уменьшающих доход — «РАСХОД»;
  • 21 — о страховых взносах на обязательное пенсионное страхование, уплачиваемых ИП, не производящими выплаты и иные вознаграждения физическим лицам — «ВЗНОСЫ НА ОБЯЗАТЕЛЬНОЕ ПЕНСИОННОЕ СТРАХОВАНИЕ ИП» или «ВЗНОСЫ НА ОПС ИП» или может не печататься;
  • 22 — о страховых взносах на обязательное пенсионное страхование, уплачиваемых организациями и ИП, производящими выплаты и иные вознаграждения физическим лицам — «ВЗНОСЫ НА ОБЯЗАТЕЛЬНОЕ ПЕНСИОННОЕ СТРАХОВАНИЕ» или «ВЗНОСЫ НА ОПС» или может не печататься;
  • 23 — о страховых взносах на обязательное медицинское страхование, уплачиваемых ИП, не производящими выплаты и иные вознаграждения физическим лицам — «ВЗНОСЫ НА ОБЯЗАТЕЛЬНОЕ МЕДИЦИНСКОЕ СТРАХОВАНИЕ ИП» или «ВЗНОСЫ НА ОМС ИП» или может не печататься;
  • 24 — о страховых взносах на обязательное медицинское страхование, уплачиваемые организациями и ИП, производящими выплаты и иные вознаграждения физическим лицам — «ВЗНОСЫ НА ОБЯЗАТЕЛЬНОЕ МЕДИЦИНСКОЕ СТРАХОВАНИЕ» или «ВЗНОСЫ НА ОМС» или может не печататься;
  • 25 — о страховых взносах на обязательное социальное страхование на случай временной нетрудоспособности и в связи с материнством, на обязательное социальное страхование от несчастных случаев на производстве и профессиональных заболеваний — «ВЗНОСЫ НА ОБЯЗАТЕЛЬНОЕ СОЦИАЛЬНОЕ СТРАХОВАНИЕ» или «ВЗНОСЫ НА ОСС» или может не печататься;
  • 26 — о приеме и выплате денежных средств при осуществлении казино и залами игровых автоматов расчетов с использованием обменных знаков игорного заведения — «ПЛАТЕЖ КАЗИНО» или «ПК» или может не печататься;
  • 27 — о выдаче денежных средств банковским платежным агентом — «ВЫДАЧА ДЕНЕЖНЫХ СРЕДСТВ» или «ВЫДАЧА ДС» или может не печататься;
  • 30 — о реализуемом подакцизном товаре, подлежащем маркировке средством идентификации, не имеющем кода маркировки — «АТНМ» или может не печататься;
  • 31 — о реализуемом подакцизном товаре, подлежащем маркировке средством идентификации, имеющем код маркировки — «АТМ» или может не печататься;
  • 32 — о реализуемом товаре, подлежащем маркировке средством идентификации, не имеющем кода маркировки, за исключением подакцизного товара — «ТНМ» или может не печататься;
  • 33 — о реализуемом товаре, подлежащем маркировке средством идентификации, имеющем код маркировки, за исключением подакцизного товара — «ТМ» или может не печататься.

2.6.2. Возможные значения параметра "ProductUnitOfMeasure"

Параметр «ProductUnitOfMeasure» может принимать следующие значения:

  • «PIECE» — Применяется для предметов расчета, которые могут быть реализованы поштучно или единицами
  • «GRAM» — Грамм
  • «KILOGRAM» — Килограмм
  • «TON» — Тонна
  • «CENTIMETER» — Сантиметр
  • «DECIMETER» — Дециметр
  • «METER» — Метр
  • «SQUARE_CENTIMETER» — Квадратный сантиметр
  • «SQUARE_DECIMETER» — Квадратный дециметр
  • «SQUARE_METER» — Квадратный метр
  • «MILLILITER» — Миллилитр
  • «LITER» — Литр
  • «CUBIC_METER» — Кубический метр
  • «KILOWATT_HOUR» — Киловатт час
  • «GIGACALORIE» — Гигакалория
  • «DAY» — Сутки (день)
  • «HOUR» — Час
  • «MINUTE» — Минута
  • «SECOND» — Секунда
  • «KILOBYTE» — Килобайт
  • «MEGABYTE» — Мегабайт
  • «GIGABYTE» — Гигабайт
  • «TERABYTE» — Терабайт
  • «OTHER» — Применяется при использовании иных единиц измерения

2.7. Просмотр электронного чека

Запрос на просмотр электронного чека выполняется методом GET

Запрос имеет следующий вид:

GET https://ofd.ru/rec/{inn}/{kktregnumber}/{fnnumber}/{docnumber}/{decsign}

В таблице 7 приведен список параметров необходимых для запроса просмотра электронного чека.

Таблица 7. Параметры запроса на просмотр электронного чека

ПараметрОписаниеТег
innИНН владельца кассы1018
kktregnumberРегистрационный номер ККТ1037
fnnumberНомер фискального накопителя1041
docnumberНомер фискального документа1040
decsignФискальный признак документа1077

Успешным ответом на запрос является загрузка страницы в браузере с электронным чеком.

2.8. Список чеков по кассе с подробной информацией

Запрос на получение списка чеков по кассам клиента с подробной информацией по чеку имеет следующий вид:

GET https://ofd.ru/api/integration/v2/inn/{INN}/kkt/{RNM}/receipts-with-fpd-short?dateFrom={Data1}&dateTo={Data2}&AuthToken={Code}

Необходимые параметры для запроса:

  • INN - идентификационный номер налогоплательщика (ИНН);
  • RNM - регистрационный номер кассы;
  • Date1 – начальная дата периода для формирования отчета. Значения содержат дату и время в формате ISO;
  • Date2 – конечная дата периода для формирования отчета. Значения содержат дату и время в формате ISO. Разница значений Date1 и Date2 не должна превышать 30 дней. Даты начала и конца периода формирования списка отчетов не должны быть одинаковые.
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Запрос на получение списка чеков по кассам можно получить за период не более 90 дней, количество касс для получения списка чеков не ограничено.

Список чеков выводится в произвольном порядке.

Успешный ответ на запрос:

{
   "Status":"Success",
   "Data":[
   {
   "Id":"XXXXXXXXXXXXXXXXXXXXX",
         "CDateUtc": "2020-10-01T02:29:12",
         "Tag": 3,
         "IsBso": false,
         "IsCorrection":false,
         "OperationType": "Income",
         "UserInn": "XXXXXXXXXXXXXXXXXXXXX",
         "KKT_MachineNumber": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
         "KktRegNumber": "XXXXXXXXXXXXXXXXXXXXX",
         "FnNumber": "XXXXXXXXXXXXXXXXXXXXX",
         "DocNumber": "XXXXXXXXXXXXXXXXXXXXX",
         "DocDateTime": "2020-10-01T09:28:00",
         "DocShiftNumber":476,
         "DecimalFiscalSign": "XXXXXXXXXXXXXXXXXXXXX",
         "ReceiptNumber": "5",
         "DocRawId": "XXXXXXXXXXXXXXXXXXXXX",
         "Items":[
            {
               "Name":"двойной эспрессо 80 мл",
               "Price":13000,
               "Quantity":1,
               "Total":13000,
               "CalculationMethod":0,
               "Barcode":"30303030303030303030303030303030",
               "Provider_Inn": "373830353030"
            }
         ],
         "Nds00_TotalSumm":0,
         "NdsNA_TotalSumm":13000,
         "TotalSumm":13000,
         "CashSumm":13000,
         "ECashSumm":0,
         "PrepaidSumm":0,
         "CreditSumm":0,
         "Extra": [
            {
                "Name": "Name",
                "Value": "Value"
            },
            {
                "Name": "Name",
                "Value": "Value"
            }
         ],
         "ProvisionSumm":0,
         "TaxTotalSumm":0,
         "Tax10Summ":0,
         "Tax18Summ":0,
         "Tax110Summ":0,
         "Tax118Summ":0,
         "Tax0Summ":0,
         "TaxNaSumm":13000,
         "Depth":1
      },
      {
         "Id":"XXXXXXXXXXXXXXXXXXXXX",
         "CDateUtc":"2020-10-01T04:55:58",
         "Tag":3,
         "IsBso":false,
         "IsCorrection":false,
         "OperationType":"Income",
         "UserInn":"XXXXXXXXXXXXXXXXXXXXX",
         "KktRegNumber":"XXXXXXXXXXXXXXXXXXXXX",
         "FnNumber":"XXXXXXXXXXXXXXXXXXXXX",
         "DocNumber": XXXXXXXXXXXXXXXXXXXXX,
         "DocDateTime":"2020-10-01T11:50:00",
         "DocShiftNumber":476,
         "DecimalFiscalSign":"XXXXXXXXXXXXXXXXXXXXX",
         "ReceiptNumber":"23",
         "DocRawId":"0bc0dec5-6b0c-36b5-9bb6-751e99320f82",
         "Items":[
            {
               "Name":"улитка kрем шоколад",
               "Price":10000,
               "Quantity":1,
               "SubjectType":1,
               "Total":10000,
               "CalculationMethod":0,
               "Barcode":"30303030303030303030303030303030"
            }
         ],
         "Nds00_TotalSumm":0,
         "NdsNA_TotalSumm":10000,
         "TotalSumm":10000,
         "CashSumm":10000,
         "ECashSumm":0,
         "PrepaidSumm":0,
         "CreditSumm":0,
         "ProvisionSumm":0,
         "TaxTotalSumm":0,
         "Tax10Summ":0,
         "Tax18Summ":0,
         "Tax110Summ":0,
         "Tax118Summ":0,
         "Tax0Summ":0,
         "TaxNaSumm":10000,
         "Depth":1,
         "Buyer_Inn": "4402163409"
      }
   ],
   "Elapsed":"00:00:00.3506406"
}

Описание параметров ответа представлено в таблице 8.

Таблица 8. Описание параметров ответа на запрос списка чеков по кассе с подробной информацией

ПараметрВложенный параметрВложенный параметрВид значенияОписаниеТег
Status String Статус выполнения запроса. Параметр может принимать следующие значения:
Success - Успешно;
Failed - Неуспешно.
Data Array Массив данных ответа на запрос
Object Структура с параметрами ответа на запрос
Id String Уникальный номер фискального документа в ИС, который используется в запросе подробной информации по чеку, как RawId
CDateUtc String Дата и время приема документа в ИС (UTC +3)
Tag Integer Численный признак вида документа:
3 – чек;
31 – чек коррекции;
4 – бланк строгой отчетности;
41 – бланк строгой отчетности коррекции.
IsBso Bollean Имеет значение true, если документ является БСО, иначе (если документ является чеком) – false
IsCorrection Bollean Имеет значение true, если чек или бланк строгой отчетности (БСО) является документом коррекции, иначе – false
OperationType String Тип операции:
«Income» – приход;
«Expense» – расход;
«RefundIncome» – возврат прихода;
«RefundExpense» – возврат расхода.
UserInn String ИНН владельца кассы
KKT_MachineNumber String Код автомата1036
KktRegNumber String Регистрационный номер кассы
FnNumber String Номер фискального накопителя, установленного в кассу
DocNumber Integer Фискальный номер документа
SubjectType Integer Признак предмета расчета.
Возможные значения представлены в разделе 2.6.1
1212
DocDateTime String Дата и время формирования документа по данным кассы
Operator String Имя кассира
DocShiftNumber Integer Номер смены (по данным кассы), в которую был сформирован документ
DecimalFiscalSign String Фискальный признак документа
ReceiptNumber Integer Номер документа в смене (по данным кассы)
DocRawId String Уникальный номер фискального документа в ИС, (используется в запросе подробной информации по чеку, как RawId, дублирует поле Id)
Items Array Список товарных позиций в чеке1059
NameString Наименование товарной позиции в чеке1030
PriceInteger Цена в копейках за единицу измерения товарной позиции1079
QuantityFloat Количество единиц товарной позиции1023
TotalInteger Стоимость товарной позиции в копейках1043
CalculationMethodInteger Признак способа расчета.
Может принимать следующие значения
1214
1 – предоплата 100%;
2 – предоплата;
3 – аванс;
4 – полный расчет;
5 – частичный расчет;
6 – передача в кредит;
7 – оплата в кредит.
OriginCountryCodeString Цифровой код страны происхождения товара в соответствии с Общероссийским классификатором стран мира1230
CustomDeclarationNumberString Номер таможенной декларации в соответствии с форматом, установленным решением Комиссии Таможенного союза от 20.05.2010 N 257 (в ред. 17.12.2019 N 223) «О форме декларации на товары и порядке ее заполнения»1231
Provider_InnString ИНН поставщика1226
Nds00_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 0% в копейках1104
NdsNA_TotalSumm Integer Сумма, к которой не применяется НДС в копейках1105
TotalSumm Integer Общая сумма по чеку в копейках
CashSumm Integer Сумма по чеку (БСО) наличными в копейках
ECashSumm Integer Сумма по чеку (БСО) электронными в копейках
PrepaidSumm Integer Сумма по чеку (БСО) предоплатами (авансами)
CreditSumm Integer Сумма по чеку (БСО) постоплатами (кредитами)
Extra Array Дополнительный реквизит пользователя по чеку1084
Object
NameString Наименование дополнительного реквизита по чеку1085
ValueString Значение дополнительного реквизита по чеку1086
ProvisionSumm Integer Сумма по чеку (БСО) встречными предоставлениями
TaxTotalSumm Integer Общая сумма удерживаемых налогов, начисленная за смену в копейках
Tax10Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10 % в копейках1103
Tax18Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20 % в копейках1102
Tax110Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10/110 в копейках1107
Tax118Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20/120 в копейках1106
TaxNaSumm Integer Сумма по операциям, не облагаемая НДС в копейках1105
Tax0Summ Integer Сумма по операциям, облагаемая НДС по ставке 0% в копейках1104
ProductCheckResult String Результаты проверки маркированных товаров.
Значение выводится в шестнадцатеричной системе счисления.
Возможные значения:
2107
0 (0) - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен
1 (1) - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен
3 (3) - [М] Проверка КП КМ выполнена с положительным результатом, статус товара ОИСМ не проверен
10 (16) - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
11 (17) - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
13 (19) - [М] Проверка КП КМ выполнена в ФН с положительным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
5 (5) - [М-] Проверка КП КМ выполнена с отрицательным результатом, статус товара у ОИСМ некорректен
7 (7) - [М-] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ некорректен
F (15) - [М+] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ корректен
Depth Integer Количество товарных позиций в чеке
Buyer_Inn String ИНН покупателя (клиента)1228
FnsStatus String Статус передачи чека (БСО) в ФНС
Success - Чек (БСО) принят ФНС
Failed - Чек (БСО) не принят ФНС
FnsError String Ответ ФНС об отказе принять чек
FnsTime String Дата и время получения уведомления от ФНС о получении чека (БСО)

2.8.1. Список чеков с кодами маркировки по кассе с подробной информацией

Запрос на получение списка чеков с кодами маркировки по кассам клиента с подробной информацией по чеку имеет следующий вид:

https://ofd.ru/api/integration/v2/inn/{INN}/kkt/{RNM}/receipts-info?dateFrom={Data1}&dateTo={Data2}&AuthToken={Code}

Необходимые параметры для запроса:

  • INN - идентификационный номер налогоплательщика (ИНН);
  • RNM - регистрационный номер кассы;
  • Date1 – начальная дата периода для формирования отчета. Значения содержат дату и время в формате ISO;
  • Date2 – конечная дата периода для формирования отчета. Значения содержат дату и время в формате ISO. Разница значений Date1 и Date2 не должна превышать 30 дней. Даты начала и конца периода формирования списка отчетов не должны быть одинаковые.
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Запрос на получение списка чеков по кассам можно получить за период не более 90 дней, количество касс для получения списка чеков не ограничено.

Успешный ответ на запрос:

{
    "Status": "Success",
    "Data": [
   {
   "Id": "ee19889a-11b4-428d-83be-3dc9065dc28c",
            "CDateUtc": "2022-10-01T11:16:08",
            "Tag": 3,
            "IsBso": false,
            "IsCorrection": false,
            "OperationType": "Income",
            "UserInn": "2632811590",
            "KktRegNumber": "0005956962031875",
            "FnNumber": "9960440301019864",
            "DocNumber": 8773,
            "DocDateTime": "2022-10-01T11:16:00",
            "Operator": "Мордасов Евгений Александрович",
            "DocShiftNumber": 325,
            "DecimalFiscalSign": "1018061843",
            "ReceiptNumber": "1",
            "DocRawId": "ee19889a-11b4-428d-83be-3dc9065dc28c",
            "Items": [
                {
                    "Name": "тм001/019r пропитка б/цветн, thoma|всесезонная|1",
                    "Price": 59900,
                    "Quantity": 1,
                    "Total": 59900,
                    "CalculationMethod": 4,
                    "SubjectType": 1,
                    "ProductCode": {},
                    "NDS_Rate": 1
                },
                {
                    "Name": "234-048a-3102 ботинки женские нат.кожа/м|зима|39",
                    "Price": 799000,
                    "Quantity": 1,
                    "Total": 799000,
                    "CalculationMethod": 4,
                    "SubjectType": 33,
                    "ProductCode": {
                        "Code_GS_1M": "0104660184311215215osnRMP5'IfoF"
                    },
                    "NDS_Rate": 1,
                    "ProductCheckResultDetails": 15,
                    "ProductUnitOfMeasure": "0"
                },
                {
                    "Name": "нжг-0023тм_o2_р.23-25_бел носк|всесезонная|23/25",
                    "Price": 16700,
                    "Quantity": 1,
                    "Total": 16700,
                    "CalculationMethod": 4,
                    "SubjectType": 1,
                    "ProductCode": {},
                    "NDS_Rate": 1
                },
                {
                    "Name": "нжг-0023тм_o2_р.23-25_бел носк|всесезонная|23/25",
                    "Price": 16700,
                    "Quantity": 1,
                    "Total": 16700,
                    "CalculationMethod": 4,
                    "SubjectType": 1,
                    "ProductCode": {},
                    "NDS_Rate": 1
                },
                {
                    "Name": "нжг-0023тм_o2_р.23-25_черн нос|всесезонная|23/25",
                    "Price": 16600,
                    "Quantity": 1,
                    "Total": 16600,
                    "CalculationMethod": 4,
                    "SubjectType": 1,
                    "ProductCode": {},
                    "NDS_Rate": 1
                },
                {
                    "Name": "sc_40_d_tm носки жен. полиамид-эла|всесезонная|1",
                    "Price": 15000,
                    "Quantity": 1,
                    "Total": 15000,
                    "CalculationMethod": 4,
                    "SubjectType": 1,
                    "ProductCode": {},
                    "NDS_Rate": 1
                }
            ],
            "Nds00_TotalSumm": 0,
            "NdsNA_TotalSumm": 0,
            "TotalSumm": 923900,
            "CashSumm": 0,
            "ECashSumm": 923900,
            "PrepaidSumm": 0,
            "CreditSumm": 0,
            "ProvisionSumm": 0,
            "TaxTotalSumm": 153983,
            "Tax10Summ": 0,
            "Tax18Summ": 153983,
            "Tax110Summ": 0,
            "Tax118Summ": 0,
            "Tax0Summ": 0,
            "TaxNaSumm": 0,
            "Depth": 6,
            "FnsStatus": "Success",
            "ProductCheckResult": "00"
        }
    ],
    "Elapsed": "00:00:00.0982635"
}

Описание параметров ответа представлено в таблице 9.

Таблица 9. Описание параметров ответа на запрос списка чеков по кассе с подробной информацией

ПараметрВложенный параметрВложенный параметрВид значенияОписаниеТег
Status String Статус выполнения запроса. Параметр может принимать следующие значения:
Success - Успешно;
Failed - Неуспешно.
Data Array Массив данных ответа на запрос
Object Структура с параметрами ответа на запрос
Id String Уникальный номер фискального документа в ИС, используется в запросе подробной информации по чеку, как RawId
CDateUtc String Дата и время приема документа в ИС (UTC +3)
Tag Integer Численный признак вида документа:
3 – чек;
31 – чек коррекции;
4 – бланк строгой отчетности;
41 – бланк строгой отчетности коррекции.
IsBso Bollean Имеет значение true, если документ является БСО, иначе (если документ является чеком) – false
IsCorrection Bollean Имеет значение true, если чек или бланк строгой отчетности (БСО) является документом коррекции, иначе – false
OperationType String Тип операции:
«Income» – приход;
«Expense» – расход;
«RefundIncome» – возврат прихода;
«RefundExpense» – возврат расхода.
UserInn String ИНН владельца кассы
KktRegNumber String Регистрационный номер кассы
FnNumber String Номер фискального накопителя, установленного в кассу
DocNumber Integer Фискальный номер документа
SubjectType Integer Признак предмета расчета.
Возможные значения представлены в разделе 2.6.1
1212
DocDateTime String Дата и время формирования документа по данным кассы
Operator String Имя кассира
DocShiftNumber Integer Номер смены (по данным кассы), в которую был сформирован документ
DecimalFiscalSign String Фискальный признак документа
ReceiptNumber Integer Номер документа в смене (по данным кассы)
DocRawId String Уникальный номер фискального документа в ИС, (используется в запросе подробной информации по чеку, как RawId, дублирует поле Id)
Items Array Список товарных позиций в чеке1059
NameString Наименование товарной позиции в чеке1030
PriceInteger Цена в копейках за единицу измерения товарной позиции1079
QuantityFloat Количество единиц товарной позиции1023
TotalInteger Стоимость товарной позиции в копейках1043
CalculationMethodInteger Признак способа расчета.
Может принимать следующие значения
1214
1 – предоплата 100%;
2 – предоплата;
3 – аванс;
4 – полный расчет;
5 – частичный расчет;
6 – передача в кредит;
7 – оплата в кредит.
OriginCountryCodeString Цифровой код страны происхождения товара в соответствии с Общероссийским классификатором стран мира1230
CustomDeclarationNumberString Номер таможенной декларации в соответствии с форматом, установленным решением Комиссии Таможенного союза от 20.05.2010 N 257 (в ред. 17.12.2019 N 223) «О форме декларации на товары и порядке ее заполнения»1231
Provider_InnString ИНН поставщика1226
ProductCheckResultDetailsInteger Результаты проверки товара с обязательной маркировкой
Параметр может принимать следующие значения:
2106
0 - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен
1 - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен
3 - [М] Проверка КП КМ выполнена с положительным результатом, статус товара ОИСМ не проверен
16 - [М] Проверка КП КМ не выполнена, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
17 - [М-] Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
19 - [М] Проверка КП КМ выполнена в ФН с положительным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)
5 - [М-] Проверка КП КМ выполнена с отрицательным результатом, статус товара у ОИСМ некорректен
7 - [М-] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ некорректен
15 - [М+] Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ корректен
ProductUnitOfMeasureInteger Единицы измерения количества предмета расчета.
Параметр может принимать значения описанные в разделе 2.6.2
2108
ProductCodeObject Код маркировки.
Параметр может иметь в составе один из параметров описанных в таблице 10 со значением кода маркировки
Nds00_TotalSumm Integer Сумма НДС по предмету расчета со ставкой 0% в копейках1104
NdsNA_TotalSumm Integer Сумма, к которой не применяется НДС в копейках1105
TotalSumm Integer Общая сумма по чеку в копейках
CashSumm Integer Сумма по чеку (БСО) наличными в копейках
ECashSumm Integer Сумма по чеку (БСО) электронными в копейках
PrepaidSumm Integer Сумма по чеку (БСО) предоплатами (авансами)
CreditSumm Integer Сумма по чеку (БСО) постоплатами (кредитами)
ProvisionSumm Integer Сумма по чеку (БСО) встречными предоставлениями
TaxTotalSumm Integer Общая сумма удерживаемых налогов, начисленная за смену в копейках
Tax10Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10 % в копейках1103
Tax18Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20 % в копейках1102
Tax110Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10/110 в копейках1107
Tax118Summ Integer Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20/120 в копейках1106
TaxNaSumm Integer Сумма по операциям, не облагаемая НДС в копейках1105
Tax0Summ Integer Сумма по операциям, облагаемая НДС по ставке 0% в копейках1104
ProductCheckResult Integer Результаты проверки маркированных товаров2107
Depth Integer Количество товарных позиций в чеке
Buyer_Inn String ИНН покупателя (клиента)1228
FnsStatus String Статус передачи чека (БСО) в ФНС
Success - Чек (БСО) принят ФНС
Failed - Чек (БСО) не принят ФНС
FnsError String Ответ ФНС об отказе принять чек
FnsTime String Дата и время получения уведомления от ФНС о получении чека (БСО)

Таблица 10. Возможные значения параметра «ProductCode» (Тег 1163)

ПараметрВид значенияОписаниеТег
Code_UndefinedString Нераспознанный код товара1300
Code_EAN_8String Код товара в формате EAN-81301
Code_EAN_13String Код товара в формате EAN-131302
Code_ITF_14String Код товара в формате ITF-141303
Code_GS_1String Код товара в формате GS1, нанесенный на товар, не подлежащий маркировке средствами идентификации1304
Code_GS_1MString Код товара в формате GS1, нанесенный на товар, подлежащий маркировке средствами идентификации1305
Code_KMKString Код товара в формате короткого кода маркировки, нанесенный на товар, подлежащий маркировке средствами идентификации1306
Code_MIString Контрольно-идентификационный знак мехового изделия1307
Code_EGAIS_2String Код маркировки в формате ЕГАИС-2.01308
Code_EGAIS_3String Код маркировки в формате ЕГАИС-3.01309
Code_F_1String Код товара в формате Ф.11320
Code_F_2String Код товара в формате Ф.21321
Code_F_3String Код товара в формате Ф.31322
Code_F_4String Код товара в формате Ф.41323
Code_F_5String Код товара в формате Ф.51324
Code_F_6String Код товара в формате Ф.61325

3. Получение информации о папках и кассах

В API разработаны запросы на получение информации структуры папок с ККТ, а также запросы по кассам с сообщениями об ошибках.

3.1. Запрос на получение списка папок с ККТ

Запрос на получение списка папок с ККТ можно выполнить по следующим параметрам:

  • Корневого каталога;
  • Родительского каталога.

Запрос на получения списка папок с ККТ корневого каталога имеет вид:

GET https://ofd.ru/api/integration/v2/kktgroup/list?AuthToken={Code}

Запрос на получения списка папок с ККТ родительского каталога имеет вид:

GET https://ofd.ru/api/integration/v2/kktgroup/list?groupId={Id}&AuthToken={Code}

Необходимые параметры для запросов:

  • Id — идентификатор папки;
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Успешный ответ на запрос имеет следующий вид:

{
    "Status": "Success",
    "Data": [
   {
   "AgreementId": "1afff828-7ac1-41aa-8282-210c9ffb3df7",
            "Groups": [
                {
                    "Id": "26beff999-d454-44aa-8ada-cdc1rf8942fd",
                    "Name": "Все кассы",
                    "Path": "/Все кассы/",
                    "Level": 1
                }
            ]
        }
    ]
}

Описание параметров ответа на запрос получение списка ККТ представлено в таблице 11.

Таблица 11. Описание параметров ответа на запрос получение списка ККТ

ПараметрВид значенияОписание
AgreementIdString Идентификатор личного кабинета, для которого генерируется список каталогов
GroupsArray Массив записей с информацией о папках, в которых содержатся кассы
IdString Идентификатор папки в ИС «ОФД»
NameString Имя папки
PathString Путь к папке
LevelInteger Уровень вложенности папки (1 — для корневого каталога, 2 — для содержимого папки в корневом каталоге, 3 — для содержимого папки в папке корневого каталога и т. п.)

В ответ на запрос выдается список дочерних папок в следующих условиях:

  • Если параметр «Id» отсутствует, в ответ на запрос возвращается список папок корневого каталога касс для текущей учетной записи;
  • Если пользователь по значению AuthToken является доверенным лицом (дополнительным пользователем), то в ответ придет список папок, доступных для просмотра в соответствии с предоставленными правами.

3.2. Запрос на получение списка касс

Запрос на получение списка касс выполняется методом GET.

Запрос на получение списка касс имеет следующий вид:

GET  https://ofd.ru/api/integration/v2/kkts?AuthToken={Code}

Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Успешный ответ на запрос имеет следующий вид:

{
    "Status": "Success",
    "Data": [
   {
   "Id": "01af8c89-b680-41a8-886d-60e90f784a4b",
            "KktRegId": "0001646625010123",
            "KktName": "касса наша",
            "SerialNumber": "00107203143008",
            "FnNumber": "9286000100023892",
            "INN": "7841465198",
            "GroupId": "c67d87b0-0166-4966-adcc-3be825cf05e6",
            "CreateDate": "2018-02-02T14:04:43",
            "CheckDate": "2018-02-02T14:09:46",
            "ActivationDate": "2018-02-02T14:09:46",
            "FirstDocumentDate": "2018-02-07T20:02:00",
            "ContractStartDate": "2018-02-02T00:00:00",
            "ContractEndDate": "2019-02-15T13:24:00",
            "LastDocOnKktDateTime": "2018-02-22T18:06:00",
            "LastDocOnOfdDateTimeUtc": "2018-02-22T15:07:15",
            "FiscalAddress": "115280 Москва Москва Ленинская Слобода 26А ",
            "FiscalPlace": "Москва, Ленинская Слобода, дом 26",
            "Path": "/Мои кассы/",
            "KktModel": "АТОЛ 90Ф",
            "FnEndDate": "2019-05-18T14:31:24"
        },
        ...
        {
            "Id": "6a417709-e1fa-4133-b45a-1ea8b96820d8",
            "KktRegId": "0001846260032153",
            "KktName": "",
            "SerialNumber": "00107701210362",
            "FnNumber": "9286000100009011",
            "INN": "7841465198",
            "GroupId": "7a2e9b3c-3ef6-43d9-8169-538f97e78f31",
            "CreateDate": "2018-05-16T07:58:26",
            "CheckDate": "2018-07-06T13:00:34",
            "ActivationDate": "2018-07-06T10:15:23",
            "FirstDocumentDate": "2018-05-16T10:58:00",
            "ContractStartDate": "2018-07-06T00:00:00",
            "ContractEndDate": "2019-02-15T13:24:00",
            "LastDocOnKktDateTime": "2019-01-31T16:24:00",
            "LastDocOnOfdDateTimeUtc": "2019-01-31T13:25:49",
            "FiscalAddress": "115280 Москва Москва Ленинская Слобода 19 1 ",
            "Path": "/Мои кассы/123/",
            "KktModel": "АТОЛ 42ФС",
            "FnEndDate": "2019-09-29T10:15:49"
        },
        ...
        {
            "Id": "b090f949-c46a-4527-9e55-71b6a08dfd3a",
            "KktRegId": "0000000010032176",
            "SerialNumber": "9968982437",
            "FnNumber": "9960440301863751",
            "INN": "7841465198",
            "GroupId": "b4449693-d81f-487a-a9f2-f62cdafaa6ff",
            "CreateDate": "2022-02-25T11:10:09",
            "CheckDate": "2022-02-25T11:10:10",
            "ActivationDate": "2022-02-25T11:10:10",
            "FirstDocumentDate": "2022-02-25T14:10:00",
            "ContractStartDate": "2022-02-25T00:00:00",
            "ContractEndDate": "2019-02-15T13:24:00",
            "LastDocOnKktDateTime": "2022-05-28T03:09:00",
            "LastDocOnOfdDateTimeUtc": "2022-05-28T00:09:15",
            "FiscalAddress": "Москва, Ленинская Слобода, 19",
            "FiscalPlace": "ofd.ru",
            "Path": "/Мои кассы/Новые кассы/",
            "KktModel": "Не определена",
            "FnEndDate": "2023-05-21T11:10:12"
        }
    ],
    "Elapsed": "00:00:00.1424993"
}

Описание параметров ответа представлено в таблице 12.

Таблица 12. Описание параметров ответа на запрос списка касс

ПараметрВложенный параметрВид значенияОписание
Status String Статус выполнения запроса. Параметр может принимать следующие значения:
Success - Успешно;
Failed - Неуспешно.
Data Array Массив данных ответа на запрос
Object Структура с параметрами ответа на запрос
IdString Идентификатор кассы
KktRegIdString Регистрационный номер ККТ (кассы)
SerialNumberString Заводской (серийный) номер ККТ (кассы)
FnNumberString Номер фискального накопителя
INNString Идентификационный налоговый номер
GroupIdString Идентификатор группы папок
CreateDateString Дата регистрации кассы в личном кабинете клиента
CheckDateString Дата подписания КЭП (квалификационной электронной подписью)
ActivationDateString Дата успешной проверки регистрационного номера в ФНС
FirstDocumentDateString Дата и время генерации кассой первого документа
ContractStartDateString Дата начала действия контракта на получение услуг оператора “OFD.ru”
ContractEndDateString Дата окончания действия контракта на получение услуг оператора “OFD.ru”
LastDocOnKktDateTimeString Дата и время последнего документа, сгенерированного кассой (по локальному времени кассы)
LastDocOnOfdDateTimeUtcString Дата и время получения последнего документа кассы в ОФД (по времени оператора “OFD.ru” в UTC)
FiscalAddressString Адрес установки кассы
FiscalPlaceString Место расчетов
PathString Иерархия расположения кассы в личном кабинете клиента
KktModelString Модель кассы (ККТ)
FnEndDateString Дата и время окончания работы фискального накопителя
Elapsed String Время выполнения запроса

4. Управление учетными записями пользователей ЛКК

В разделе представлены описания методов для управления учетными записями пользователей ЛКК.

4.1 Запрос на получение списка учетных записей пользователей ЛКК

Запрос на получение списка учетных записей пользователей ЛКК выполняется методом GET.

Запрос представлен в следующем виде:

GET https://ofd.ru/api/integration/v2/users?Inn={INN}&Kpp={KPP}&AuthToken={Code}

Параметры, необходимые для запроса:

  • INN – идентификационный номер налогоплательщика (ИНН юридического лица);
  • KPP - идентификационный код причины постановки на учет (КПП) юридического лица (в запросе не обязателен ИП);
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Пример запроса на получение списка:

GET https://ofd.ru/api/integration/v2/users?Inn=7841465198&Kpp=772501001&AuthToken=cd0e2064a23b423c8c9790f75e6e3254

Пример успешного ответа на запрос:

{
    "Data": [
   {
   "FullName": "111",
            "Email": "son.kentavious@thtt.us",
            "Phone": "1111111111"
        },
        {
            "FullName": "Греф Герман Оскарович",
            "Email": "dfsdfsds@mail.ru"
        },
        ...
        {
            "FullName": "Jhon Dow",
            "Email": "yascher@ofd.ru",
            "Phone": "1112223457"
        }
    ],
    "Success": true
}

Параметры ответа на запрос представлены в таблице 13.

Таблица 13. Описание параметров ответа на запрос

ПараметрВложенный параметрФормат значенияОписание
Data Array Список учетных записей ЛКК
Object
FullNameString Имя пользователя учетной записи
EmailString Электронная почта пользователя учётной записи
PhoneString Телефон пользователя учётной записи
SuccessBoolean Статус выполнения запроса

4.2 Удаление учетной записи пользователя ЛКК

Запрос на удаление учетной записи пользователя ЛКК выполняется методом DELETE.

Запрос:

DELETE https://ofd.ru/api/integration/v2/user/delete?Inn={INN}&Kpp={KPP}&Email={email}&AuthToken={Code}

Параметры, необходимые для запроса:

  • INN – идентификационный номер налогоплательщика (ИНН юридического лица);
  • KPP - идентификационный код причины постановки на учет (КПП) юридического лица (в запросе не обязателен ИП);
  • email - электронный адрес учетной записи пользователя ЛКК;
  • Code – действующий код авторизации.

Частота отправки запроса не должна превышать более 1 запроса в секунду.

Пример запроса на удаление учетной записи пользователя ЛКК:

DELETE https://ofd.ru/api/integration/v2/user/delete?Inn=7841465198&Kpp=772501001&Email=efwfw@we.fr&AuthToken=cd0e2064a23b423c8c9790f75e6e3254

Пример успешного ответа на запрос:

{
    "Data": true,
    "Success": true
}

Описание параметров ответа на запрос:

  • Data - Статус выполнения запроса. Формат значения параметра ответа - «Boolean»;
  • Success - Статус успеха запроса. Формат значения ответа - «Boolean».

5. Запросы для отображения касс и чеков с ошибками за период

В разделе представлены описания методов для отображения касс и чеков с ошибками за период.

5.1 Отображение касс с ошибками за период

Запрос на отображение касс с ошибками за период выполняется методом GET.

Важно! Период определяется по дате возникновения ошибки.

Запрос представлен в следующем виде:

GET https://ofd.ru/api/integration/v2/kkts/errors?DateFrom={DateFrom}&DateTo={DateTo}&AuthToken={Code}

Параметры, необходимые для запроса:

  • AuthToken – Значение токена авторизации;
  • DateFrom - Начальная дата периода для формирования отчета. Значения содержат дату и время в формате ISO;
  • DateTo – Конечная дата периода для формирования отчета. Значения содержат дату и время в формате ISO. Разница значений DateFrom и DateTo должна быть не более суток.

Пример запроса:

GET https://ofd.ru/api/integration/v2/kkts/errors?DateFrom=2023-03-20T00:00:00&DateTo=2023-03-20T00:00:00&AuthToken=cd0e2064a23b423c8c9790f75e6e3254

Пример успешного ответа на запрос:

{
   "Status":"Success",
    "Data":[
   {
        "RegNumber":"0004727371036889",
        "ZnNumber":"9936516799",
        "Address":"603127 гор. Нижний Новгород ул. Федосеенко д. 51 каб. 1",
        "Service": "Ofd",
        "Services": [
          "Ofd",
          "NoFerma"
        ],
        "RegDate":"2020-09-07T14:58:00",
        "LastReceiptDate":"2023-09-06T22:29:00",
        "LastShiftOpenDate":"2023-09-06T20:20:00",
        "LastShiftCloseDate":"2023-09-06T04:00:00",
        "IsEncrypted":true,
        "RegState":"Reg",
        "Errors":[{
          "Code":"420",
          "Count":143}],
        "LastError":{
          "Code":"420",
          "Description":"Нарушен формат обязательного реквизита (тега)"}}],
      "Elapsed":"00:00:00.1768264"
}

Параметры ответа на запрос представлены в таблице 14.

Таблица 14. Описание параметров ответа на запрос

ПараметрВложенный параметрФормат значенияОписание
Status String Статус выполнения запроса. Параметр может принимать следующие значения:

Success - Успешно;

Failed - Неуспешно.
Data Object Структура с параметрами ответа на запрос
RegNumber String Регистрационный номер кассы
ZnNumber String Заводской номер кассы
Address String Адрес установки ККТ
Services Array [String] Наличие услуги на кассе. Доступными значениями могут быть:

- NoOfd - Не подключено OFD

- NoFerma - Не подключена Ferma и другие данные в формате списка строк.

- Ofd - Подключено OFD

- Ferma - Подключена Ferma и другие данные в формате списка строк.
Service String Подключенные услуги на кассе. Параметр имеет определенные условия отображения в ответе на запрос и может принимать следующие значения:

- Ofd - имеется показатель количества дней обслуживания (по выбранному тарифному плану)

- Ferma - касса является облачной и имеет показатель остатка дней обслуживания и количества чеков

Если одно из этих условий не выполняется, то в ответе на запрос параметр Services будет иметь значение NoOfd или NoFerma соответственно
RegDate DateTime Дата пробития отчета о регистрации
LastReceiptDate DateTime Дата и время последнего чека
LastShiftOpenDate DateTime Дата и время открытия последней смены
LastShiftCloseDate DateTime Дата и время закрытия последней смены
IsEncrypted Boolean Признак шифрования на кассе
RegState String Статус регистрации ККТ
ErrorsArray Количество чеков с кодом ошибки
CodeInteger Код ошибки
CountInteger Количество чеков с указанным выше кодом ошибки
LastErrorArray Последняя ошибка на ккт
CodeInteger Код ошибки
DescriptionString Текстовое описание ошибки
Elapsed String Время, затраченное системой на обработку запроса

5.2 Отображение чеков с ошибками по РНМ за период

Запрос на отображение чеков с ошибками по РНМ за период выполняется методом GET.

Важно! Период определяется по дате пробития чека.

Запрос представлен в следующем виде:

GET https://ofd.ru/api/integration/v2/kkt/{rnm}/receipts/errors?DateFrom={DateFrom}&DateTo={DateTo}&AuthToken={Code}

Параметры, необходимые для запроса:

  • AuthToken - Действующий токен авторизации;
  • RNM – Регистрационный номер кассы (РНМ) клиента;
  • DateFrom - Начальная дата периода для формирования отчета. Значения содержат дату и время в формате ISO;
  • DateTo – Конечная дата периода для формирования отчета. Значения содержат дату и время в формате ISO. Разница значений DateFrom и DateTo должна быть не более суток.

Пример запроса:

GET https://ofd.ru/api/integration/v2/kkt/0004727371036889/receipts/errors?DateFrom=2023-03-20T00:00:00&DateTo=2023-03-20T00:00:00&AuthToken=cd0e2064a23b423c8c9790f75e6e3254

Пример успешного ответа на запрос:

{
   "Status":"Success",
    "Data":[
   {
        "FnNumber":"9287440300720244",
        "DocNumber":"124300",
        "RecType":"1",
        "DocDate":"2023-03-20T20:01:00",
        "OfdDate":"2023-03-20T20:43:32",
        "Errors":[
          {
            "Code":"420",
            "Name":"Нарушен формат обязательного реквизита (тега) nds18",
            "Description":"Отсутствует обязательный реквизит НДС "сумма НДС чека по расч. ставке 20/\120": 1106, возможно:\n1. Ошибка приёма на стороне ФНС.\n2. Ошибка возникает в ККТ с текущей версией прошивки.",
            "Solution":"1. На данный фискальный документ нужно отправить чек коррекции. "}],
      "Elapsed":"00:00:00.1768264"
}

Параметры ответа на запрос представлены в таблице 15.

Таблица 15. Описание параметров ответа на запрос

ПараметрВложенный параметрФормат значенияОписание

Status

String

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

Success - Успешно;

Failed - Неуспешно.

Data

Object

Структура с параметрами ответа на запрос

FnNumber

String

Номер фискального накопителя

DocNumber

String

Номер чека

RecType

String

Тип чека

DocDate

DateTime

Дата и время пробития чека

OfdDate

DateTime

Дата и время получения чека (ФД ОФД)

Errors

Object

Указание обнаруженных ошибок

Code

Integer

Код ошибки

Name

String

Название ошибки

Description

String

Описание ошибки

Solution

String

Решение ошибки

Elapsed

String

Время, затраченное системой на обработку запроса

6. Порядок тестирования

В разделе представлено описание тестового контура ИС «ОФД». В тестировании используется демонстрационный личный кабинет клиента (ЛКК) и кассовый аппарат с установленным тестовым фискальным накопителем ФН МГМ.

6.1. Тестовый кабинет OFD.ru

Для настройки своих сервисов и проверки работы с контурами OFD.ru вам необходимо создать демо кабинет.

6.2. Настройки тестового стенда OFD.ru

Подключение к демо стенду OFD.ru осуществляется для касс с тестовым фискальным накопителем, который не зарегистрирован в ФНС.

Чтобы подключить тестовую кассу к демо стенду OFD.ru, в настройках драйвера кассы необходимо ввести следующие параметры:

  • ИНН ОФД - 7841465198;
  • Наименование ОФД - ООО ПС СТ;
  • Адрес ОФД для версии ФФД 1.1 - testgate.ofd.ru;
  • Адрес ОФД для версии ФФД 1.2 - testcrpt.ofd.ru;
  • Порт ОФД для версии ФФД 1.1 - 4001;
  • Порт ОФД для версии ФФД 1.2 - 7001;
  • DNS ОФД - 8.8.8.8;
  • Канал обмена - Ethernet (Интернет).

Тестовые URL-адреса для работы с API ИС «ОФД»:

https://lk-demo.ofd.ru/api/
https://demo.ofd.ru/api/integration

7. Запрос отчетов

7.1. Запрос на генерацию пользовательского отчета

Запрос на генерацию пользовательского отчета (на заказ отчета) имеет вид:

POST https://ofd.ru/api/customer/reports?AuthToken=Code1

Code1 – действующий код авторизации, полученный в результате запроса авторизации.

Параметры запроса передаются списком в формате запросов команды POST. Параметры запроса приведены в таблице 16.

Таблица 16. Параметры запроса на генерацию пользовательского отчета

Параметр Тип данных Описание
DateFrom Дата и время в формате ISO Начальная дата периода генерации отчета
DateTo Дата и время в формате ISO Конечная дата периода генерации отчета
KktList Массив Список касс, по которым генерируется отчет
GroupsList Массив Список папок с записями ККТ, по которым генерируется отчет (учитывается содержимое всех вложенных папок)
SelectAllKkts Логическая переменная Признак выбора для генерации отчета всех ККТ текущего ЛКК
CustomReportId Строка в формате UUID Идентификатор пользовательского шаблона (задается, если запрошен отчет на основе пользовательского шаблона)
UseXlsxFile Логическая переменная Признак «Использовать для отчета файл типа XSLX»
ReportType Строка Тип отчета, (если не задан CustomReportId), см. п. 8.1.1.
KktStatus Строка Состояние касс, по которым генерируется отчет (в данной версии не используется)
SearchString Строка Строка фильтрации списка касс (в данной версии не используется)
EmailsToNotify Строка Признак «Оповестить об окончании генерации отчета по почте». В параметре вы можете перечислить адреса электронной почты для уведомления о генерации отчета. Адреса электронной почты указываются через символ «;»

Успешным ответом на запрос является ответ с кодом 200, содержащий структуру данных.
Ошибки, обрабатываемые запросом, приведены в п. 7.1.2.

Пример запроса на генерацию пользовательского отчета:


POST https://ofd.ru/api/customer/reports?AuthToken=061000bd5c234ee4b8f9fe4e143922d1

{
  "CustomReportId": null,
  "Name": "Сверка",
  "DateFrom": "2021-11-01T00:00:00.000+03:00",
  "DateTo": "2021-11-02T23:59:59.000+03:00",
  "EmailsToNotify": "",
  "FfdType": 0,
  "GroupsList": [],
  "KktList": [
    "7961d10e-f36a-4cce-a8db-add93309bb9e"
  ],
  "ReportType": "ReceiptReport",
  "SelectAllKkts": false,
  "UseXlsxFile": true

}
 

Пример успешного ответа на запрос генерации пользовательского отчета:


{
    "Status": "Success",
    "Data": {
        "Id": "bddf7767-f72b-49a9-90f1-df1b74090d92",
        "CDateUtc": "2021-11-15T10:14:44",
        "ReportTypeName": "Сверка",
        "ReportType": "ReceiptReport",
        "DateFrom": "2021-11-01T00:00:00",
        "DateTo": "2021-11-02T23:59:59",
        "ExpiredDate": "2021-11-22T10:14:44",
        "KktCount": 1,
        "Status": "Todo",
        "AccountEmail": "123@gamil.ru",
        "AccountName": "Иван",
        "Name": "Сверка",
        "EmailsToNotify": [
            ""
        ],
        "FileFormat": "Xlsx",
        "IsAutoReport": false,
        "AssumptiveCompleteTime": "2021-11-15T10:15:44",
        "DownloadUrl": "/api/customer/reports/bddf7767-f72b-49a9-90f1-df1b74090d92",
        "DeleteUrl": "/api/customer/reports/bddf7767-f72b-49a9-90f1-df1b74090d92",
        "CancelUrl": "/api/customer/reports/bddf7767-f72b-49a9-90f1-df1b74090d92/cancel"
    },
    "Elapsed": "00:00:00.4870790"
}

Таблица 17. Описание параметров ответа на запрос генерации пользовательского отчета

ПараметрВложенный параметрФормат значенияОписание
Status Сообщения о статусе запроса
Data Структура Данные о запросах на отчеты
Массив [Структура] Массив структур данных по сгенерированным отчетам
Id Строка Идентификатор отчета
CDateUtc Дата и время в формате ISO Дата генерации отчета (UTC +3)
ReportTypeName Строка Тип отчета, см. п. 7.1.1.
ReportType Строка Тип отчета, (если не задан CustomReportId), см. п. 7.1.1.
DateFrom Дата и время в формате ISO Начальная дата отчета
DateTo Дата и время в формате ISO Конечная дата отчета
ExpiredDate Дата и время в формате ISO Дата и время автоматического удаления отчета системой из списка
KktCount Целое число Количество касс
Status Строка Статус отчета, см. п. 7.2.1
AccountEmail Строка Адрес электронной почты пользователя ЛКК
AccountName Строка Имя пользователя ЛКК
Name Строка Название отчета
EmailsToNotify Массив В параметре перечислены адреса электронной почты для уведомления о генерации отчета
FileFormat Строка Формат файла сгенерированного отчета
IsAutoReport Логическая переменная Признак автоматически генерируемого отчета.
Возможные значения:
- true;
- false.
AssumptiveCompleteTime Дата и время в формате ISO Предположительное время формирования отчета (если отчет ещё не сгенерирован)
DownloadUrl Строка URL-адрес доступа к сгенерированному отчету для метода GET
DeleteUrl Строка URL-адрес удаления сгенерированного отчета для метода DELETE
CancelUrl Строка URL-адрес отмены сгенерированного отчета. Если отчет ещё не сгенерирован, то его возможно отменить методом GET
Elapsed Дата и время в формате ISO Время, затраченное системой на обработку запроса

7.1.1. Возможные типы отчетов

  • KKTReport — Отчет по подключенным ККТ;
  • CloseShiftReport — Смены (Premium);
  • ReceiptReport — Сверка;
  • FiscalDocumentReport — Список фискальных документов;
  • RentReport — Арендаторам;
  • EReceiptReport — Статистика отправки чеков покупателям;
  • OpenShift24Report — Список касс со сменами, открытыми более 24 часов;
  • ManagerKktReport — Список всех касс;
  • MyKktReport — Мониторинг ККТ и ФН (Premium);
  • FnScheduleReport — График смены ФН.

7.1.2. Возможные ошибки

  • DateFromGreaterThanDateTo — Конечная дата больше начальной, ошибка в задании диапазона дат;
  • AccessDenied — Доступ заблокирован;
  • ReportSizeError — Запрошен отчет на слишком большое количество записей;
  • LimitExhausted — Исчерпан лимит свободного дискового пространства пользователя личным кабинетом клиента;
  • InternalError — Внутренняя ошибка ИС «ОФД».

7.2. Загрузка списка отчетов

Запрос на получение списка отчетов (сгенерированных и генерирующихся) для текущего пользователя имеет вид:

GET https://ofd.ru/api/customer/reports?AuthToken=Code1

Code1 – действующий код авторизации, полученный в результате запроса авторизации.

Пользователь, для которого должен загружаться список сгенерированных отчетов, определяется обязательным параметром AuthToken.
Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON следующего вида (приведены примеры значений):

{
  "OfdAgreementLimit": 500000,
  "ConsumedLimit": 0,
  "List": [
    {
      "Id": "1577b8bc-a384-4f1d-ad00-b0c2440601ef",
      "CDateUtc": "2018-07-12T12:28:06",
      "ReportType": "CloseShiftReport",
      "DateFrom": "2018-07-12T00:00:00",
      "DateTo": "2018-08-12T23:59:59",
      "ExpiredDate": "2018-07-19T12:28:06",
      "KktCount": 8,
      "ReportSize": 8,
      "Status": "Done",
      "AccountEmail": ofdtester1@ofd.ru
    }, 
    ...
    ],
    " TotalCount ": 9
}

Список полей этой структуры c их описаниями представлен в таблице 18.
Ошибки, обрабатываемые запросом, приведены в п. 7.2.2.

Таблица 18. Параметры запроса списка отчетов

Параметр Тип данных Описание
OfdAgreementLimit Целое число Максимальное количество отчетов, которое пользователь может запросить
ConsumedLimit Целое число Израсходованное количество отчетов
List Массив структур Массив структур данных по сгенерированным и генерируемым отчетам
Id Строка в формате UUID Идентификатор отчета
CDateUtc Дата и время в формате ISO Дата генерации отчета (UTC +3)
ReportType Строка Тип отчета, см. п. 8.1.1.
DateFrom Дата и время в формате ISO Начальная дата отчета
DateTo Дата и время в формате ISO Конечная дата отчета
ExpiredDate Дата и время в формате ISO Дата и время, когда отчет будет автоматически удален системой из списка
KktCount Целое число Количество касс
ReportSize Целое число Размер отчета (в килобайтах)
Status Строка Статус отчета, см. п. 8.2.1
AccountEmail Строка Адрес электронной почты, использующийся в учетной записи
TotalCount Целое число Общее количество отчетов

7.2.1. Возможные статусы отчета

  • Todo — Отчет ожидает генерации;
  • Done — Отчет готов;
  • Deleted — Отчет удален;
  • Processing — Отчет генерируется;
  • Error — Генерация отчета совершена с ошибкой.

7.2.2. Возможные ошибки

  • AccessDenied — Доступ заблокирован;
  • InternalError — Внутренняя ошибка ИС «ОФД».

8. Удаление файла сгенерированного пользовательского отчета

Запрос на удаление файла сгенерированного пользовательского отчета имеет вид:

DELETE https://ofd.ru/api/customer/reports/id?AuthToken=Code1

Здесь:
id – идентификатор отчета, генерируемый ИС «ОФД», который имеет вид UUID;
Code1 – действующий код авторизации, полученный в результате запроса авторизации.

Параметры запроса передаются списком в формате запросов команды DELETE.
Параметры запроса приведены в таблице 19.

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

Параметр Тип данных Описание
Id Строка в формате UUID Идентификатор отчета (то же значение, что и в запросе)
command.id Строка в формате UUID Идентификатор отчета (то же значение, что и в запросе)

Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON следующего вида (приведены примеры значений):

{
  "Id": "3ec32d28-d851-4ada-9ae3-d4ef5d05d9a1",
  "CDateUtc": "2018-07-16T14:35:24",
  "ReportType": "CloseShiftReport",
  "DateFrom": "2018-07-16T00:00:00",
  "DateTo": "2018-07-16T23:59:59",
  "ExpiredDate": "2018-07-23T14:35:24",
  "KktCount": 61,
  "ReportSize": 8,
  "Status": "Deleted",
  "AccountEmail": "ofdtest1@ofd.ru"
}

8.1. Возможные ошибки

  • AccessDenied — Доступ заблокирован;
  • ReportNotFound — Удаляемый документ не найден;
  • InternalError — Внутренняя ошибка ИС «ОФД».

9. Отчеты и структуры

9.1. Загрузка отчета по ID (в формате GUID)

Запрос на загрузку файла сгенерированного пользовательского отчета имеет вид:

GET https://ofd.ru/api/customer/reports/id?AuthToken=Code1

Здесь:
id – Идентификатор отчета, генерируемый ИС «ОФД» (имеет вид UUID);
Параметры запроса передаются списком в команде GET следом за строкой; строка от параметров отделена символом “?”, между группами «параметр — значение» используется разделитель “&”, между параметром и значением используется разделитель “=”;
Code1 – Действующий код авторизации, полученный в результате запроса авторизации.
Параметры запроса приведены в таблице 20.

Таблица 20. Параметры запроса файла отчета

Параметр Тип данных Описание
id Строка в формате UUID Идентификатор отчета (то же значение, что и в запросе)

Успешным ответом на запрос (с кодом HTTP равным 200) является ответ, содержащий файл запрошенного отчета.
Ошибки, обрабатываемые запросом, приведены в п. 9.1.1.

9.1.1. Возможные ошибки

  • ReportNotDone — Отчет не сгенерирован или не существует;
  • InternalError — Внутренняя ошибка ИС «ОФД».

9.2. Загрузка списка типов базовых отчетов и их структур

Запрос списка шаблонов базовых отчетов с указанием их структуры имеет вид:

GET https://ofd.ru/api/customer/reports/templates?AuthToken=Code1

Code1 – действующий код авторизации, полученный в результате запроса авторизации.

Пользователь, для которого должен загружаться список сгенерированных отчетов, определяется обязательным параметром AuthToken.
Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON следующего вида (приведены примеры значений):

[
  {
    "ReportType": "CloseShiftReport",
    "DisplayName": "string",
    "Description": "string",
    "Fields": [
      {
        "Name": "string",
        "DisplayField": "string",
        "Optional": true
      },
      ...
    ]
  },
  ...
]

Список полей этой структуры c их описаниями представлен в таблице 21.

Таблица 21. Поля данных записи с описанием типов базовых отчетов и их структуры

Идентификатор Формат поля Назначение
ReportType Строка Тип отчета, см. п. 8.1.1.
DisplayName Строка Имя отчета, выводимое в документ или в окно интерфейса
Description Строка Краткое описание отчета
Fields Структура Структура с описанием полей
Name Строка Имя (идентификатор) поля
DisplayField Строка Имя поля, выводимое в документ или в окно интерфейса
Optional Логическая переменная Признак «дополнительное поле»

10.2.1. Возможные ошибки

  • InternalError — Внутренняя ошибка ИС «ОФД».

10. Шаблоны отчетов

10.1. Загрузка списка шаблонов отчетов, созданных пользователем

Запрос на получение списка сгенерированных отчетов для текущего пользователя имеет вид:

GET https://ofd.ru/api/customer/reports/custom?AuthToken=Code1

Code1 – действующий код авторизации, полученный в результате запроса авторизации.

Пользователь, для которого должен загружаться список сгенерированных отчетов, определяется обязательным параметром AuthToken.
Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON следующего вида (приведены примеры значений):

[
  {
    "Name": "string",
    "BaseReportType": "All",
    "CustomFields": [
      "string",..
    ],
    "Id": "00000000-0000-0000-0000-000000000000",
    "CDateUtc": "2001-09-11T08:46:26.0000000",
    "UDateUtc": "2001-09-11T08:46:26.0000000"
  },
  ...
]

Список полей этой структуры c их описаниями представлен в таблице 22.

Таблица 22. Поля данных списка шаблонов отчетов, созданных пользователем

Идентификатор Формат поля Назначение
Name Строка Название шаблона пользовательского отчета
BaseReportType Строка Тип отчета, на основе которого построен шаблон
CustomFields Массив строк Идентификаторы полей, выбранных пользователем
Id Строка в формате UUID Идентификатор шаблона
CDateUtc Дата и время в формате ISO Дата и время создания шаблона (UTC +3)
UDateUtc Дата и время в формате ISO Дата и время последнего изменения шаблона

10.1.1. Возможные ошибки

  • AccessDenied — Доступ заблокирован;
  • InternalError — Внутренняя ошибка ИС «ОФД».

10.2. Сохранение модифицированного шаблона

Запрос на сохранение модифицированного шаблона отчета для текущего пользователя имеет вид:

POST https://ofd.ru/api/customer/reports/custom?AuthToken=Code1

Code1 – действующий код авторизации, полученный в результате запроса авторизации.

Пользователь, для которого должен загружаться список сгенерированных отчетов, определяется обязательным параметром AuthToken;
Параметры запроса передаются списком в формате запросов команды POST.
Параметры запроса приведены в таблице 23.

Таблица 23. Параметры запроса на сохранение шаблона с внесенными изменениями

Параметр Тип данных Описание
Name Строка Название шаблона пользовательского отчета
Fields Массив строк Сохраняемые измененные идентификаторы полей
BaseReportType Строка Тип отчета, на основе которого построен шаблон
Description Строка Описание шаблона пользовательского отчета

Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON содержащая только поле «Status» с указанием значения «Elapsed».

10.2.1. Возможные ошибки

  • AccessDenied — Доступ заблокирован;
  • InternalError — Внутренняя ошибка ИС «ОФД».

10.3. Загрузка шаблона пользовательского отчета по идентификатору

Запрос для текущего пользователя шаблона отчета по заданному идентификатору шаблона имеет вид:

GET https://ofd.ru/api/customer/reports/custom/id?AuthToken=Code1

Здесь:
id – Идентификатор отчета, генерируемый ИС «ОФД» (имеет вид UUID);
Code1 – действующий код авторизации, полученный в результате запроса авторизации.
Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON следующего вида (приведены примеры значений):

{
  "Name": "string",
  "BaseReportType": "All",
  "CustomFields": [
    "string",..
  ],
  "Id": "00000000-0000-0000-0000-000000000000",
  "CDateUtc": "2001-09-11T08:46:26.0000000",
  "UDateUtc": "2001-09-11T08:46:26.0000000"
}

Список полей этой структуры c их описаниями представлен в таблице 24.

Таблица 24. Поля данных шаблона пользовательского отчета

Идентификатор Формат поля Назначение
Name Строка Название шаблона пользовательского отчета
BaseReportType Строка Тип отчета, на основе которого построен шаблон
CustomFields Массив строк Идентификаторы полей, выбранных пользователем
Id Строка в формате UUID Идентификатор шаблона
CDateUtc Дата и время в формате ISO Дата и время создания шаблона (UTC +3)
UDateUtc Дата и время в формате ISO Дата и время последнего изменения шаблона

10.3.1 Возможные ошибки

  • InternalError — Внутренняя ошибка ИС «ОФД».

10.4. Сохранение шаблона пользовательского отчета по идентификатору

Запрос на сохранение шаблона отчета по заданному идентификатору шаблона для текущего пользователя имеет вид:

PUT https://ofd.ru/api/customer/reports/custom/id?AuthToken=Code1

Здесь:
id – идентификатор отчета, генерируемый ИС «ОФД» (имеет вид UUID).
Code1 – действующий код авторизации, полученный в результате запроса авторизации.
Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON, содержащая только «Status», имеющее значение «Success», и «Elapsed».

10.4.1. Возможные ошибки

  • AccessDenied — Доступ заблокирован;
  • InternalError — Внутренняя ошибка ИС «ОФД».

10.5. Удаление шаблона пользовательского отчета по идентификатору

Запрос на удаление шаблона отчета для текущего пользователя по заданному идентификатору шаблона имеет вид:

DELETE https://ofd.ru/api/customer/reports/custom/id?AuthToken=Code1

Здесь id – идентификатор отчета, генерируемый ИС «ОФД» (имеет вид UUID).
Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON, содержащая только поле «Status», имеющее значение «Success», и «Elapsed».

10.5.1. Возможные ошибки

  • AccessDenied — Доступ заблокирован;
  • InternalError — Внутренняя ошибка ИС «ОФД».

История изменений

Версия 1.0

Выпущена 10.10.2024 г.
Первая версия документа. Объединены документы «Чеки и ККТ» и «Отчеты».