openapi: 3.0.1 info: title: Описание API Статистики version: "" description: С помощью этих методов можно получить отчёты. security: - HeaderApiKey: [] x-tags: - name: Статистика description: > Методы статистики
Лимит по запросам: один запрос одного метода в минуту.

Инструкция: Сохранение статистики в Excel paths: /api/v1/supplier/incomes: servers: - url: https://statistics-api.wildberries.ru get: security: - HeaderApiKey: [] summary: Поставки description: Поставки. Максимум 1 запрос в минуту tags: - "Статистика" parameters: - name: dateFrom in: query schema: type: string format: RFC3339 required: true description: > Дата и время последнего изменения по поставке.
Дата в формате RFC3339. Можно передать дату или дату со временем. Время можно указывать с точностью до секунд или миллисекунд.
Время передаётся в часовом поясе Мск (UTC+3).
Примеры: responses: 200: description: Список поставок content: application/json: schema: type: array items: $ref: "#/components/schemas/IncomesItem" example: [{"incomeId": 12345,"number": "","date": "2022-05-08T00:00:54","lastChangeDate": "2022-05-08T00:44:15.5","supplierArticle": "ABCDEF","techSize": "0","barcode": "2000328074123","quantity": 3,"totalPrice": 0,"dateClose": "2022-05-08T00:00:00","warehouseName": "Подольск", "nmId": 1234567, "status": "Принято"}] 401: description: Не авторизован content: application/json: schema: type: string examples: TokenMissing: $ref: '#/components/examples/TokenMissing' TokenInvalid: $ref: '#/components/examples/TokenInvalid' TokenIsNotApplicable: $ref: '#/components/examples/TokenIsNotApplicable' TokenNotFound: $ref: '#/components/examples/TokenNotFound' 429: description: "Слишком много запросов" content: application/json: schema: $ref: '#/components/schemas/Response429' examples: RequestLimitStatistics: $ref: '#/components/examples/RequestLimitStatistics' /api/v1/supplier/stocks: servers: - url: https://statistics-api.wildberries.ru get: security: - HeaderApiKey: [] summary: Склад description: > Остатки товаров на складах WB. Данные обновляются раз в 30 минут.
Сервис статистики не хранит историю остатков товаров, поэтому получить данные о них можно только в режиме "на текущий момент".
Максимум 1 запрос в минуту tags: - "Статистика" parameters: - name: dateFrom in: query schema: type: string format: RFC3339 required: true description: > Дата и время последнего изменения по товару.
Для получения полного остатка следует указывать максимально раннее значение.
Например, `2019-06-20`
Дата в формате RFC3339. Можно передать дату или дату со временем. Время можно указывать с точностью до секунд или миллисекунд.
Время передаётся в часовом поясе Мск (UTC+3).
Примеры: responses: 200: description: Список товаров на складе content: application/json: schema: type: array items: $ref: "#/components/schemas/StocksItem" example: [{"lastChangeDate":"2023-07-05T11:13:35","warehouseName":"Краснодар","supplierArticle":"443284","nmId":1439871458,"barcode":"2037401340280","quantity":33,"inWayToClient":1,"inWayFromClient":0,"quantityFull":34,"category":"Посуда и инвентарь","subject":"Формы для запекания","brand":"X","techSize":"0","Price":185,"Discount":0,"isSupply":true,"isRealization":false,"SCCode":"Tech"}] 401: description: Не авторизован content: application/json: schema: type: string examples: TokenMissing: $ref: '#/components/examples/TokenMissing' TokenInvalid: $ref: '#/components/examples/TokenInvalid' TokenIsNotApplicable: $ref: '#/components/examples/TokenIsNotApplicable' TokenNotFound: $ref: '#/components/examples/TokenNotFound' 429: description: "Слишком много запросов" content: application/json: schema: $ref: '#/components/schemas/Response429' examples: RequestLimitStatistics: $ref: '#/components/examples/RequestLimitStatistics' /api/v1/supplier/orders: servers: - url: https://statistics-api.wildberries.ru get: security: - HeaderApiKey: [] summary: Заказы description: > Заказы.
Гарантируется хранение данных не более 90 дней от даты заказа.
Данные обновляются раз в 30 минут.
Для идентификации заказа следует использовать поле `srid`.
1 строка = 1 заказ = 1 единица товара.
Максимум 1 запрос в минуту tags: - "Статистика" parameters: - name: dateFrom in: query schema: type: string format: RFC3339 required: true description: > Дата и время последнего изменения по заказу.
Дата в формате RFC3339. Можно передать дату или дату со временем. Время можно указывать с точностью до секунд или миллисекунд.
Время передаётся в часовом поясе Мск (UTC+3).
Примеры: - $ref: '#/components/parameters/flag' responses: 200: description: Список заказов content: application/json: schema: type: array items: $ref: "#/components/schemas/OrdersItem" example: [{"date": "2022-03-04T18:08:31", "lastChangeDate": "2022-03-06T10:11:07", "warehouseName": "Подольск", "countryName": "Россия", "oblastOkrugName": "Центральный федеральный округ", "regionName": "Московская", "supplierArticle": "12345", "nmId": 1234567, "barcode": "123453559000", "category": "Бытовая техника", "subject": "Мультистайлеры", "brand": "Тест", "techSize": "0", "incomeID": 56735459, "isSupply": false, "isRealization": true, "totalPrice": 1887, "discountPercent": 18, "spp": 26, "finishedPrice": 1145, "priceWithDisc": 1547, "isCancel":true,"cancelDate":"2022-03-09T00:00:00","orderType": "Клиентский", "sticker": "926912515", "gNumber": "34343462218572569531", "srid": "11.rf9ef11fce1684117b0nhj96222982382.3.0"}] 400: description: Ошибка в запросе content: application/json: schema: $ref: '#/components/schemas/responseErrorStatistics' examples: CantParseDateFrom: $ref: '#/components/examples/CantParseDateFrom' 401: description: Не авторизован content: application/json: schema: type: string examples: TokenMissing: $ref: '#/components/examples/TokenMissing' TokenInvalid: $ref: '#/components/examples/TokenInvalid' TokenIsNotApplicable: $ref: '#/components/examples/TokenIsNotApplicable' TokenNotFound: $ref: '#/components/examples/TokenNotFound' 429: description: "Слишком много запросов" content: application/json: schema: $ref: '#/components/schemas/Response429' examples: RequestLimitStatistics: $ref: '#/components/examples/RequestLimitStatistics' /api/v1/supplier/sales: servers: - url: https://statistics-api.wildberries.ru get: security: - HeaderApiKey: [] summary: Продажи description: > Продажи и возвраты.
Гарантируется хранение данных не более 90 дней от даты продажи.
Данные обновляются раз в 30 минут.
Для идентификации заказа следует использовать поле `srid`.
1 строка = 1 продажа/возврат = 1 единица товара.
Максимум 1 запрос в минуту tags: - "Статистика" parameters: - name: dateFrom in: query schema: type: string format: RFC3339 required: true description: > Дата и время последнего изменения по продаже/возврату.
Дата в формате RFC3339. Можно передать дату или дату со временем. Время можно указывать с точностью до секунд или миллисекунд.
Время передаётся в часовом поясе Мск (UTC+3).
Примеры: - $ref: '#/components/parameters/flag' responses: 200: description: Список продаж content: application/json: schema: type: array items: $ref: "#/components/schemas/SalesItem" example: [{"date": "2022-03-04T18:08:31", "lastChangeDate": "2022-03-06T10:11:07", "warehouseName": "Подольск", "countryName": "Россия", "oblastOkrugName": "Центральный федеральный округ", "regionName": "Московская", "supplierArticle": "12345", "nmId": 1234567, "barcode": "123453559000", "category": "Бытовая техника", "subject": "Мультистайлеры", "brand": "Тест", "techSize": "0", "incomeID": 56735459, "isSupply": false, "isRealization": true, "totalPrice": 1887, "discountPercent": 18, "spp": 20, "paymentSaleAmount": 93, "forPay": 1284.01, "finishedPrice": 1145, "priceWithDisc": 1547, "saleID": "S9993700024", "orderType": "Клиентский", "sticker": "926912515", "gNumber": "34343462218572569531", "srid": "11.rf9ef11fce1684117b0nhj96222982382.3.0"}] 400: description: Ошибка в запросе content: application/json: schema: $ref: '#/components/schemas/responseErrorStatistics' examples: CantParseDateFrom: $ref: '#/components/examples/CantParseDateFrom' 401: description: Не авторизован content: application/json: schema: type: string examples: TokenMissing: $ref: '#/components/examples/TokenMissing' TokenInvalid: $ref: '#/components/examples/TokenInvalid' TokenIsNotApplicable: $ref: '#/components/examples/TokenIsNotApplicable' TokenNotFound: $ref: '#/components/examples/TokenNotFound' 429: description: "Слишком много запросов" content: application/json: schema: $ref: '#/components/schemas/Response429' examples: RequestLimitStatistics: $ref: '#/components/examples/RequestLimitStatistics' /api/v5/supplier/reportDetailByPeriod: servers: - url: https://statistics-api.wildberries.ru get: security: - HeaderApiKey: [] summary: Отчет о продажах по реализации description: | Детализация к еженедельному отчёту реализации. В отчёте доступны данные за последние 3 месяца. Максимум 1 запрос в минуту.

Чтобы получить данные до 29 января, используйте URL c v1: https://statistics-api.wildberries.ru/api/v1/supplier/reportDetailByPeriod

Если нет данных за указанный период, метод вернет `null`. Технический перерыв в работе метода: каждый понедельник с 3:00 до 16:00. Инструкция: Сохранение статистики в Excel tags: - "Статистика" parameters: - name: dateFrom in: query schema: type: string format: RFC3339 required: true description: > Начальная дата отчета.
Дата в формате RFC3339. Можно передать дату или дату со временем. Время можно указывать с точностью до секунд или миллисекунд.
Время передаётся в часовом поясе Мск (UTC+3).
Примеры: - in: query name: limit schema: type: integer default: 100000 required: false description: Максимальное количество строк отчета, возвращаемых методом. Не может быть более 100000. - in: query name: dateTo schema: type: string format: date required: true description: Конечная дата отчета - in: query name: rrdid schema: type: integer required: false description: | Уникальный идентификатор строки отчета. Необходим для получения отчета частями.
Загрузку отчета нужно начинать с `rrdid = 0` и при последующих вызовах API передавать в запросе значение `rrd_id` из последней строки, полученной в результате предыдущего вызова.
Таким образом для загрузки одного отчета может понадобиться вызывать API до тех пор, пока количество возвращаемых строк не станет равным нулю. responses: 200: description: Список реализованных позиций content: application/json: schema: type: array items: $ref: "#/components/schemas/DetailReportItem" 401: description: Не авторизован content: application/json: schema: type: string examples: TokenMissing: $ref: '#/components/examples/TokenMissing' TokenInvalid: $ref: '#/components/examples/TokenInvalid' TokenIsNotApplicable: $ref: '#/components/examples/TokenIsNotApplicable' TokenNotFound: $ref: '#/components/examples/TokenNotFound' 429: description: "" content: application/json: schema: oneOf: - type: string - $ref: '#/components/schemas/Response429' examples: TechnicalBreak: value: 'Технический перерыв в работе метода: каждый понедельник с 3:00 до 16:00.' RequestLimitStatistics: $ref: '#/components/examples/RequestLimitStatistics' components: schemas: DetailReportItem: type: object properties: realizationreport_id: example: 1234567 type: integer description: Номер отчёта date_from: example: '2022-10-17T00:00:00Z' type: string format: date-time description: Дата начала отчётного периода date_to: example: '2022-10-23T00:00:00Z' type: string format: date-time description: Дата конца отчётного периода create_dt: example: '2022-10-24T14:40:32' type: string format: date-time description: Дата формирования отчёта currency_name: example: руб type: string description: Валюта отчёта suppliercontract_code: example: null type: object description: Договор rrd_id: example: 1232610467 type: integer description: Номер строки gi_id: example: 123456 type: integer description: Номер поставки subject_name: example: Мини-печи type: string description: Предмет nm_id: example: 1234567 type: integer description: Артикул WB brand_name: example: BlahBlah type: string description: Бренд sa_name: example: MAB123 type: string description: Артикул продавца ts_name: example: '0' type: string description: Размер barcode: example: '1231312352310' type: string description: Баркод doc_type_name: example: Продажа type: string description: Тип документа quantity: type: integer example: 1 description: Количество retail_price: example: 1249 type: number description: Цена розничная retail_amount: example: 367 type: number description: Сумма продаж (возвратов) sale_percent: example: 68 type: integer description: Согласованная скидка commission_percent: example: 0.1324 type: number description: Процент комиссии office_name: example: Коледино type: string description: Склад supplier_oper_name: example: Продажа type: string description: Обоснование для оплаты order_dt: example: '2022-10-13T00:00:00Z' type: string format: date-time description: Дата заказа.
Присылается с явным указанием часового пояса sale_dt: example: '2022-10-20T00:00:00Z' type: string format: date-time description: Дата продажи.
Присылается с явным указанием часового пояса rr_dt: example: '2022-10-20T00:00:00Z' type: string format: date-time description: Дата операции.
Присылается с явным указанием часового пояса shk_id: example: 1239159661 type: integer description: Штрих-код retail_price_withdisc_rub: example: 399.68 type: number description: Цена розничная с учетом согласованной скидки delivery_amount: example: 0 type: integer description: Количество доставок return_amount: example: 0 type: integer description: Количество возвратов delivery_rub: example: 0 type: number description: Стоимость логистики gi_box_type_name: example: Монопалета type: string description: Тип коробов product_discount_for_report: example: 399.68 type: number description: Согласованный продуктовый дисконт supplier_promo: example: 0 type: number description: Промокод rid: example: 123722249253 type: integer description: Уникальный идентификатор заказа ppvz_spp_prc: example: 0.1581 type: number description: Скидка постоянного покупателя ppvz_kvw_prc_base: example: 0.15 type: number description: Размер кВВ без НДС, % базовый ppvz_kvw_prc: example: -0.0081 type: number description: Итоговый кВВ без НДС, % sup_rating_prc_up: type: number description: Размер снижения кВВ из-за рейтинга is_kgvp_v2: type: number description: Размер снижения кВВ из-за акции ppvz_sales_commission: example: -3.74 type: number description: Вознаграждение с продаж до вычета услуг поверенного, без НДС ppvz_for_pay: example: 376.99 type: number description: К перечислению продавцу за реализованный товар ppvz_reward: example: 0 type: number description: Возмещение за выдачу и возврат товаров на ПВЗ acquiring_fee: example: 14.89 type: number description: | Возмещение издержек по эквайрингу.
Издержки WB за услуги эквайринга: вычитаются из вознаграждения WB и не влияют на доход продавца. acquiring_bank: example: Тинькофф type: string description: Наименование банка-эквайера ppvz_vw: example: -3.74 type: number description: Вознаграждение WB без НДС ppvz_vw_nds: example: -0.75 type: number description: НДС с вознаграждения WB ppvz_office_id: example: 105383 type: integer description: Номер офиса ppvz_office_name: example: Пункт самовывоза (ПВЗ) type: string description: Наименование офиса доставки ppvz_supplier_id: example: 186465 type: integer description: Номер партнера ppvz_supplier_name: example: ИП Жасмин type: string description: Партнер ppvz_inn: example: '010101010101' type: string description: ИНН партнера declaration_number: example: '' type: string description: Номер таможенной декларации bonus_type_name: example: Штраф МП. Невыполненный заказ (отмена клиентом после недовоза) type: string description: Обоснование штрафов и доплат.
Поле будет в ответе при наличии значения sticker_id: example: '1964038895' type: string description: Цифровое значение стикера, который клеится на товар в процессе сборки заказа по схеме "Маркетплейс" site_country: example: RU type: string description: Страна продажи penalty: example: 231.35 type: number description: Штрафы additional_payment: example: 0 type: number description: Доплаты rebill_logistic_cost: example: 1.349 type: number description: Возмещение издержек по перевозке. Поле будет в ответе при наличии значения rebill_logistic_org: example: ИП Иванов Иван Иванович(123456789012) type: string description: Организатор перевозки. Поле будет в ответе при наличии значения kiz: example: "0102900000376311210G2CIS?ehge)S\x1D91002A\x1D92F9Qof4FDo/31Icm14kmtuVYQzLypxm3HWkC1vQ/+pVVjm1dNAth1laFMoAGn7yEMWlTjxIe7lQnJqZ7TRZhlHQ==" type: string description: Код маркировки.
Поле будет в ответе при наличии значения storage_fee: type: number description: Стоимость хранения example: 12647.29 deduction: type: number description: Прочие удержания/выплаты example: 6354 acceptance: type: number description: Стоимость платной приёмки example: 865 srid: example: 0f1c3999172603062979867564654dac5b702849 type: string description: | Уникальный идентификатор заказа. Примечание для использующих API Marketplace: `srid` равен `rid` в ответах методов сборочных заданий. report_type: type: integer description: | Тип отчёта: * `1` — стандартный * `2` — для уведомления о выкупе example: 1 IncomesItem: type: object properties: incomeId: type: integer description: Номер поставки number: type: string maxLength: 40 description: Номер УПД date: type: string format: date description: Дата поступления. Если часовой пояс не указан, то берется Московское время UTC+3. lastChangeDate: type: string format: date-time description: Дата и время обновления информации в сервисе. Это поле соответствует параметру `dateFrom` в запросе. Если часовой пояс не указан, то берется Московское время UTC+3. supplierArticle: type: string maxLength: 75 description: Артикул продавца techSize: type: string maxLength: 30 description: Размер товара (пример S, M, L, XL, 42, 42-43) barcode: type: string maxLength: 30 description: Бар-код quantity: type: integer description: Количество totalPrice: type: number description: Цена из УПД dateClose: type: string format: date description: Дата принятия (закрытия) в WB. Если часовой пояс не указан, то берется Московское время UTC+3 warehouseName: type: string maxLength: 50 description: Название склада nmId: type: integer description: Артикул WB status: type: string maxLength: 50 enum: - Принято description: Текущий статус поставки StocksItem: type: object properties: lastChangeDate: type: string format: date-time description: Дата и время обновления информации в сервисе. Это поле соответствует параметру `dateFrom` в запросе. Если часовой пояс не указан, то берется Московское время (UTC+3) warehouseName: type: string maxLength: 50 description: Название склада supplierArticle: type: string maxLength: 75 description: Артикул продавца nmId: type: integer description: Артикул WB barcode: type: string maxLength: 30 description: Баркод quantity: type: integer description: Количество, доступное для продажи (сколько можно добавить в корзину) inWayToClient: type: integer description: В пути к клиенту inWayFromClient: type: integer description: В пути от клиента quantityFull: type: integer description: Полное (непроданное) количество, которое числится за складом (= `quantity` + в пути) category: type: string maxLength: 50 description: Категория subject: type: string maxLength: 50 description: Предмет brand: type: string maxLength: 50 description: Бренд techSize: type: string maxLength: 30 description: Размер Price: type: number description: Цена Discount: type: number description: Скидка isSupply: type: boolean description: Договор поставки (внутренние технологические данные) isRealization: type: boolean description: Договор реализации (внутренние технологические данные) SCCode: type: string maxLength: 50 description: Код контракта (внутренние технологические данные) OrdersItem: type: object properties: date: type: string format: date-time description: Дата и время заказа. Это поле соответствует параметру `dateFrom` в запросе, если параметр `flag`=1. Если часовой пояс не указан, то берется Московское время (UTC+3). lastChangeDate: type: string format: date-time description: Дата и время обновления информации в сервисе. Это поле соответствует параметру `dateFrom` в запросе, если параметр `flag`=0 или не указан. Если часовой пояс не указан, то берется Московское время (UTC+3). warehouseName: type: string maxLength: 50 description: Склад отгрузки countryName: type: string maxLength: 200 description: Страна oblastOkrugName: type: string maxLength: 200 description: Округ regionName: type: string maxLength: 200 description: Регион supplierArticle: type: string maxLength: 75 description: Артикул продавца nmId: type: integer description: Артикул WB barcode: type: string maxLength: 30 description: Баркод category: type: string maxLength: 50 description: Категория subject: type: string maxLength: 50 description: Предмет brand: type: string maxLength: 50 description: Бренд techSize: type: string maxLength: 30 description: Размер товара incomeID: type: integer description: Номер поставки isSupply: type: boolean description: Договор поставки isRealization: type: boolean description: Договор реализации totalPrice: type: number description: Цена без скидок discountPercent: type: integer description: Скидка продавца spp: type: number description: Скидка WB finishedPrice: type: number description: Цена с учетом всех скидок, кроме суммы по WB Кошельку priceWithDisc: type: number description: Цена со скидкой продавца (= `totalPrice` * (1 - `discountPercent`/100)) isCancel: type: boolean description: Отмена заказа. true - заказ отменен cancelDate: type: string format: date-time description: Дата и время отмены заказа. Если заказ не был отменен, то "0001-01-01T00:00:00".Если часовой пояс не указан, то берется Московское время UTC+3. orderType: type: string description: > Тип заказа sticker: type: string description: Идентификатор стикера gNumber: type: string maxLength: 50 description: Номер заказа srid: type: string description: > Уникальный идентификатор заказа.
Примечание для использующих API Маркетплейс: `srid` равен `rid` в ответах методов сборочных заданий. SalesItem: type: "object" properties: date: type: string format: date-time description: Дата и время продажи. Это поле соответствует параметру `dateFrom` в запросе, если параметр `flag`=1. Если часовой пояс не указан, то берется Московское время (UTC+3). lastChangeDate: type: string format: date-time description: Дата и время обновления информации в сервисе. Это поле соответствует параметру `dateFrom` в запросе, если параметр `flag`=0 или не указан. Если часовой пояс не указан, то берется Московское время (UTC+3). warehouseName: type: string maxLength: 50 description: Склад отгрузки countryName: type: string maxLength: 200 description: Страна oblastOkrugName: type: string maxLength: 200 description: Округ regionName: type: string maxLength: 200 description: Регион supplierArticle: type: string maxLength: 75 description: Артикул продавца nmId: type: integer description: Артикул WB barcode: type: string maxLength: 30 description: Баркод category: type: string maxLength: 50 description: Категория subject: type: string maxLength: 50 description: Предмет brand: type: string maxLength: 50 description: Бренд techSize: type: string maxLength: 30 description: Размер товара incomeID: type: integer description: Номер поставки isSupply: type: boolean description: Договор поставки isRealization: type: boolean description: Договор реализации totalPrice: type: number description: Цена без скидок discountPercent: type: integer description: Скидка продавца spp: type: number description: Скидка WB paymentSaleAmount: type: integer description: Оплачено с WB Кошелька forPay: type: number description: К перечислению продавцу finishedPrice: type: number description: Фактическая цена с учетом всех скидок (к взиманию с покупателя) priceWithDisc: type: number description: Цена со скидкой продавца, от которой считается сумма к перечислению продавцу `forPay` (= `totalPrice` * (1 - `discountPercent`/100)) saleID: type: string maxLength: 15 description: > Уникальный идентификатор продажи/возврата orderType: type: string description: > Тип заказа sticker: type: string description: Идентификатор стикера gNumber: type: string maxLength: 50 description: Номер заказа srid: type: string description: > Уникальный идентификатор заказа.
Примечание для использующих API Маркетплейс: `srid` равен `rid` в ответах методов сборочных заданий. responseErrorStatistics: type: object properties: errors: type: array items: type: string Response429: type: object properties: code: description: '' type: integer message: description: '' type: string securitySchemes: HeaderApiKey: type: apiKey name: Authorization in: header parameters: flag: in: query name: flag schema: type: integer default: 0 required: false description: > Если параметр `flag=0` (или не указан в строке запроса), при вызове API возвращаются данные, у которых значение поля `lastChangeDate` (дата время обновления информации в сервисе) больше или равно переданному значению параметра `dateFrom`. При этом количество возвращенных строк данных варьируется в интервале от 0 до примерно 100 000.
Если параметр `flag=1`, то будет выгружена информация обо всех заказах или продажах с датой, равной переданному параметру `dateFrom` (в данном случае время в дате значения не имеет). При этом количество возвращенных строк данных будет равно количеству всех заказов или продаж, сделанных в указанную дату, переданную в параметре `dateFrom`. examples: TokenMissing: description: Токен отсутствует value: 'proxy: unauthorized' TokenInvalid: description: Токен недействителен value: 'proxy: invalid token' TokenNotFound: description: Токен удален value: 'proxy: not found' TokenIsNotApplicable: description: Используемый токен не применим к данным методам. value: 'Error ae394f96-e258-432d-af13-a53a3d31f8b0: request rejected, unathorized: token scope not allowed for this API route' CantParseDateFrom: description: Ошибка в запросе value: errors: - can't parse dateFrom RequestLimitStatistics: description: Превышено допустимое кол-во запросов в единицу времени value: code: 429 message: error text