API ОФД

Версия 1.21 от 10.12.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. Получение отчетов о регистрации и изменении параметров регистрации ККТ за период

Запрос на получение отчетов о регистрации и изменении параметров регистрации ККТ за выбранный период выполняется методом POST.

POST https://ofd.ru/api/integration/v2/kkt/registration/{RNM}/regReceipts?AuthToken={Code}

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

Пример запроса на получение отчетов о регистрации и изменении параметров регистрации ККТ за выбранный период. Описание параметров запроса представлено в таблице 3.

   {
    "beginDate":"2024-01-17T00:00:00",
    "endDate":"2024-01-17T23:59:59",
    "reportType":"ReRegReport"
   }

Таблица 3. Параметры запроса на получение отчетов о регистрации и изменении параметров регистрации ККТ за период.

ПараметрТип данныхОписание
beginDateString в формате ISOДата начала периода
endDateString в формате ISOДата окончания периода
reportTypeStringТип отчета. Указывается RegReport — для регистрации или ReRegReport — для изменения параметров регистрации

Пример ответа на запрос.

  {
    "ofdReceivedDt": "0001-01-01T00:00:00",
    "fnsReceivedDt": "0001-01-01T00:00:00",
    "operationDT": "0001-01-01T00:00:00",
    "isAutoTerminal": false,
    "autonomouseMode": false,
    "isEncrypted": false,
    "isAgent": false,
    "isInternet": false,
    "isServices": false,
    "isAutoBso": false,
    "isLottery": false,
    "isGambling": false,
    "isMarkup": false,
    "isPrinterIn": false
  }

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

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

ПараметрТип данныхОписаниеТег
receiptCodeStringКод документа11
ofdReceivedDtString в формате ISOВремя получения ФД ОФДНет тега
fnsReceivedDtString в формате ISOВремя получения ФД ФНСНет тега
paymentPlaceStringМесто расчетов1187
paymentAddressStringАдрес расчетов1009
operationDTString в формате ISOДата, время операции1012
ofdINNStringИНН ОФД1017
ofdNameStringНаименование ОФД1046
fnsWebSiteStringАдрес сайта ФНС1060
cashierStringКассир1021
kktRNMStringРегистрационный номер ККТ1037
kktZNStringЗаводской номер ККТ1013
kktFNStringЗаводской номер фискального накопителя1041
userNameStringНаименование пользователя1048
docNumStringПорядковый номер фискального документа1040
docFiscalSignStringФискальный признак документа1077
taxSystemStringСистемы налогообложения1062
reRegReasonStringКод причины перерегистрации1101
senderEmailStringАдрес электронной почты отправителя чека1117
fnTotalsStringСчетчики итогов ФН1157
kktVersionStringВерсия ККТ1188
kktFFDVersionStringВерсия ФФД ККТ1189
fnFFDVersionStringВерсия ФФД ФН1190
cashierINNStringИНН кассира1203
changeReasonCodesStringКоды причин изменения сведений о ККТ1205
ffdVersionNumberStringНомер версии ФФД1209
fpKeyResourceStringРесурс ключей ФП1213
isAutoTerminalBooleanПризнак автоматического режима1001
autonomousModeBooleanАвтономный режим1002
autoPaymentDeviceNumberStringНомер автоматического устройства для расчетов1036
isEncryptedBooleanПризнак шифрования1056
isAgentBooleanПризнак агента1057
isInternetBooleanПризнак расчетов в интернете1108
isServicesBooleanПризнак услуги1109
isAutoBsoBooleanПризнак БСО1110
isLotteryBooleanПризнак проведения лотереи1126
isGamblingBooleanПризнак проведения азартных игр1193
isMarkupBooleanПризнак торговли подакцизными товарами1207
isPrinterInBooleanПризнак установки принтера в автомате1221
kktConditionsFlagsStringПризнаки условий применения ККТ1290
userINNStringИНН пользователя1018

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

Запрос на получение списка чеков за период по заданной кассе выполняется методом 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
    },
    ...
  ]
}

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

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

ПараметрВид значенияОписание
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.6. Список чеков за смену по заданной кассе

Запрос на получение списка за смену по заданной кассе выполняется методом 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.5. Описание параметров ответа представлено в Таблице 5, описание возможных ошибок приведено в разделе 2.5.

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

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

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

Запрос выполняется методом 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
    }
}

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

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

ПараметрВложенный параметрВид значенияОписаниеТег
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 Код маркировки.
Параметр может иметь в составе один из параметров, описанных в таблице 8 со значением кода маркировки

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

ПараметрВложенный параметрВид значенияОписаниеТег
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 Код маркировки.
Параметр может иметь в составе один из параметров, описанных в таблице 8 со значением кода маркировки

Таблица 8. Возможные значения параметра «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.7.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.7.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.8. Просмотр электронного чека

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

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


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

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

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

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

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

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

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


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"
}

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

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

ПараметрВложенный параметрВложенный параметрВид значенияОписаниеТег
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» – расход;
«Refund income» – возврат прихода;
«Refund expenses» – возврат расхода.
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.9.1. Список чеков с кодами маркировки по кассе с подробной информацией

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


GET 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"
}

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

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

ПараметрВложенный параметрВложенный параметрВид значенияОписаниеТег
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 Код маркировки.
Параметр может иметь в составе один из параметров описанных в таблице 12 со значением кода маркировки
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 Дата и время получения уведомления от ФНС о получении чека (БСО)

Таблица 12. Возможные значения параметра «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

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

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


GET https://ofd.ru/api/integration/v2/receipts/json-doc?KktAgreementId=[id кассы]&DocNumber=[номер ФД]&CustomFnNumber=[номер ФН]&AuthToken={Code}

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

  • Id кассы — идентификационный номер кассы (Пример b7edf803-7eoa-46f9-9d73-cb1d9cac2575);
  • Номер ФД – номер фискального документа, по которому нужно получить чек;
  • Номер ФН – номер фискального накопителя.
  • Code – действующий код авторизации, полученный при авторизации.

Примером успешного ответа на запрос (с кодом HTTP равным 200) является генерация структуры данных в JSON:

{
    "Data": {
        "RawId": "3829eb50-34ac-3fd6-c2a9-e2d99cf99c1b",
        "Container": {
            "Version": 3,
            "DocumentFormat": "1.2",
            "Document": {
                "Tag": 3,
                "User": "ООО \"Петер-Сервис Спецтехнологии\"",
                "UserInn": "7849999198",
                "Number": 29,
                "DateTime": "2024-11-01T18:30:00",
                "ShiftNumber": 453,
                "OperationType": 1,
                "TaxationType": 1,
                "Operator": "СИС. АДМИНИСТРАТОР",
                "KKT_RegNumber": "0007605959049999    ",
                "FN_FactoryNumber": "7281440501049999",
                "Items": [
                    {
                        "Name": "Предоплата за услуги оператора фискальных данных",
                        "Price": 30000,
                        "Quantity": 1.0,
                        "Total": 30000,
                        "CalculationMethod": 3,
                        "SubjectType": 10,
                        "NDS_PieceSumm": 5000,
                        "NDS_Rate": 3,
                        "NDS_Summ": 5000,
                        "ProductUnitOfMeasure": 0
                    }
                ],
                "RetailPlaceAddress": "г. Москва, Остаповский проезд, д.22, стр.16",
                "Buyer_Address": "client@ofd.ru",
                "Sender_Address": "noreply@ofd.ru",
                "Nds18_CalculatedTotalSumm": 5000,
                "Amount_Total": 30000,
                "Amount_Cash": 0,
                "Amount_ECash": 30000,
                "Document_Number": 59721,
                "FiscalSign": "MQQcqqbQ",
                "DecimalFiscalSign": "480945872",
                "InternetSign": 1,
                "Format_Version": 4,
                "Amount_Advance": 0,
                "Amount_Loan": 0,
                "Amount_Granting": 0,
                "TaxAuthority_Site": "nalog.gov.ru",
                "Calculation_Place": "https://ofd.ru/",
                "BuyerInn": "772599990876"
            },
            "Tag": 3,
            "UserInn": "7841469999",
            "KktRegNumber": "0007605959049999",
            "FnNumber": "7281440501049999",
            "DocNumber": 59799,
            "DocDateTime": "2024-11-01T18:30:00",
            "DocFiscalSign": "MQQcbbbQ",
            "DecimalFiscalSign": "480949999",
            "CDateUtc": "2024-11-01T15:30:18"
        },
        "TlvDictionary": {
            "1209": 4,
            "1041": "7281440501049999",
            "1037": "0007605959049999    ",
            "1018": "7841469999  ",
            "1040": 59799,
            "1012": "2024-11-01T18:30:00",
            "1077": "MQQcbbbQ",
            "1038": 453,
            "1042": 29,
            "1054": 1,
            "1020": 30000,
            "1108": 1,
            "1048": "ООО \"Петер-Сервис Спецтехнологии\"",
            "1256": {
                "1228": "772583359999",
                "1227": "ИП Тестовый Тест Тестович"
            },
            "1055": 1,
            "1021": "СИС. АДМИНИСТРАТОР",
            "1009": "г. Москва, Остаповский проезд, д.22, стр.16",
            "1187": "https://ofd.ru/",
            "1008": "client@ofd.ru",
            "1059": [
                {
                    "2108": 0,
                    "1214": 3,
                    "1212": 10,
                    "1030": "Предоплата за услуги оператора фискальных данных",
                    "1079": 30000,
                    "1199": 3,
                    "1023": 1.0,
                    "1198": 5000,
                    "1043": 30000,
                    "1200": 5000
                }
            ],
            "1031": 0,
            "1081": 30000,
            "1215": 0,
            "1216": 0,
            "1217": 0,
            "1106": 5000,
            "1117": "noreply@ofd.ru",
            "1060": "nalog.gov.ru"
        }
    },
    "Success": true
}

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

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

ПараметрВложенный параметрВложенный параметрВложенный параметрВложенный параметрВложенный параметрВид значенияОписание
Data ArrayМассив данных ответа на запрос
ObjectСтруктура с параметрами ответа на запрос
RawId String в формате UUIDУникальный номер фискального документа в ИС «ОФД»
Container
Version IntegerВерсия системы
DocumentFormat StringВерсия формата фискальных документов
Document ArrayДанные фискального документа
Tag IntegerЧисленный признак вида документа:
3 – чек;
31 – чек коррекции;
4 – бланк строгой отчетности;
41 – бланк строгой отчетности коррекции
User StringНаименование пользователя
UserInn StringИНН пользователя (владельца, ответственного лица)
Number IntegerНомер документа в смене
DateTime String в формате ISO (UTC +3)Дата и время последнего обновления информации о чеке
ShiftNumber IntegerНомер смены (по данным кассы), в которую был сформирован документ
OperationType IntegerЧисленный признак типа операции:
1 – приход;
2 – возврат прихода;
3 – расход;
4 – возврат расхода
TaxationType IntegerТип налогообложения, принимает значения:
0 – общая система налогообложения;
1 – упрощенная система налогообложения (доход);
2 – упрощенная система налогообложения (доход минус расход);
3 – единый налог на вмененный доход;
4 – единый сельскохозяйственный налог;
5 – патентная система налогообложения.
Operator StringФамилия, имя и отчество оператора
KKT_RegNumber StringРегистрационный номер кассы
FN_FactoryNumber StringНомер фискального накопителя, установленного в кассу (серийный, заводской)
Items ArrayТоварные позиции, перечисленные списком
Name StringНазвание позиции
Price IntegerЦена позиции (в копейках)
Quantity IntegerКоличество единиц товарной позиции
Total IntegerСтоимость по позиции (в копейках)
CalculationMethod IntegerПризнак способа расчета.
Может принимать следующие значения
1 – предоплата 100%;
2 – предоплата;
3 – аванс;
4 – полный расчет;
5 – частичный расчет;
6 – передача в кредит;
7 – оплата в кредит.
SubjectType IntegerПризнак предмета расчета.
Возможные значения представлены в разделе 2.6.1.
NDS_PieceSumm IntegerРазмер НДС за единицу предмета расчета
NDS_Rate IntegerСтавка НДС принимает значения:
1 - НДС 20%;
2 - НДС 10%;
3 - НДС 20/120;
4 - НДС 10/110;
5 - НДС 0%;
6 - НДС не облагается
NDS_Summ IntegerОбщая сумма НДС в копейках
ProductUnitOfMeasure IntegerЕдиницы измерения количества предмета расчета.
Параметр может принимать значения, описанные в разделе 2.6.2.
RetailPlaceAddress StringАдрес расположения кассового аппарата
Buyer_Address StringАбонентский номер и (или) адрес электронной почты покупателя (клиента) в случае передачи ему кассового чека (БСО) в электронной форме
Sender_Address StringАдрес электронной почты отправителя чека
Nds18_CalculatedTotalSumm IntegerСумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 18/118, начисленная за смену, в копейках
Amount_Total IntegerОбщая сумма по чеку (в копейках)
Amount_Cash IntegerСумма наличными по чеку (в копейках)
Amount_ECash IntegerСумма электронного платежа по чеку (в копейках)
Document_Number IntegerФискальный номер документа
FiscalSign StringФискальный признак документа
DecimalFiscalSign StringФискальный признак документа
InternetSign IntegerПризнак осуществления расчетов только в сети «Интернет», в которой отсутствует устройство для печати фискальных документов в составе ККТ
Format_Version IntegerНомер версии формата фискальных документов
Amount_Advance IntegerСумма предоплаты (зачет аванса)
Amount_Loan IntegerСумма постоплаты (кредита)
Amount_Granting IntegerСумма встречным предоставлением
TaxAuthority_Site StringСайт налогового органа (Адрес сайта ФНС)
Calculation_Place StringМесто расчетов
BuyerInn StringИНН покупателя
Tag IntegerЧисленный признак вида документа:
3 – чек;
31 – чек коррекции;
4 – бланк строгой отчетности;
41 – бланк строгой отчетности коррекции.
UserInn StringИНН владельца кассы
KktRegNumber StringРегистрационный номер кассы
FnNumber StringНомер фискального накопителя, установленного в кассу
DocNumber IntegerФискальный номер документа
DocDateTime String в формате ISO (UTC +3)Дата и время формирования документа по данным кассы
DocFiscalSign StringФискальный признак документа
DecimalFiscalSign StringФискальный признак документа
CDateUtc String в формате ISO (UTC +3)Дата и время приема документа в информационную систему
TlvDictionary ArrayПеречень тегов для представления в электронной форме
1209 IntegerНомер версии формата фискальных документов
1041 StringНомер фискального накопителя, установленного в кассу
1037 StringРегистрационный номера кассы
1018 StringИНН владельца кассы
1040 IntegerНомер фискального документа
1012 StringДата и время формирования документа (чека)
1077 StringФискальный признак документа
1038 IntegerНомер смены (по данным кассы), в которую был сформирован документ
1042 IntegerНомер документа внутри смены
1054 StringТип операции:
«Income» – приход;
«Expence» – расход;
«RefundIncome» – возврат прихода;
«RefundExpence» – возврат расхода.
1020 IntegerОбщая сумма по чеку в копейках
1108 IntegerПризнак осуществления расчетов только в сети «Интернет», в которой отсутствует устройство для печати фискальных документов в составе ККТ
1048 StringПолное имя или наименование владельца кассы
1256 ObjectСведения о покупателе
1228 StringИНН покупателя (клиента)
1227 StringНаименование покупателя (клиента)
1055 ArrayСистема налогообложения:
0 — общая (ОСН);
1 — УСН доход;
2 — УСН доход — расход;
3 — ЕНВД;
4 — ЕСХН;
5 — Патент.
1021 StringДолжность и ФИО лица, осуществившего расчет с покупателем
1009 StringАдрес осуществления расчетов между пользователем и покупателем (клиентом)
1187 StringМесто осуществления расчетов между пользователем и покупателем (клиентом)
1008 StringТелефон или электронный адрес покупателя в случае передачи ему кассового чека (БСО) в электронной форме
1059 ArrayСписок товарных позиций в чеке
2108 IntegerЕдиницы измерения количества предмета расчета.
Параметр может принимать значения, описанные в разделе 2.6.2.
1214 IntegerПризнак способа расчета.
Может принимать следующие значения:
1 – предоплата 100%;
2 – предоплата;
3 – аванс;
4 – полный расчет;
5 – частичный расчет;
6 – передача в кредит;
7 – оплата в кредит
1212 IntegerПризнак предмета расчета.
Возможные значения представлены в разделе 2.6.1.
1030 StringНаименование товарной позиции в чеке
1079 IntegerЦена в копейках за единицу измерения товарной позиции
1199 IntegerСтавка НДС:
1 – НДС 20%;
2 – НДС 10%;
3 – НДС 20/120;
4 – НДС 10/120;
5 – НДС 0%;
6 – нет НДС
1023 DoubleКоличество предмета расчета
1198 IntegerРазмер НДС за единицу предмета расчета
1043 IntegerСтоимость товарной позиции в копейках
1200 IntegerСумма НДС за предмет расчета
1031 IntegerСумма наличными по чеку в копейках
1081 IntegerСумма, оплаченная картой в копейках
1215 IntegerСумма предоплаты (зачет аванса)
1216 IntegerСумма постоплаты (кредита)
1217 IntegerСумма встречным предоставлением
1106 IntegerСумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 20/120 в копейках
1117 StringАдрес электронной почты отправителя чека
1060 StringСайт налогового органа (Адрес сайта ФНС)
Succes BooleanTrue – запрос выполнен успешно;
False – не удалось выполнить запрос.

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}

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

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

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

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

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

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

ПараметрВид значенияОписание
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"
}

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

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

ПараметрВложенный параметрВид значенияОписание
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
}

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

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

ПараметрВложенный параметрФормат значенияОписание
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"
}

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

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

ПараметрВложенный параметрФормат значенияОписание
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"
}

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

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

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

Success - Успешно;
Failed - Неуспешно.
Data ObjectСтруктура с параметрами ответа на запрос
FnNumber StringНомер фискального накопителя
DocNumber StringНомер чека
RecType StringТип чека
DocDate DateTimeДата и время пробития чека
OfdDate DateTimeДата и время получения чека (ФД ОФД)
Errors ObjectУказание обнаруженных ошибок
CodeIntegerКод ошибки
NameStringНазвание ошибки
DescriptionStringОписание ошибки
SolutionStringРешение ошибки
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/integration/v2/reports/create?AuthToken={Code}

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


{

  "CustomReportId": null,
  "Name": "Сверка",
  "DateFrom": "2024-10-01T00:00:00.000+03:00",
  "DateTo": "2024-10-02T23:59:59.000+03:00",
  "EmailsToNotify": "test@ofd.ru",
  "FfdType": 0,
  "GroupsList": [],
  "KktList": [],
  "ReportType": "ReceiptReport",
  "SelectAllKkts": true,
  "UseXlsxFile": true

}

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

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

ПараметрТип данныхОписание
CustomReportIdString в формате UUIDИдентификатор пользовательского шаблона. Задается, если запрошен отчет на основе пользовательского шаблона
NameStringНазвание отчета
DateFromString в формате ISO (UTC +3)Начальная дата периода генерации отчета
DateToString в формате ISO (UTC +3)Конечная дата периода генерации отчета
EmailsToNotifyStringПризнак «Оповестить об окончании генерации отчета по почте». В параметре вы можете перечислить адреса электронной почты для уведомления о генерации отчета. Адреса электронной почты указываются через символ «;»
FfdTypeIntegerТип ФФД, указывается 1.05, 1.1 или 1.2. В зависимости от вашего ФФД
GroupsListArray Список папок с записями ККТ, по которым генерируется отчет (учитывается содержимое всех вложенных папок)
KktListArray Список касс, по которым генерируется отчет
ReportTypeStringТип отчета, (если не задан CustomReportId), см. п. 7.1.1.
SelectAllKktsBooleanПризнак выбора для генерации отчета всех ККТ текущего ЛКК
UseXlsxFileBooleanПризнак «Использовать для отчета файл типа XSLX»

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


{
    "Data": {
        "Id": "9b999a56-3c2d-4c25-b722-6244fa59f0c9",
        "CDateUtc": "2024-11-01T13:32:07",
        "ReportTypeName": "Сверка",
        "ReportType": "ReceiptReport",
        "DateFrom": "2024-10-01T00:00:00",
        "DateTo": "2024-10-02T23:59:59",
        "ExpiredDate": "2024-11-08T13:32:07",
        "KktCount": 17,
        "Status": "Todo",
        "AccountEmail": "test@ofd.ru",
        "AccountName": "Георгий",
        "Name": "Сверка",
        "EmailsToNotify": [
            "test@ofd.ru"
        ],
        "FileFormat": "Xlsx",
        "IsAutoReport": false,
        "AssumptiveCompleteTime": "2024-11-01T13:33:07",
        "DownloadUrl": "/api/customer/reports/9b814a56-3c2d-4c25-b722-6244fa59f0c9?OfdAgreementId=d62222c5-61b8-4ed9-b729-9bd7cde127db",
        "DeleteUrl": "/api/customer/reports/9b814a56-3c2d-4c25-b722-6244fa59f0c9?ofdAgreementId=d62222c5-61b8-4ed9-b729-9bd7cde127db",
        "CancelUrl": "/api/customer/reports/9b814a56-3c2d-4c25-b722-6244fa59f0c9/cancel?ofdAgreementId=d62222c5-61b8-4ed9-b729-9bd7cde127db"
    },
    "Success": true
}

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

ПараметрВложенный параметрФормат значенияОписание
Data Структура Данные о запросах на отчеты
Array [Структура] Массив структур данных по сгенерированным отчетам
IdСтрока Идентификатор отчета
CDateUtcString в формате ISOДата генерации отчета (UTC +3)
ReportTypeNameStringТип отчета, см. п. 7.1.1.
ReportTypeStringТип отчета, (если не задан CustomReportId), см. п. 7.1.1.
DateFromString в формате ISO Начальная дата отчета
DateToString в формате ISO Конечная дата отчета
ExpiredDateString в формате ISOДата и время автоматического удаления отчета системой из списка
KktCountIntegerКоличество касс
StatusStringСтатус отчета, см. п. 7.2.1
AccountEmailStringАдрес электронной почты пользователя ЛКК
AccountNameStringИмя пользователя ЛКК
NameStringНазвание отчета
EmailsToNotifyArrayВ параметре перечислены адреса электронной почты для уведомления о генерации отчета
FileFormatStringФормат файла сгенерированного отчета
IsAutoReportBooleanПризнак автоматически генерируемого отчета.
Возможные значения:
- true;
- false.
AssumptiveCompleteTimeString в формате ISOПредположительное время формирования отчета (если отчет ещё не сгенерирован)
DownloadUrlStringURL-адрес доступа к сгенерированному отчету для метода GET
DeleteUrlStringURL-адрес удаления сгенерированного отчета для метода DELETE
CancelUrlStringURL-адрес отмены сгенерированного отчета. Если отчет ещё не сгенерирован, то его возможно отменить методом GET
Success BooleanСтатус выполнения запроса:
True – успешно выполнен запрос;
False – не успешно выполнен запрос

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

Таблица 21. Возможные типы отчетов

Уровень доступаIDПараметрНазвание отчета
-1UndefinedНе определен
0AllВсе отчеты
Standard3ReceiptReportСверка
Standard5RentReportАрендаторам
Standard27FermaOpsReportОперации Ferma в ЛКК
Standard24ManuallySentReceiptsСформированные вручную чеки
Standard6EreceiptReportСтатистика отправки чеков покупателям
Standard42EreceiptInfoReportДетализация по отправкам чеков покупателям
Standard36FactKktWrkTimeReportДни работы касс
Standard41ErrorDocsExtReportРасширенный отчет чеки с ошибками
Standard45ProhibitedSalesFermaReportКоды маркировки по кассам Ferma, запрещенные к продаже
Standard43CorrectionReceiptReportЧеки коррекции
Premium2CloseShiftReportСмены
Premium28SalesПродажи
Premium9MyKktReportМониторинг ККТ и ФН
Premium17ArchiveFNReportАрхив ФН
Premium19MarkerDocReportМаркировка
Premium13NomenclatureSalesНоменклатуры
Premium37ErrorDocsReportЧеки с ошибками
Extra34ReceiptNomenclReportРасширенная сверка с номенклатурами
Extra31CustomerDataReportДанные покупателей
Extra29ReturnIncomeReportКМ-3
Extra35CashiersReportКМ-6

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

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

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

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


GET https://ofd.ru/api/integration/v2/reports/list?AuthToken={Code}&inn={INN}&kpp={INN}
  • INN – идентификационный номер налогоплательщика (ИНН юридического лица);
  • KPP — идентификационный код причины постановки на учет (КПП) юридического лица (в запросе не обязателен ИП);
  • Code – действующий код авторизации, полученный при авторизации.

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


{
    "Data": {
        "OfdAgreementLimit": 500000,
        "ConsumedLimit": 0,
        "List": [
        {
             "Id": "9b814a56-3c2d-4c25-b722-6244fa59f0c9",
             "CDateUtc": "2024-11-01T13:32:07",
             "ReportType": "ReceiptReport",
             "DateFrom": "2024-10-01T00:00:00",
             "DateTo": "2024-10-02T23:59:59",
             "ExpiredDate": "2024-11-02T13:32:07",
             "KktCount": 17,
             "ReportSize": 8,
             "Status": "Done",
             "AccountEmail": "test@ofd.ru"
            },
             ...
          ],
        "TotalCount": 0
    },
    "Success": true
}

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

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

ПараметрВложенный параметрВложенный параметрТип данныхОписание
Data СтруктураДанные о запрошенных отчетах
OfdAgreementLimit IntegerМаксимальное количество отчетов, которое пользователь может запросить
ConsumedLimit IntegerИзрасходованное количество отчетов
List Массив структур Массив структур данных по сгенерированным и генерируемым отчетам
IdString в формате UUIDИдентификатор отчета
CDateUtcString в формате ISOДата генерации отчета (UTC +3)
ReportTypeStringТип отчета, см. п. 8.1.1.
DateFromString в формате ISOНачальная дата отчета
DateToString в формате ISOКонечная дата отчета
ExpiredDateString в формате ISOДата и время, когда отчет будет автоматически удален системой из списка
KktCountIntegerКоличество касс
ReportSizeIntegerРазмер отчета (в килобайтах)
StatusStringСтатус отчета, см. п. 8.2.1
AccountEmailStringАдрес электронной почты, использующийся в учетной записи
TotalCount IntegerОбщее количество отчетов
Success BooleanСтатус выполнения запроса

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

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

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

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

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

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


DELETE https://ofd.ru/api/integration/v2/reports/delete?Id={ID}&AuthToken={Code}

Пример успешного ответа на запрос (с кодом HTTP равным 200) является генерация структуры данных в JSON:


{
    "Data": {
        "Id": "fd8c44f4-1dad-42ba-9816-ccbbe54a4e19",
        "CDateUtc": "2024-11-08T08:40:23",
        "ReportTypeName": "Сверка",
        "ReportType": "ReceiptReport",
        "DateFrom": "2024-10-01T00:00:00",
        "DateTo": "2024-10-02T23:59:59",
        "ExpiredDate": "2024-11-15T08:40:23",
        "KktCount": 17,
        "Status": "Deleted",
        "AccountEmail": "test@ofd.ru",
        "AccountName": "Генадий",
        "Name": "Сверка",
        "EmailsToNotify": [
            "test@ofd.ru"
        ],
        "FileFormat": "Xlsx",
        "IsAutoReport": false,
        "DownloadUrl": "/api/customer/reports/fd1c04f2-1dad-12ba-9816-ccbbe54a4e19",
        "DeleteUrl": "/api/customer/reports/fd1c04f2-1dad-12ba-9816-ccbbe54a4e19",
        "CancelUrl": "/api/customer/reports/fd1c04f2-1dad-12ba-9816-ccbbe54a4e19/cancel"
    },
    "Success": true
}

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

Таблица 23. Описание параметров ответа на запрос удаления файла сгенерированного пользовательского отчета

ПараметрВложенный параметрФормат значенияОписание
DataСтруктураМассив структур данных по сгенерированным отчетам
IdString в формате UUIDИдентификатор отчета
CDateUtcString в формате ISO (UTC +3)Дата генерации отчета
ReportTypeNameStringТип отчета, см. п. 7.1.1.
ReportTypeStringТип отчета, (если не задан CustomReportId), см. п. 7.1.1.
DateFromString в формате ISO (UTC +3)Начальная дата отчета
DateToString в формате ISO (UTC +3)Конечная дата отчета
ExpiredDateString в формате ISO (UTC +3)Дата и время автоматического удаления отчета системой из списка
KktCountIntegerКоличество касс
StatusStringСтатус отчета,см. п. 7.2.1.
AccountEmailStringАдрес электронной почты пользователя ЛКК
AccountNameStringИмя пользователя ЛКК
NameStringНазвание отчета
EmailsToNotifyArrayВ параметре перечислены адреса электронной почты для уведомления о генерации отчета
FileFormatStringФормат файла сгенерированного отчета
IsAutoReportBooleanПризнак автоматически генерируемого отчета.
DownloadUrlStringURL-адрес доступа к сгенерированному отчету для метода GET
DeleteUrlStringURL-адрес удаления сгенерированного отчета для метода DELETE
CancelUrlStringURL-адрес отмены сгенерированного отчета. Если отчет ещё не сгенерирован, то его возможно отменить методом GET
Success BooleanСтатус выполнения запроса

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

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

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

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

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


GET https://ofd.ru/api/integration/v2/reports/download?Id={id}&AuthToken={Code}

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

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

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

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

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


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

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


{
    "Data": [
        {
            "ReportType": "RentReport",
            "DisplayName": "Арендаторам",
            "Description": "Информация о выручке арендодателям.",
            "IsRentaReport": false,
            "IsCustomReport": false,
            "IsPartnerReport": false,
            "IsPaidReport": true,
            "Locked": false,
            "ReportGrade": "Standard",
            "ReportGradeLabel": "Standard",
            "Fields": [
                    {
                        "Name": "OrgInn",
                        "DisplayField": "ИНН компании",
                        "Optional": true
                },
],
            "Filters": [
                "DateTimeFilter",
                "IsDailyDetailed"
            ],
            "Tags": [
                "Ofd",
                "Ferma"
            ]
        }
    ],
    "Success": true
}

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

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

ПараметрФормат поляНазначение
ReportTypeСтрокаТип отчета, см. п. 8.1.1.
DisplayNameСтрокаИмя отчета, выводимое в документ или в окно интерфейса
DescriptionСтрокаКраткое описание отчета
IsRentaReportBooleanПроверка, отчет сервиса Renta это или нет
IsCustomReportBooleanПроверка, персональный отчет это или нет
IsPartnerReportBooleanПроверка, партнерский отчет это или нет
IsPaidReportBooleanПроверка, платный отчет это или нет
LockedBooleanПроверка доступности отчета для пользователя
ReportGradeStringТип отчета (Standart, Premium, Extra)
ReportGradeLabelStringКириллическое(смешанное) или хештеговое обозначение отчета. (Внутренний параметр)
FieldsArrayСтруктура с описанием полей. Значения описаны в пункте 10.1.1
FiltersArrayИмя (идентификатор) поля. Значения описаны в таблице 25
TagsArrayИмя поля, выводимое в документ или в окно интерфейса. Значения описаны в таблице 26

Таблица 25. Описание параметра Filters

ПараметрЧисловое значениеНазначение
DateTimeFilter1Фильтр времени С ПО
DocTypeFilter2Фильтр по типу документа
InnFilter3Фильтр по ИНН
SingleInnFilter4Фильтр по ИНН (можно выбрать только один)
InnWithRestaurantCodeFilter5Фильтр по ИНН, у которых есть код ресторана
IsDailyDetailed6Признак того, что отчёт должен быть с детализацией по дням
DashFilter7Признак выбора типа периода (день / неделя / месяц и пр.)
SalesSourceFilter8Признак выбора источников продажи (кассы / торговые точки / общее)
FileFilter9Признак выбора файла для загрузки
OperationTypeFilter10Тип операции (Приход, Расход, Возврат прихода, Возврат расхода)
CalculationMethodFilter11Выберите признак способа расчета (Предоплата, Аванс, Полный расчет…)
UploadInnRenterFilter12Организации с загруженными данными (пока только для «Выручка и возвраты» Рента)
MonthYearFilter13Фильтр выбора месяца и года

Таблица 26. Описание параметра Tags

ПараметрЧисловое значениеЗначение (Сервис)
Ofd1ОФД
Renta2Renta
Ferma3Ferma
Marking4Маркировка
Partner5Партнерский кабинет

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

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

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

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

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


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

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

{
    "Data": [
        {
            "Id": "3e6b8866-8172-42e0-b5d0-0443d3d01993",
            "CDateUtc": "2024-11-02T14:49:36",
            "UDateUtc": "2024-11-02T14:49:36",
            "Name": "test",
            "Fields": [
                …
            ],
            "BaseReportType": "Sales",
            "IsRentaReport": false
        },
    …
    ],
    "Success": true
}

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

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

ИдентификаторФормат поляНазначение
IdString в формате UUIDИдентификатор шаблона
CDateUtcString в формате ISO (UTC +3)Дата и время создания шаблона
UDateUtcString в формате ISO (UTC +3)Дата и время последнего изменения шаблона
NameStringНазвание шаблона пользовательского отчета
FieldsArrayИдентификаторы полей, выбранных пользователем. Значения описаны в таблице 28
BaseReportTypeStringТип отчета, на основе которого построен шаблон
IsRentaReportBooleanПроверка, отчет сервиса Renta это или нет

10.1.1 Описание полей параметра Fields

Таблица 28. Значения полей параметра «Fields»

ПараметрНазначение
KktSerialNumberЗаводской номер кассы
FnNumberНомер фискального накопителя
KKTRegNumberРегистрационный номер кассы
KktAddressМесто установки кассы
OperatorФамилия, имя, отчество оператора
KktNameНаименование кассы
KktModelМодель кассы (ККТ)
PathПуть расположения кассы в личном кабинете клиента
ShiftNumberНомер смены по данным кассы
OpenDocNumberНомер документа об открытии смены
OpeningDateДата открытия смены
OpeningTimeВремя открытия смены
CloseDocNumberНомер документа о закрытии смены
ClosingDateДата закрытия смены
ClosingTimeВремя закрытия смены
ShiftDurationПродолжительность смены
UnsendNotificationsCountКоличество непереданных уведомлений
ShiftLastReceiptПоследний чек в смене
TotalCountКоличество чеков
AvgRecСредний чек
Prepay100Предоплата 100%
PrepayПредоплата
AdvanceАванс
FullCalcПолный расчет
PartCalcЧастичный расчет или кредит
TransInCreditПередача в кредит
CreditPayОплата кредита
TotalRevenueОбщая выручка
TotalRevenueWithoutAdvanceВыручка без авансовых средств
TotalCashRevenueВыручка наличными
TotalCashlessRevenueВыручка наличными без авансовых средств
AdvRevВыручка авансовых средств
IncomeCashSummПрихода наличными
IncomeCountКоличество чеков
IncomeCountCashКоличество чеков прихода наличными
IncomeECashSummПриход безналичными
IncomeCountECashКоличество чеков прихода безналичными
AdvanceSummПриход авансовых средств
IncomeCountPrepaidКоличество чеков прихода аванса
CreditSummПриход кредитных средств
IncomeCountCreditКоличества чеков прихода с постоплатой или в кредит
ExchangeSummСумма чеков с встречным представлением
ExchangeIncomeCountКоличество чеков с встречным представлением
IncomeSummВыручка со всех чеков прихода
ExpenseCashSummРасход наличными
ExpenseCountКоличество чеков расхода
ExpenseCashCountКоличество чеков расхода наличными
ExpenseECashSummРасход безналичными
ExpenseECashCountКоличество чеков расхода безналичными
ExpenseAdvanceSummРасход аванс
ExpenseAdvanceCountКоличество чеков расхода аванс
ExpenseCreditSummРасход кредит
ExpenseCreditCountКоличество чеков расхода в кредит
ExpenseExchangeSummРасход встречным представлением
ExpenseExchangeCountКоличество чеков расхода встречным представлением
ExpenseSummСумма всех чеков расхода
RefundIncomeCashSummВозврат прихода наличными
RefundIncomeCountКоличество чеков возврат прихода
RefundIncomeCashCountКоличество чеков возврат прихода наличными
RefundIncomeECashSummВозврат прихода безналичными
RefundIncomeECashCountКоличество чеков возврата прихода безналичным
RefundIncomeAdvanceSummВозврат прихода аванс
RefundIncomeAdvanceCountКоличество чеков прихода аванс
RefundIncomeCreditSummВозврат прихода постоплатных или кредитных средств
RefundIncomeCreditCountКоличество чеков прихода постоплатных или кредитных средств
RefundIncomeExchangeSummВозврат прихода встречного представления
RefundIncomeExchangeCountКоличество чеков возврата прихода встречного представления
RefundIncomeSummИтого возврат прихода
RefundExpenseCashSummВозврат расхода наличными
RefundExpenseCountКоличество чеков возврата расхода
RefundExpenseCashCountКоличество чеков возврата расхода наличными
RefundExpenseECashSumm0Возврат расхода безналичными
RefundExpenseECashCountКоличество чеков возврата расхода безналичными
RefundExpenseAdvanceSummВозврат расхода аванса
RefundExpenseAdvanceCountКоличество чеков возврата расхода аванс
RefundExpenseCreditSummВозврат расхода кредит
RefundExpenseCreditCountКоличество чеков возврата расхода кредит
RefundExpenseExchangeSummВозврат расхода встречных представлений
RefundExpenseExchangeCountКоличество чеков возврата расхода встречных представлений
RefundExpenseSummИтого возврат расхода
CorrIncomeCashSummКоррекция прихода наличными
CorrCountКоличество чеков коррекции
CorrIncomeCountКоличество чеков коррекции прихода
CorrIncomeCashCountКоличество чеков коррекции прихода наличными
CorrIncomeECashSummКоррекция прихода безналичными
CorrIncomeECashCountКоличество чеков коррекции прихода безналичными
CorrIncomeAdvanceSummКоррекция прихода аванс
CorrIncomeAdvanceCountКоличество чеков коррекции прихода аванс
CorrIncomeCreditSummКоррекция прихода кредит
CorrIncomeCreditCountКоличество чеков коррекции прихода кредит
CorrIncomeExchangeSummКоррекция прихода встречного представления
CorrIncomeExchangeCountКоличество чеков прихода встречного представления
CorrExpenseCashSummКоррекция расхода наличными
CorrExpenseCountКоличество чеков коррекции расхода
CorrExpenseCashCountКоличество чеков коррекции расхода наличными
CorrExpenseECashSummКоррекция расхода безналичными
CorrExpenseECashCountКоличество чеков коррекции расхода безналичными
CorrExpenseAdvanceSummКоррекция расхода аванс
CorrExpenseAdvanceCountКоличество чеков коррекции расхода аванс
CorrExpenseCreditSummКоррекция расхода кредит
CorrExpenseCreditCountКоличество чеков коррекции расхода кредит
CorrExpenseExchangeSummКоррекция расхода встречного представления
CorrExpenseExchangeCountКоличество чеков коррекции расхода встречного представления
CorrPlusУвеличение суммы коррекции
CorrMinusУменьшение суммы коррекции
Tag1104Сумма без НДС
Tag1105Сумма НДС 0%
Tax10SummНДС 10%
Tax18SummНДС 18%
Tax20Summ НДС 20%
Tax110SummСумма, указанная в кассовом чеке, по расчетной ставке НДС 10/110%.
Tax118SummСумма, указанная в кассовом чеке, по расчетной ставке НДС 18/118%.
Tax120SummСумма, указанная в кассовом чеке, по расчетной ставке НДС 20/120%.
TaxTotalSummСумма НДС (Всего НДС)

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

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

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

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


GET https://ofd.ru/api/integration/v2/reports/custom?id={id}&AuthToken={Code}

Пример успешного ответа на запрос (с кодом HTTP равным 200) является генерация структуры данных в JSON:


{
    "Data": {
        "Id": "0000ebf0-d69a-46bd-bc1d-955f649e0cf6",
        "CDateUtc": "2024-11-05T13:16:01",
        "UDateUtc": "2024-11-05T13:16:01",
        "Name": "V15",
        "Fields": [
            "Tax120Summ",
            "TaxTotalSumm"
        ],
        "BaseReportType": "ReceiptReport",
        "IsRentaReport": false
    },
    "Success": true
}

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

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

ИдентификаторФормат поляНазначение
IdString в формате UUIDИдентификатор шаблона
CDateUtcString в формате ISO (UTC +3)Дата и время создания шаблона
UDateUtcString в формате ISO (UTC +3)Дата и время последнего изменения шаблона
NameStringНазвание шаблона пользовательского отчета
FieldsArrayИдентификаторы полей, выбранных пользователем. Значения описаны в таблице 28.
BaseReportTypeStringТип отчета, на основе которого построен шаблон
IsRentaReportBooleanПроверка, отчет сервиса Renta это или нет

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

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

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

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

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

POST https://ofd.ru/api/integration/v2/reports/custom/create&AuthToken={Code}

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

{ 
"CustomReportId": null,
 "Name": "Сверка",
 "DateFrom": "2024-10-01T00:00:00.000+03:00",
 "DateTo": "2024-10-02T23:59:59.000+03:00",
 "EmailsToNotify": "fomenkov@ofd.ru",
 "FfdType": 0,
 "GroupsList": [],
 "Fields": [
     "KktSerialNumber",
     "KKTRegNumber",
     "FNSerialNumber",
     "PlaceAddress"
 ],
 "KktList": [],
 "ReportType": "ReceiptReport",
 "SelectAllKkts": true,
 "UseXlsxFile": true
}

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

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

ИдентификаторФормат поляНазначение
CustonReportIdString в формате UUIDИдентификатор пользовательского шаблона (задается, если запрошен отчет на основе пользовательского шаблона)
NameStringНазвание отчета
DateFromString в формате ISOНачальная дата периода генерации отчета
DateToString в формате ISOКонечная дата периода генерации отчета
EmailsToNotifyStringПризнак «Оповестить об окончании генерации отчета по почте». В параметре вы можете перечислить адреса электронной почты для уведомления о генерации отчета. Адреса электронной почты указываются через символ «;»
FfdTypeIntegerТип ФФД, указывается 1.05, 1.1 или 1.2. В зависимости от вашего ФФД
GroupsListArrayСписок папок с записями ККТ, по которым генерируется отчет (учитывается содержимое всех вложенных папок)
FieldsArrayИдентификаторы полей, выбранных пользователем. Значения описаны в таблице 28
KktListArrayСписок касс, по которым генерируется отчет
ReportTypeStringТип отчета, (если не задан CustomReportId), см. п. 8.1.1.
SelectAllKktsBooleanПризнак выбора для генерации отчета всех ККТ текущего ЛКК
UseXlsxFileBooleanПризнак «Использовать для отчета файл типа XSLX»

Пример успешного ответа на запрос (с кодом HTTP равным 200) является генерация структуры данных в JSON: {


  "Data": {
      "Id": "0da84772-01a3-4444-b9e8-f1dd3428d14a",
      "CDateUtc": "2024-11-05T12:29:17",
      "UDateUtc": "2024-11-05T12:29:17",
      "Name": "Сверка",
      "Fields": [
          "KktSerialNumber",
          "KKTRegNumber",
          "FNSerialNumber",
          "PlaceAddress"
      ],
      "BaseReportType": "Undefined",
      "IsRentaReport": false
  },
  "Success": true

}

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

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

ИдентификаторФормат поляНазначение
IdString в формате UUIDИдентификатор отчета
CDateUtcString в формате ISO (UTC +3)Дата и время создания шаблона
UDateUtcString в формате ISO (UTC +3)Дата и время последнего изменения шаблона
NameStringНазвание шаблона пользовательского отчета
FieldsArrayИдентификаторы полей, выбранных пользователем. Значения описаны в таблице 28
BaseReportTypeStringТип отчета, на основе которого построен шаблон
IsRentaReportBooleanПроверка, отчет сервиса Renta это или нет

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

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

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

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

PUT https://ofd.ru/api/integration/v2/reports/custom/edit?Id={id}&AuthToken={Code}

Code – действующий код авторизации, полученный при авторизации. Параметры запроса передаются списком в формате запросов команды PUT. Параметры запроса приведены в таблице 32.

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

{
   "id": "3760ebf0-d69a-46bd-bc1d-955f649e0cf6",
   "Name": "V15",
   "Fields": [
            "Tax120Summ",
            "TaxTotalSumm"
        ]
}

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

ПараметрТип данныхОписание
IdString в формате UUIDИдентификатор отчета
NameStringНазвание шаблона пользовательского отчета
FieldsArrayИдентификаторы полей, выбранных пользователем. Значения описаны в таблице 28

Пример успешного ответа на запрос (с кодом HTTP равным 200) является генерация структуры данных в JSON:


{
    "Data": {
        "Id": "3760ebf0-d69a-46bd-bc1d-955f649e0cf6",
        "CDateUtc": "2024-11-05T13:16:01",
        "UDateUtc": "2024-11-05T13:26:19",
        "Name": "V15",
        "Fields": [
            "Tax120Summ",
            "TaxTotalSumm",
        ],
        "BaseReportType": "ReceiptReport",
        "IsRentaReport": false
    },
    "Success": true
}

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

Таблица 33. Описание параметров ответа запроса на сохранение шаблона отчета по идентификатору.

ИдентификаторФормат поляНазначение
IdString в формате UUIDИдентификатор отчета
CDateUtcString в формате ISO (UTC +3)Дата и время создания шаблона
UDateUtcString в формате ISO (UTC +3)Дата и время последнего изменения шаблона
NameStringНазвание шаблона пользовательского отчета
FieldsArrayИдентификаторы полей, выбранных пользователем. Значения описаны в таблице 28
BaseReportTypeStringТип отчета, на основе которого построен шаблон
IsRentaReportBooleanПроверка, отчет сервиса Renta это или нет

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

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

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

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

DELETE https://ofd.ru/api/integration/v2/reports/custom/delete?{id}&AuthToken={Code}

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

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

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

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

Версия 1.0

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

Версия 1.1

Выпущена 14.11.2024
Обновлены методы и их описание с пункта 7.1 по 10.5.1. Добавлен пункт «10.1.1 Описание полей параметра Fields».

Версия 1.2

Выпущена 26.11.2024
Добавлен пункт «2.10. Запрос на получение TLV чека».

Версия 1.21

Выпущена 10.12.2024
В пункте 7.1.1 Создана таблица и обновлены группы отчетов.