Отчет по чекам

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

  1. Формат запроса
  2. Формат ответа
  3. Коды ответа
  4. Пример запроса

Формат запроса

POST https://api.ofd.yandex.net/{v1}/docs/aggregations/receipts
Path-параметры
v1Номер версии API ОФД.

Заголовок запроса

Заголовки запроса должны содержать ключи (см. раздел Доступ к API):

Заголовок Значение
X-Yandex-Key <аутентификационный ключ>
X-OFD-Key <авторизационный ключ>
Content-Type application/json

Тело запроса

{
    "date_from": "{string}",
    "date_to": "{string}",
    "limit": {integer},
    "offset": {integer},
    "company_ids": ["{string}"],
    "retail_point_ids": ["{string}"],
    "cashbox_ids": ["{string}"],
    "document_types": ["{string}"],
    "operation_types": ["{string}"],
    "taxation_types": ["{string}"],
    "fiscal_sign": {integer},
    "fiscal_doc": {integer},  
    "shifts": {integer},
    "orders": ["{string}"]
}
date_from *

Дата начала отчетного периода (включительно). Формат: YYYY-MM-DD hh:mm:ss. Если время не задано, значение автоматически устанавливается на начало дня: 00:00:00.

date_to *

Дата завершения отчетного периода (включительно). Формат: YYYY-MM-DD hh:mm:ss. Если время не задано, значение автоматически устанавливается на конец дня: 23:59:59.

limit

Максимальное количество объектов, возвращаемое в ответе.

offset

Смещение от начала списка объектов.

company_ids

Список идентификаторов компаний, по ККТ (кассам) которых будет построен отчет.

retail_point_ids

Список идентификаторов точек продаж, по ККТ которых будет построен отчет.

cashbox_ids

Список идентификаторов ККТ, по которым будет построен отчет.

document_types

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

  • fiscalReport — отчет о регистрации;
  • fiscalReportCorrection — отчет об изменении параметров регистрации;
  • openShift — открытие смены;
  • closeShift — закрытие смены;
  • receipt — чек;
  • receiptCorrection — чек коррекции;
  • bso — бланк строгой отчетности (БСО);
  • bsoCorrection — БСО коррекции;
  • currentStateReport — отчет о состоянии расчетов;
  • closeArchive — закрытие ФН.
operation_types

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

  • income — приход;
  • income_return — возврат прихода;
  • outcome — расход;
  • outcome_return — возврат расхода.
taxation_types

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

  • osn — общая (ОСН);
  • usn_income — упрощенная (6% дохода);
  • usn_income_wo_expenditure — упрощенная (доход-расход);
  • esn_agricultural — единый сельскохозяйственный (ЕСХН);
  • psn — патент (ПСН).
fiscal_sign

Фискальный признак документа (int64).

fiscal_doc

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

shifts

Список смен.

orders

Способ сортировки данных в отчете. По умолчанию значения располагаются по возрастанию. Чтобы расположить значения в отчете по убыванию, используйте префикс - (например, date). Можно задать несколько способов сортировки. В этом случае применяться они будут последовательно в том порядке, в котором указаны в запросе.

Возможные способы сортировки:

  • date — по дате и времени пробития чека;
  • shift — по номеру смены;
  • rn — по регистрационному номеру ККТ;
  • fn — по идентификационному номеру ФН;
  • doc_number — по номеру документа;
  • number — по номеру документа в смене;
  • totalSum — по полной сумме чека;
  • cashTotalSum — по сумме оплаты наличными;
  • ecashTotalSum — по сумме безналичной оплаты.

Обязательный параметр

Общий формат ответа приведен ниже. В реальном ответе порядок следования элементов может отличаться, а некоторые элементы могут отсутствовать. Также в ответе могут находиться служебные параметры, которые не описаны в документе.

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

{
    "data": [
        {
            "creditSum": {float},
            "shift": {integer},
            "real_date": "{string}",
            "provisionSum": {float},
            "prepaidSum": {float},
            "totalSum": {float},
            "number": {integer},
            "operation": "{string}",
            "ecashTotalSum": {float},
            "fn": "{string}",
            "doc_number": {integer},
            "cashTotalSum": {float},
            "code_name": "{string}",
            "rn": "{string}",
            "fiscalSign": {integer}
        }
    ],
    "total": {integer}
}
data

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

creditSum

Сумма по чеку с постоплатой (кредит).

shift

Номер смены.

real_date

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

provisionSum

Сумма по чеку с оплатой встречным представлением (другой способ оплаты).

prepaidSum

Сумма по чеку с предоплатой (зачет аванса и или других платежей).

totalSum

Полная сумма по чеку.

number

Номер чека в смене.

operation

Тип операции.

ecashTotalSum

Сумма по чеку с безналичной оплатой.

fn

Идентификационный номер ФН.

doc_number

Номер документа (чека).

cashTotalSum

Сумма по чеку с оплатой наличными.

code_name

Тип чека.

rn

Регистрационный номер ККТ.

fiscalSign

Фискальный признак документа (ФПД).

total

Общее количество чеков в отчете.

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

Метод и адрес:

https://api.ofd.yandex.net/v1/docs/aggregations/receipts
Заголовки:
x-yandex-key: 74f...e8ca
x-ofd-key: eka...b17eae
Content-Type: application/json

Тело:

{
    "date_from": "2018-04-01",
    "date_to": "2019-08-13",
    "company_ids": [
        "301"
    ],
    "limit": 20,
    "offset": 0,
    "orders": [
        "-doc_number"
    ]
}
Пример запроса в формате cURL
curl -X POST \
  https://api.ofd.yandex.net/v1/docs/aggregations/receipts \
  -H 'Content-Type: application/json' \
  -H 'x-ofd-key: eka...b17eae' \
  -H 'x-yandex-key: 74f...e8ca' \
  -d '{
    "date_from": "2018-04-01",
    "date_to": "2019-08-13",
    "company_ids": [
        "301"
    ],
    "limit": 20,
    "offset": 0,
    "orders": [
        "-doc_number"
    ]
}'

Ответ:

{
    "data": [
        {
            "operation": "",
            "doc_number": 66,
            "fn": "2325436457568687",
            "number": 0,
            "creditSum": 0.0,
            "real_date": "2018-07-06 16:13:48",
            "totalSum": 0.0,
            "prepaidSum": 0.0,
            "rn": "0000097587029813",
            "cashTotalSum": 0.0,
            "provisionSum": 0.0,
            "shift": 9,
            "code_name": "открытие смены",
            "ecashTotalSum": 0.0,
            "fiscalSign": 122356789
        },
        {
            "operation": "",
            "doc_number": 65,
            "fn": "2325436457568687",
            "number": 0,
            "creditSum": 0.0,
            "real_date": "2018-07-06 15:35:00",
            "totalSum": 0.0,
            "prepaidSum": 0.0,
            "rn": "0000097587029813",
            "cashTotalSum": 0.0,
            "provisionSum": 0.0,
            "shift": 9,
            "code_name": "закрытие смены",
            "ecashTotalSum": 0.0,
            "fiscalSign": 123456789
        },
        {
            "operation": "приход",
            "doc_number": 64,
            "fn": "2325436457568687",
            "number": 1,
            "creditSum": 0.0,
            "real_date": "2018-07-06 15:33:00",
            "totalSum": 70.0,
            "prepaidSum": 0.0,
            "rn": "0000097587029813",
            "cashTotalSum": 70.0,
            "provisionSum": 0.0,
            "shift": 9,
            "code_name": "чек",
            "ecashTotalSum": 0.0,
            "fiscalSign": 120756789
        },
        {
            "operation": "",
            "doc_number": 18,
            "fn": "3646446464646464",
            "number": 0,
            "creditSum": 0.0,
            "real_date": "2018-06-15 09:30:00",
            "totalSum": 0.0,
            "prepaidSum": 0.0,
            "rn": "4354364364364646",
            "cashTotalSum": 0.0,
            "provisionSum": 0.0,
            "shift": 0,
            "code_name": "отчет об изменении параметров регистрации",
            "ecashTotalSum": 0.0,
            "fiscalSign": 123456789
        }        
    ],
    "total": 4
}