Requisition. Заявки на закупку
Метод возвращает заявки на пополнение запасов точек продаж: статус, сводные показатели и, при необходимости, состав заявки. Заявки можно только читать: создаются они в панели управления.
Как получить ключ, как формируются запросы и какие бывают ответы и ошибки — в статье Общие сведения. Здесь описаны только особенности метода requisition. Как работать с заявками в панели управления — в статье Заявки на пополнение запасов.
Запрос
Все параметры, кроме ключа apikey и формата format, принимаются и в адресной строке, и в теле POST.
GET https://[компания].myvirtualpos.ru/api/requisition?apikey=MySecret&warehouse_id=4&status=NEW&with_items=1
Параметры запроса
| id | Число. Ид заявки. Если указан, возвращается только она, включая дочерние заявки |
| warehouse_id | Число. Ид точки продаж, для которой оформлены заявки |
| ext_warehouse_id | Строка. Код точки продаж во внешней системе. Заменяет warehouse_id. Если точки с таким кодом нет, возвращается пустой список |
| status | Строка. Статус заявки, см. раздел «Статусы заявки» |
| datefrom | Дата ГГГГММДД. Заявки, созданные с этой даты |
| dateto | Дата ГГГГММДД. Заявки, созданные не позднее этой даты |
| with_items | 1 — добавить состав заявки. По умолчанию не добавляется |
| format | json (по умолчанию) или xml |
Условия объединяются по «и». Заявки возвращаются по возрастанию ид. Без id метод возвращает только основные заявки: дочерние (сформированные из сводных) не выдаются. Даты передаются строго в формате ГГГГММДД, иначе метод вернёт ошибку Incorrect date format.
Ограничения по дате нет: без datefrom и dateto метод вернёт все заявки за всё время. Если у вас много заявок, ограничивайте выборку датами или точкой продаж.
Статусы заявки
Статус хранится в поле status.
| Значение | Название |
|---|---|
NEW | Новая: заявка создаётся и формируется |
APPROVE | На утверждении: утверждается количество к заказу |
SUPPL_SELECTION | Подбор поставщиков |
COMPLETED | Закрыта |
В старых данных может встречаться также значение DRAFT (черновик).
Структура ответа
| success | 1 — данные получены |
| type | Тип данных, всегда requisition |
| flexfields | Гибкие поля заявки: соответствие attributeN и названия поля. Пустой список, если гибких полей нет |
| count | Количество заявок в ответе |
| requisitions | Список заявок. Каждая обёрнута в объект requisition |
Поля заявки
Пустые значения в JSON приходят как null, в XML — как пустой элемент.
| id | Число. Ид заявки |
| status | Строка. Статус заявки |
| warehouse_id | Число. Ид точки продаж |
| ext_warehouse_id | Строка. Код точки продаж во внешней системе |
| created_date | Строка. Дата и время создания, формат гггг-мм-дд чч:мм:сс |
| type | Всегда пусто |
| summary | Сводные показатели заявки, см. ниже |
| attribute1 … attribute15 | Строка. Значения гибких полей заявки; приходят только настроенные (см. flexfields) |
| items | Состав заявки (только при with_items=1) |
Сводные показатели (summary)
| item_count | Строка. Количество товарных позиций |
| item_quantity | Строка. Общее количество товара |
| amount_cogs | Строка. Сумма по закупочным ценам. Формат с разделителем тысяч, например 1,878.75 |
| amount_inflow | Строка. Сумма по уже оформленным поступлениям |
Состав заявки (items, каждая строка в объекте item)
| item_id | Число. Ид товара |
| ext_item_id | Строка. Код товара во внешней системе |
| item_name | Строка. Название товара |
| quantity_ordered | Строка. Заказанное количество |
Пример ответа
{
"success": 1,
"type": "requisition",
"flexfields": { "attribute1": "Дата поставки" },
"count": 1,
"requisitions": [
{
"requisition": {
"id": 9,
"status": "NEW",
"warehouse_id": 4,
"ext_warehouse_id": "WH-4",
"created_date": "2026-07-04 11:49:04",
"type": null,
"summary": {
"item_count": "2",
"item_quantity": "2.000",
"amount_cogs": "232.32",
"amount_inflow": "0.00"
},
"attribute1": "2026-07-10",
"items": [
{
"item": {
"item_name": "Шампунь для волос 250 мл",
"ext_item_id": "SKU-178",
"item_id": 178,
"quantity_ordered": "1.000"
}
}
]
}
}
]
}
Тот же ответ при format=xml (сокращённо):
<?xml version="1.0" encoding="UTF-8"?> <root> <success>1</success> <type>requisition</type> <flexfields><attribute1>Дата поставки</attribute1></flexfields> <count>1</count> <requisitions> <requisition> <id>9</id> <status>NEW</status> <warehouse_id>4</warehouse_id> <summary> <item_count>2</item_count> <item_quantity>2.000</item_quantity> <!-- остальные сводные показатели --> </summary> <items> <item><item_id>178</item_id><quantity_ordered>1.000</quantity_ordered></item> </items> </requisition> </requisitions> </root>
Примеры запросов
| Задача | Запрос |
|---|---|
| Все основные заявки | /api/requisition?apikey=MySecret |
| Заявка с составом | /api/requisition?apikey=MySecret&id=9&with_items=1 |
| Новые заявки точки продаж | /api/requisition?apikey=MySecret&warehouse_id=4&status=NEW |
| Заявки точки по её коду в 1С за период | /api/requisition?apikey=MySecret&ext_warehouse_id=WH-4&datefrom=20260701&dateto=20260731 |
Ошибки
Ошибка авторизации и общие ошибки описаны в статье Общие сведения.
| Сообщение | Причина | Что делать |
|---|---|---|
| Incorrect date format '…'. Valid format is: YYYYMMDD | Дата не в формате ГГГГММДД | Передайте дату как 20260701 |
Если по условиям ничего не найдено (в том числе при неизвестном статусе), метод возвращает успешный ответ с count равным 0 и пустым списком requisitions.