API для сверки с оператором фискальных данных OFD.RU

Версия 1.1 от 30.12.2016

Доступные функции

  • Список ККТ, зарегистрированных на юр. лицо
  • Список z-отчётов (смен) по ККТ за период
  • Список z-отчётов (смен) по всем ККТ за период
  • Список чеков за период по ККТ
  • Подробная информация по чеку.

Общая информация

Взаимодействие клиента и API производится путем отправки клиентом HTTP-запросов к серверу.Запросы выполняются методом GET , параметры запроса передаются в URL. Сервер выдает ответ в формате JSON. Кодировка запросов и ответов – UTF-8.

Формат ответов

Базовый формат ответа, если запрос завершился успешно:

В объекте Data передается дополнительная информация в контексте запроса.Свойство Status принимает значение "Success". HTTP-код ответа 200.

Базовый формат ответа, если запрос завершился неуспешно:

В массиве Errors представлен список ошибок, свойство Status принимает значение"Failed". HTTP-код ответа отличен 200 и зависит от конкретной ошибки.

GET   api/integration/v1/inn/<inn>/kkts

Список зарегистрированных ККТ

inn ИНН организации 123123

Возвращает массив регистрационных номеров ККТ:

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

  • InnNotFound — для данного аккаунта организация не найдена

GET   api/integration/v1/inn/<inn>/kkt/<kktRegId>/zreports?dateFrom=<dateFrom>&dateTo=<dateTo>

Список z-отчётов (смен) по ККТ за период

Период не должен превышать 30 дней

inn ИНН организации 123123
kktRegId регистрационный номер кассы 235235232235235
dateFrom с даты 2016-10-22T12:22:45
dateTo по дату 2016-10-25T12:22:45

Возвращает массив смен:

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

  • InnNotFound — для данного аккаунта организация не найдена
  • KktNotFound — для данного аккаунта касса не найдена
  • InvalidTimeInterval — неверно указан временной интервал
  • TimeIntervalMustNotExceed30Days — указан временной интервал более 30 дней

GET   api/integration/v1/inn/<inn>/zreports?dateFrom=<dateFrom>&dateTo=<dateTo>

Список z-отчётов (смен) по ККТ за период

Период не должен превышать 30 дней

inn ИНН организации 123123
dateFrom с даты 2016-10-22T12:22:45
dateTo по дату 2016-10-25T12:22:45

Формат ответа аналогичен предыдущему методу

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

  • InnNotFound — для данного аккаунта организация не найдена
  • InvalidTimeInterval — неверно указан временной интервал
  • TimeIntervalMustNotExceed30Days — указан временной интервал более 30 дней

GET   api/integration/v1/inn/<inn>/kkt/<kktRegId>/receipts?dateFrom=<dateFrom>&dateTo=<dateTo>

Список чеков за период по ККТ

Период не должен превышать 7 дней

inn ИНН организации 123123
kktRegId регистрационный номер кассы 235235232235235
dateFrom с даты 2016-10-22T12:22:45
dateTo по дату 2016-10-25T12:22:45

Возвращает массив чеков:

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

  • InnNotFound — для данного аккаунта организация не найдена
  • KktNotFound — для данного аккаунта касса не найдена
  • InvalidTimeInterval — неверно указан временной интервал
  • TimeIntervalMustNotExceed7Days — указан временной интервал более 7 дней

GET   api/integration/v1/inn/<inn>/kkt/<kktRegId>/receipt/<RawId>

GET   api/integration/v1/inn/<inn>/kkt/<kktRegId>/zreport/<ShiftNumber>/receipt/<DocShiftNumber>

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

inn ИНН организации 123123
kktRegId регистрационный номер кассы 235235232235235
RawId Уникальный номер фискального документа 2016-10-22T12:22:45
ShiftNumber Порядковый номер смены 22
DocShiftNumber номер документа в смене 4

Возвращает данные по чеку:

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

  • InnNotFound — для данного аккаунта организация не найдена
  • KktNotFound — для данного аккаунта касса не найдена
  • — DocumentNotFound документ (чек) не найден

Формирование прямой ссылки на электронный чек

Общий вид:

  • {Домен}/rec/{inn}/{kktregnumber}/{fnnumber}/{docnumber}/{decsign}

Детально

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

API для сверки с оператором фискальных данных OFD.RU

Версия 1.2 от 24.01.2017

Общая информация

Взаимодействие клиента и API производится путем отправки клиентом HTTP-запросов к серверу. Запросы выполняются методом GET, параметры запроса передаются в URL. Сервер выдает ответ в формате JSON. Кодировка запросов и ответов – UTF-8.

Формат ответов

Базовый формат ответа, если запрос завершился успешно:

В объекте Data передается дополнительная информация в контексте запроса. Свойство Status принимает значение "Success". HTTP-код ответа 200.

Базовый формат ответа, если запрос завершился неуспешно:

В массиве Errors представлен список ошибок, свойство Status принимает значение "Failed". HTTP-код ответа отличен 200 и зависит от конкретной ошибки.

Авторизация через AuthToken

POST /api/Authorization/CreateAuthToken

login логин для доступа 12345
password пароль для доступа 56789

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

в формате Json

--- BEGIN ---
POST http://ofd.ru/api/Authorization/CreateAuthToken HTTP/1.1
Content-Length: 38
Content-Type: application/json; charset=utf-8
{"Login": "12345","Password": "56789"}
--- END ---

в формате UrlEncoded

--- BEGIN ---
POST http://ofd.ru/api/Authorization/CreateAuthToken HTTP/1.1
Content-Length: 26
Content-Type: application/x-www-form-urlencoded; charset=utf-8
Login=12345&Password=56789
--- END ---

Возвращает

В случае успешной авторизации вернет код 200 и токен авторизации

В случае проблем с авторизацией вернёт код 403 и пустой ответ — { }

Правила использования токена авторизации

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

Пример использования токена авторизации

GET api/integration/v1/inn/<inn>/kkts?AuthToken=123

Список зарегистрированных ККТ

GET api/integration/v1/inn/<inn>/kkts

inn ИНН организации 123123

Возвращает массив с данными ККТ:

  • Регистрационный номер ккт,
  • Заводской номер ккт,
  • Номер ФН,
  • Дата внесения на сайт,
  • Дата оплаты,
  • Дата уведомления ФНС о заключ. контракте,
  • Дата успешной проверки регномера в ФНС,
  • Дата готовности к приёму чеков,
  • Дата подписания КЭП,
  • Дата первого принятого док-а,
  • Дата начала действия контракта,
  • Дата окончания действия контракта.

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

  • InnNotFound — для данного аккаунта организация не найдена

Список z-отчётов (смен) по ККТ за период

GET api/integration/v1/inn/<inn>/kkt/<kktRegId>/zreports?dateFrom=<dateFrom>&dateTo=<dateTo>

Период не должен превышать 30 дней

inn ИНН организации 123123
kktRegId регистрационный номер кассы 235235232235235
dateFrom с даты 2016-10-22T12:22:45
dateTo по дату 2016-10-25T12:22:45

Возвращает массив смен

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

  • InnNotFound — для данного аккаунта организация не найдена
  • KktNotFound — для данного аккаунта касса не найдена
  • InvalidTimeInterval — неверно указан временной интервал
  • TimeIntervalMustNotExceed30Days — указан временной интервал более 30 дней

Список z-отчётов (смен) по всем ККТ за период

GET api/integration/v1/inn/<inn>/zreports?dateFrom=<dateFrom>&dateTo=<dateTo>

Период не должен превышать 30 дней

inn ИНН организации 123123
dateFrom с даты 2016-10-22T12:22:45
dateTo по дату 2016-10-25T12:22:45

Формат ответа аналогичен предыдущему методу

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

  • InnNotFound — для данного аккаунта организация не найдена
  • InvalidTimeInterval — неверно указан временной интервал
  • TimeIntervalMustNotExceed30Days — указан временной интервал более 30 дней

Список чеков за период по ККТ

GET api/integration/v1/inn/<inn>/kkt/<kktRegId>/receipts?dateFrom=<dateFrom>&dateTo=<dateTo>

Период не должен превышать 7 дней

inn ИНН организации 123123
kktRegId регистрационный номер кассы 235235232235235
dateFrom с даты 2016-10-22T12:22:45
dateTo по дату 2016-10-25T12:22:45

Возвращает массив чеков

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

  • InnNotFound — для данного аккаунта организация не найдена
  • KktNotFound — для данного аккаунта касса не найдена
  • InvalidTimeInterval — неверно указан временной интервал
  • TimeIntervalMustNotExceed7Days — указан временной интервал более 7 дней

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

GET api/integration/v1/inn/<inn>/kkt/<kktRegId>/receipt/<RawId>
GET api/integration/v1/inn/<inn>/kkt/<kktRegId>/zreport/<ShiftNumber>/receipt/<DocShiftNumber>

inn ИНН организации 123123
kktRegId регистрационный номер кассы 235235232235235
RawId Уникальный номер фискального документа GUID
ShiftNumber Порядковый номер смены 22
DocShiftNumber номер документа в смене 4

Возвращает данные по чеку

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

  • InnNotFound — для данного аккаунта организация не найдена
  • KktNotFound — для данного аккаунта касса не найдена
  • DocumentNotFound — документ (чек) не найден

Формирование прямой ссылки на электронный чек

Общий вид:

  • {Домен}/rec/{inn}/{kktregnumber}/{fnnumber}/{docnumber}/{decsign}

Детально

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

Программный интерфейс приложений (API) для сверки документов с оператором фискальных данных OFD.RU

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

Введение

Описывается программный интерфейс приложений (API) предоставляющий возможность сторонним (клиентским) приложениям использовать данные фискальных документов из информационной системы (ИС) “OFD.RU” для сверки. Взаимодействие клиентского приложения и API производится путем отправки приложением HTTP-запросов к серверу и получением ответов на них. Для отправки запросов и получения ответов используется протокол HTTPS.

1. Основные сведения о запросе и ответе

Кодировка, используемая в запросах и ответах – UTF-8. Запросы выполняются методом GET , параметры запроса передаются в URL.

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

Здесь ключу "Data" соответствует структура, в которой вместо ключей "Prop1", "Prop2", ... "PropN" и значений "Val1", "Val2", ... "ValN" располагаются ключи передаваемых параметров с их значениями (см. описания параметров ниже; значениями параметров могут являться массивы и структуры); параметр "Status" – состояние обработки запроса, в данном случае имеет значение "Success" (запрос обработан успешно). Параметр "Elapsed" – время, затраченное системой на обработку запроса: от получения запроса системой до выдачи ответа. Формат времени – строка вида "чч:мм:сс.ддддддд", в которой
чч – часы,
мм – минуты,
сс – секунды,
ддддддд – доли секунды.

В случае неуспешности ответа (код ответа по протоколу HTTP не равен 200) данные имеют следующий обобщенный вид:

Здесь ключу "Errors" соответствует одномерный массив, в котором присутствуют строки с сообщениями об ошибках, возникших при обработке данных. На месте строк "Ошибка 1", "Ошибка 2", ... "Ошибка N" перечислены сообщения об ошибках, возникших при обработке переданных данных. Параметр "Status" в данном случае имеет значение "Failed"(обработка запроса не удалась). Параметр "Elapsed" – так же, как и в случае успешного ответа, время, затраченное системой на обработку запроса; формат представления времени тот же.

2. Авторизация через AuthToken

Возможность множественных обращений к ИС “OFD.RU” после одной авторизации без использования механизма Cookies реализуется с помощью механизма AuthToken: после авторизации с передачей имени и пароля система возвращает код авторизации – строку символов, которая используется, как параметр авторизации при обращении к соответствующему личному кабинету (ЛК). HTTP-запрос авторизации, передающий имя пользователя и пароль в формате JSON выглядит следующим образом:

--- BEGIN ---
POST https://ofd.ru/api/Authorization/CreateAuthToken HTTP/1.1
Content-Length: 38
Content-Type: application/json; charset=utf-8
{"Login": "12345","Password": "56789"}
--- END ---

В данном запросе присутствуют примеры значений: передаваемое имя пользователя – "12345" и пароль – "56789"; они задаются как значения в JSON-структуре внутри запроса с ключами "Login" и "Password" соответственно. Другой формат запроса, обрабатываемый ИС “OFD.RU”: HTTP-запрос авторизации в формате URLEncoded:

--- BEGIN ---
POST https://ofd.ru/api/Authorization/CreateAuthToken HTTP/1.1
Content-Length: 26
Content-Type: application/x-www-form-urlencoded; charset=utf-8
Login=12345&Password=56789
--- END ---

В ответ на данный запрос будет получен ответ по протоколу HTTP, который в случае успешной авторизации будет иметь код равный 200 и содержать структуру, подобную следующей (с примерами значений):

Здесь с ключом "AuthToken" – код авторизации: строка символов AuthToken, представляет собой 32-значную последовательность шестнадцатеричных цифр, используемую для повторной аутентификации, а ключ "ExpirationDateUtc" – строка, описывающая момент времени (дату и время в формате UTC), до которого будет действовать данный код авторизации.

Момент времени задается в формате "ГГГГ-ММ-ДДTчч:мм:сс" ; здесь
ГГГГ – год даты, 4 цифры,
ММ – месяц даты, 2 цифры,
ДД – день даты 2 цифры,
T – заглавная латинская буква “T”, используется как разделитель даты и времени,
чч – часы, 2 цифры,
мм – минуты, 2 цифры,
сс – секунды, 2 цифры.

В случае проблем с авторизацией (код ответа по протоколу HTTP будет равен 403) данные будут отсутствовать, JSON-структура будет пустой (будет иметь вид «{ }»). Полученный код авторизации используется в виде дополнительного параметра в запросах документов для сверки, где необходима авторизация . Пример запроса с использованием кода авторизации:

GET api/integration/v1/inn/INN1/kkts?AuthToken=Code1

здесь INN1 – идентификационный номер налогоплательщика (ИНН) юридического лица о котором производится запрос; строка из 10 цифр от 0 до 9; Code1 – действующий код авторизации, полученный в результате запроса авторизации.

3. Виды запросов ИС “OFD.RU”

3.1. Запрос списка зарегистрированной KKT

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

GET api/integration/v1/inn/INN1/kkts

Здесь INN1 – идентификационный номер налогоплательщика (ИНН) юридического лица о котором производится запрос – строка из 10 цифр от 0 до 9.

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

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

Таблица 1. Поля данных записи с информацией о ККТ

Идентификатор Формат поля Назначение
KktRegId Строка Регистрационный номер ККТ (кассы)
SerialNumber Строка Заводской (серийный) номер ККТ (кассы)
FnNumber Строка Номер фискального накопителя
CreateDate Дата и время в формате ISO Дата регистрации кассы на сайте
PaymentDate Дата и время в формате ISO Дата оплаты услуг ИС “OFD.RU”
SignDate Дата и время в формате ISO Дата подписания КЭП (квалификационной электронной подписью)
ActivationDate Дата и время в формате ISO Дата успешной проверки регистрационного номера в ФНС
ContractStartDate Дата и время в формате ISO Дата начала действия контракта на получение услуг ИС “OFD.RU”
ContractEndDate Дата и время в формате ISO Дата окончания действия контракта на получение услуг ИС “OFD.RU”
LastDocOnKktDateTime Дата и время в формате ISO Дата и время последнего документа, сгенерированного кассой (по локальному времени кассы)
LastDocOnOfdDateTimeUtc Дата и время в формате ISO Дата и время получения последнего документа кассы в ОФД (по времени ИС “OFD.RU” в UTC)

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

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

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

Запрос на получение списка отчетов по смене (z-отчетов) по заданной кассе за заданный период имеет вид:

GET api/integration/v1/inn/INN/kkt/KKT/zreports?dateFrom=Date1&dateTo=Date2

Здесь INN – ИНН юридического лица, на которого зарегистрирована касса, по данным которой генерируется отчет – строка из 10 цифр от 0 до 9; KKT – заводской (серийный) номер кассы – строка символов; Date1 и Date2 – начальная и конечная даты периода, для которого требуется сгенерировать отчет по открытым и закрытым сменам для заданной кассы – строка символов, содержащая дату и время в формате ISO. Разность Date2 и Date1 не должна превышать 30 дней. Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON следующего вида (вид значений показан на примерах, многоточие означает многократно повторяющуюся структуру такого же вида):

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

Таблица 2. Поля данных записи с информацией о ККТ

Идентификатор Формат поля Назначение
Id Строка в формате UUID Идентификатор смены
Open_DocRawId Строка в формате UUID Идентификатор документа отчета об открытии смены, полученного от кассы
Close_DocRawId Строка в формате UUID Идентификатор документа отчета об закрытии смены, полученного от кассы
Open_CDateUtc Дата и время в формате ISO Дата и время первого принятия в ИС от кассы документа отчета об открытии смены
Close_CDateUtc Дата и время в формате ISO Дата и время первого принятия в ИС от кассы документа отчета о закрытии смены
UserInn Строка, 10 или 12 цифр ИНН владельца кассы
KktRegNumber Строка Регистрационный номер кассы
FnNumber Строка Номер фискального накопителя, установленного в кассу
ShiftNumber Целое число Номер смены по данным кассы
Operator Строка Фамилия, имя, отчество оператора
Open_DocNumber Целое число Фискальный номер документа отчета об открытии смены, присвоенный кассой (уникальный в рамках текущего фискального режима)
Open_DocDateTime Дата и время в формате ISO Дата и время формирования отчета об открытии смены по данным кассы
Close_DocNumber Целое число Номер документа отчета о закрытии смены, присвоенный кассой (уникальный в рамках текущего фискального режима)
Close_DocDateTime Дата и время в формате ISO Дата и время формирования отчета о закрытии смены по данным кассы
IncomeSumm Целое число Сумма полученных денежных средств за смену в копейках
IncomeCount Целое число Количество чеков, выданных за смену, соответствующих получению суммы IncomeSumm
RefundIncomeSumm Целое число Сумма выданных (возвращённых) денежных средств за смену в копейках
RefundIncomeCount Целое число Количество чеков, выданных за смену, соответствующих возврату суммы RefundIncomeSumm
TaxTotalSumm Целое число Общая сумма удерживаемых налогов, начисленная за смену в копейках
Tax10Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10 %, начисленная за смену в копейках
Tax18Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 18 %, начисленная за смену в копейках
Tax110Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10/110, начисленная за смену, в копейках
Tax118Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 18/118, начисленная за смену, в копейках
TaxNaSumm Целое число Сумма по операциям, не облагаемая НДС, накопленная за смену, в копейках
Tax0Summ Целое число Сумма по операциям, облагаемая НДС по ставке 0%, накопленная за смену, в копейках

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

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

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

Запрос на получение списка отчетов по смене (z-отчетов) для всей ККТ, зарегистрированной на определенного владельца, за заданный период имеет вид:

GET api/integration/v1/inn/INN/zreports?dateFrom=Date1&dateTo=Date2

Здесь INN – ИНН юридического лица, на которого зарегистрирована касса, по данным которой генерируется отчет – строка из 10 или 12 цифр от 0 до 9; Date1 и Date2 – начальная и конечная даты периода, для которого требуется сгенерировать отчет по открытым и закрытым сменам для заданной кассы – строка символов, содержащая дату и время в формате ISO. Разность Date2 и Date1 не должна превышать 30 дней. Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных вида, аналогичного структуре, выдаваемой ИС по запросу списка отчетов по смене для заданной кассы за заданный период.

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

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

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

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

GET api/integration/v1/inn/INN/kkt/KKT/receipts?dateFrom=Date1&dateTo=Date2

Здесь INN – ИНН юридического лица, на которого зарегистрирована касса, по данным которой генерируется отчет – строка из 10 цифр от 0 до 9; KKT – заводской (серийный) номер кассы – строка символов; Date1 и Date2 – начальная и конечная даты периода, для которого требуется сгенерировать отчет по открытым и закрытым сменам для заданной кассы – строка символов, содержащая дату и время в формате ISO. Разность Date2 и Date1 не должна превышать 7 дней. Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON следующего вида (вид значений показан на примерах, многоточие означает многократно повторяющуюся структуру такого же вида):

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

Таблица 2. Поля данных записи с информацией о ККТ

Идентификатор Формат поля Назначение
Id Строка в формате UUID уникальный номер фискального документа в ИС, используется в запросе подробной информации по чеку, как RawId
IsCorrection Логическая переменная Имеет значение true, если чек или бланк строгой отчетности (БСО) является документом коррекции, иначе – false
CDateUtc Дата и время в формате ISO Дата и время приема документа в ИС
Tag Целое число Численный признак вида документа:
3 – чек,
31 – чек коррекции,
4 – бланк строгой отчетности,
41 – бланк строгой отчетности коррекции
IsBso Логическая переменная Имеет значение true, если документ является БСО, иначе (если документ является чеком) – false
OperationType Строка Тип операции:
"Income" – приход,
"Expense" – расход,
"Refund income" – возврат прихода,
"Refund expense" – возврат расхода.
KktRegNumber Строка Регистрационный номер кассы
FnNumber Строка Номер фискального накопителя, установленного в кассу
DocNumber Целое число Фискальный номер документа
DocDateTime Дата и время в формате ISO Дата и время формирования документа по данным кассы
DocRawId Строка в формате UUID уникальный номер фискального документа в ИС, (используется в запросе подробной информации по чеку, как RawId, дублирует поле Id)
DocShiftNumber Целое число уникальный номер фискального документа в ИС, (используется в запросе подробной информации по чеку, как RawId, дублирует поле Id)
ReceiptNumber Целое число Номер документа в смене (по данным кассы)
TotalSumm Целое число Общая сумма по чеку в копейках
CashSumm Целое число Сумма наличными по чеку в копейках
ECashSumm Целое число Безналичная сумма, доступная на платежной карте
CreditSumm Целое число Сумма долга (постоплаты)
PrepaidSumm Целое число Предоплаченная сумма
ProvisionSumm Целое число Сумма встречных предоставлений
TaxTotalSumm Целое число Общая сумма удерживаемых налогов, начисленная за смену в копейках
Tax10Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10 %, начисленная за смену в копейках
Tax18Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 18 %, начисленная за смену в копейках
Tax110Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке 10/110, начисленная за смену, в копейках
Tax118Summ Целое число Сумма удерживаемого налога на добавленную стоимость (НДС) по ставке в 18/118, начисленная за смену, в копейках
TaxNaSumm Целое число Сумма по операциям, не облагаемая НДС, накопленная за смену, в копейках
Tax0Summ Целое число Сумма по операциям, облагаемая НДС по ставке 0%, накопленная за смену, в копейках
Depth Целое число Количество товарных позиций в чеке

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

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

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

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

GET api/integration/v1/inn/INN/kkt/KKT/receipts?ShiftNumber=Shift1&FnNumber=Fn1

Здесь INN – ИНН юридического лица, на которого зарегистрирована касса, по данным которой генерируется отчет – строка из 10 цифр от 0 до 9; KKT – заводской (серийный) номер кассы – строка символов; Shift1 – номер смены, по которой требуется сгенерировать отчет и Fn1 – номер фискального накопителя, установленного в кассу. Успешным ответом на запрос (с кодом HTTP равным 200) является структура данных JSON, аналогичная структуре, приведенной в п. 3.4. Описание полей структуры см. в Таблице 3, описание ошибок, см. в п. 3.4.

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

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

GET api/integration/v1/inn/INN/kkt/KKT/receipt/RawId
GET api/integration/v1/inn/INN/kkt/KKT/zreport/ShiftNumber/receipt/DocShiftNumber

здесь INN – ИНН юридического лица, на которого зарегистрирована касса, по данным которой генерируется отчет – строка из 10 цифр от 0 до 9; KKT – заводской (серийный) номер кассы – строка символов; RawId – уникальный номер фискального документа в ИС “OFD.RU” (строка в формате UUID); ShiftNumber – номер смены, в течение которой был сгенерирован документ, DocShiftNumber – номер документа внутри смены

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

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

Таблица 4. Поля данных записи с подробной информацией о чеке

Идентификатор Формат поля Назначение
Tag Целое число Численный признак вида документа:
3 – чек,
31 – чек коррекции,
4 – бланк строгой отчетности,
41 – бланк строгой отчетности коррекции
User Строка Полное имя или название владельца кассы
UserInn Строка, 10 или 12 цифр ИНН владельца кассы
Number Целое число Номер документа внутри смены
DateTime Дата и время в формате ISO Дата и время формирования документа (чека)
ShiftNumber Целое число Номер смены (по данным кассы), в которую был сформирован документ
OperationType Строка Тип операции:
"Income" – приход,
"Expense" – расход,
"Refund income" – возврат прихода,
"Refund expense" – возврат расхода.
TaxationType Целое число Тип налогообложения
Operator Строка Фамилия, имя, отчество оператора
KKT_RegNumber Строка Регистрационный номера кассы
FN_FactoryNumber Строка Номер фискального накопителя, установленного в кассу
Items Массив структур Список товарных позиций в чеке
Name Строка Название товарной позиции в чеке
Price Целое число Цена в копейках за единицу измерения товарной позиции
Quantity Целое число Количество единиц товарной позиции
Nds00_TotalSumm Целое число Общая сумма НДС в копейках
Total Целое число Стоимость товарной позиции в копейках
Buyer_Address Строка Адрес покупателя (используется службами доставки)
Nds00_TotalSumm Целое число Общая сумма НДС по чеку в копейках
Amount_Total Целое число Общая сумма по чеку в копейках
Amount_Cash Целое число Сумма наличными по чеку в копейках
Amount_ECash Целое число Сумма, оплаченная картой, в копейках
Document_Number Целое число Фискальный номер документа
FiscalSign Строка Фискальный признак документа
ExtraProperty Массив структур Список дополнительных свойств че
ExtraProperty_Name Строка Название (идентификатор) свойства
ExtraProperty_Value Строка Значение свойства

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

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

4. Прямая ссылка на электронный чек

Общий вид:

  • {Домен}/rec/{inn}/{kktregnumber}/{fnnumber}/{docnumber}/{decsign}

Ниже, в таблице 5 приведен список параметров.

Таблица 5. Параметры ссылки на электронный чек

параметр Тэг из документа «Приложении 2 к приказу ФНС России от 21 марта 2017 г. № ММВ-7-20/229@» («Формат фискальных Документов») Описание
inn 1018 ИНН Владельца кассы на которого она зарегистрирована
kktregnumber 1037 Регистрационный номер ККТ
fnnumber 1041 Номер фискального накопителя
docnumber 1040 Номер фискального документа
decsign 1077 Фискальный признак документа

Описание API для продукта «Касса в аренду для интернет-магазинов

Для того, чтобы заказы из информационной системы интернет-магазина попадали в кассу для интернет-магазинов, необходимо настроить информационную систему согласно инструкции

Разделы

Версии

  • Версия 1.1
  • Версия 1.2
  • Версия 1.3 (Latest)