cashboxes/statistics/by-shifts¶
Метод возвращает по кассе и периоду информацию в разрезе смен. В смене хранится массив агрегированных данных.
GET <endpoint>/v2/organizations/<organizationId>/cashboxes/<kktRegId>/statistics/cash-receipt/by-shifts?from=<dateFrom>&to=<dateTo>
В запросе должны быть переданы следующие параметры:
organizationId: обязательный, уникальный идентификатор организации, информацию о которой необходимо получить
kktRegId: обязательный, РНМ кассы, документы которой необходимо получить
dateFrom: обязательный, дата формирования фискальных документов, начиная с которой необходимо получить документы
dateTo: обязательный, дата формирования фискальных документов, по которую (включительно) необходимо получить документы
Допустимые форматы для параметров dateFrom и dateTo: гггг-мм-дд, гггг.мм.дд, дд-мм-гггг, дд.мм.гггг.
Пример запроса:
GET v2/organizations/c2e3a34c-823f-4b1e-a9g1-d94fa40c22a6/cashboxes/0000000003065868/statistics/cash-receipt/by-shifts?from=2019-01-01&to=2019-03-01 HTTP/1.1
Host: ofd-project.kontur.ru:11002
Cache-Control: no-cache
X-Kontur-Ofd-ApiKey: 031c1890-9hhe-435e-5h59-43091hhcd71d
Authorization: auth.sid 77F90D0CF33SEF67SWRG87B9BBA7139F0CD76GRTY00931F2E1F0D
Для получения списка организаций и касс, к которым у пользователя есть доступ, необходимо использовать методы organizations и cashboxes.
В теле ответа возвращается информация в разрезе смен. Список возвращается в виде массива JSON-объектов следующей структуры:
{
«shifts»:
[
{
Информация по смене
},
{
Информация по смене
}
]
}
Пример ответа в разрезе двух смен:
{
"shifts": [
{
"shiftNumber": 103, // Номер первой смены
"shiftOpen": "2019-11-19T10:00:00", // Дата и время открытия
"shiftClose": "2019-11-19T16:00:01", // Дата и время закрытия (только если смена закрыта)
"buy": { // Покупка. Информация по чекам с признаком Расход
"cashlessTotal": 245754, // Сумма безналичными в копейках
"cashTotal": 360542, // Сумма наличными в копейках
"total": 606296, // Общая сумма в копейках
"totalWithNds0": 0, // Сумма НДС 0% в копейках
"totalWithNdsFree": 0, // Сумма без НДС в копейках
"count": 14, // Количество чеков
"nds": {
"rate10": 0, // Сумма НДС 10% в копейках
"calculatedWithRate10": 0, // Сумма НДС 10/110 в копейках
"rate18": 0, // Сумма НДС 18% в копейках
"calculatedWithRate18": 0, // Сумма НДС 18/118 в копейках
"rate20": 101051, // Сумма НДС 20% в копейках
"calculatedWithRate20": 0 // Сумма НДС 20/120 в копейках
"rate5": 0, //Сумма НДС 5% в копейках
"calculatedWithRate5": 0, //Сумма НДС 5/105 в копейках
"rate7": 0, //Сумма НДС 7% в копейках
"calculatedWithRate7": 0, //Сумма НДС 7/107 в копейках
}
},
"returnBuy": { // Возврат покупки. Информация по чекам с признаком Возврат расхода
"cashlessTotal": 37202,
"cashTotal": 132320,
"total": 169522,
"totalWithNds0": 0,
"totalWithNdsFree": 0,
"count": 4,
"nds": {
"rate10": 0,
"calculatedWithRate10": 0,
"rate18": 0,
"calculatedWithRate18": 0,
"rate20": 28253,
"calculatedWithRate20": 0
"rate5": 0,
"calculatedWithRate5": 0,
"rate7": 0,
"calculatedWithRate7": 0,
}
},
"sell": { // Продажа. Информация по чекам с признаком Приход
"cashlessTotal": 2862884,
"cashTotal": 3316499,
"total": 6179383,
"totalWithNds0": 0,
"totalWithNdsFree": 0,
"count": 166,
"nds": {
"rate10": 0,
"calculatedWithRate10": 0,
"rate18": 0,
"calculatedWithRate18": 0,
"rate20": 1029913,
"calculatedWithRate20": 0
"rate5": 0,
"calculatedWithRate5": 0,
"rate7": 0,
"calculatedWithRate7": 0,
}
},
"returnSell": { // Возврат продажи. Информация по чекам с признаком Возврат прихода
"cashlessTotal": 414383,
"cashTotal": 171692,
"total": 586075,
"totalWithNds0": 0,
"totalWithNdsFree": 0,
"count": 16,
"nds": {
"rate10": 0,
"calculatedWithRate10": 0,
"rate18": 0,
"calculatedWithRate18": 0,
"rate20": 97681,
"calculatedWithRate20": 0
"rate5": 0,
"calculatedWithRate5": 0,
"rate7": 0,
"calculatedWithRate7": 0,
}
}
},
{
"shiftNumber": 104, // Номер второй смены
"shiftOpen": "2019-11-19T16:01:00",
"shiftClose": "2019-11-19T22:00:01",
"buy": {
"cashlessTotal": 327200,
"cashTotal": 402772,
"total": 729972,
"totalWithNds0": 0,
"totalWithNdsFree": 0,
"count": 18,
"nds": {
"rate10": 0,
"calculatedWithRate10": 0,
"rate18": 0,
"calculatedWithRate18": 0,
"rate20": 121665,
"calculatedWithRate20": 0
"rate5": 0,
"calculatedWithRate5": 0,
"rate7": 0,
"calculatedWithRate7": 0,
}
},
"returnBuy": {
"cashlessTotal": 129720,
"cashTotal": 92343,
"total": 222063,
"totalWithNds0": 0,
"totalWithNdsFree": 0,
"count": 4,
"nds": {
"rate10": 0,
"calculatedWithRate10": 0,
"rate18": 0,
"calculatedWithRate18": 0,
"rate20": 37010,
"calculatedWithRate20": 0
"rate5": 0,
"calculatedWithRate5": 0,
"rate7": 0,
"calculatedWithRate7": 0,
}
},
"sell": {
"cashlessTotal": 3363914,
"cashTotal": 3010182,
"total": 6374096,
"totalWithNds0": 0,
"totalWithNdsFree": 0,
"count": 160,
"nds": {
"rate10": 0,
"calculatedWithRate10": 0,
"rate18": 0,
"calculatedWithRate18": 0,
"rate20": 1062367,
"calculatedWithRate20": 0
"rate5": 0,
"calculatedWithRate5": 0,
"rate7": 0,
"calculatedWithRate7": 0,
}
},
"returnSell": {
"cashlessTotal": 303281,
"cashTotal": 357152,
"total": 660433,
"totalWithNds0": 0,
"totalWithNdsFree": 0,
"count": 17,
"nds": {
"rate10": 0,
"calculatedWithRate10": 0,
"rate18": 0,
"calculatedWithRate18": 0,
"rate20": 110074,
"calculatedWithRate20": 0
"rate5": 0,
"calculatedWithRate5": 0,
"rate7": 0,
"calculatedWithRate7": 0,
}
}
}
]
}
Особенности
Если в течение смены не было чеков (БСО), то в смене будут указаны нулевые данные.
Для переходящих смен (начало смены в один день, конец - в другой), если в период в запросе целиком смена не попала, то отдаем только суммы, попавшие в выбранный период. Суммы, приходящиеся на другой период, по этой смене не отдаем.
Дату и время открытия смены в ответе отображаем только, когда клиент включил в период в запросе дату, когда приходил отчет об открытии смены. Аналогичная логика для даты и времени закрытия смены.
Если документов в периоде не было, то в ответе будет:
{
"shifts":[]
}
Для получения по кассе и периоду информации в разрезе дней используйте метод cashboxes/statistics/by-days
Для получения по организации и периоду информации в разрезе дней используйте метод organizations/statistics/by-days