Получить заказы покупателей

HTTP-сервис orders, метод GetOrders. Возвращает документы Заказ покупателя (Документ.ЗаказПокупателя) из 1С УПП.

Endpoint

GET /main/hs/orders/get

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

Все параметры опциональны. Читаются из query string (ПараметрыЗапроса) или из URL-шаблона (ПараметрыURL).

Фильтры в запросе к базе

ПараметрТипОписание
fromstringНачало периода по дате документа. Работает только вместе с to
tostringКонец периода по дате документа. Работает только вместе с from
datestringФильтр по одной дате документа (весь день)
codestringФильтр по номеру заказа. Поиск ПОДОБНО — подстрока в номере
summnumberТочное совпадение суммы документа (СуммаДокумента)
approvedbooleanФильтр по проведённости. Истина: 1, true, yes, да

Пост-фильтры (после выборки из базы)

Поиск подстроки без учёта регистра (ВРег), если параметр задан.

ПараметрТипОписание
contractstringПодстрока в представлении договора. Символ / передавайте как _slash_
customerstringКонтрагент: совпадение по наименованию или по ИНН
innstringПодстрока в ИНН контрагента
orgstringПодстрока в наименовании организации
warehousestringПодстрока в складе (СкладГруппа)
responsiblestringПодстрока в ответственном
commentstringПодстрока в комментарии документа

Расширенный ответ

ПараметрТипОписание
fullbooleanДобавляет табличную часть Товары с расчётом плановой себестоимости и спецификаций. Истина: 1, true, yes, да

Форматы дат (from, to, date)

  • ДД.ММ.ГГГГ — например 01.01.2024
  • ГГГГ-ММ-ДД — например 2024-01-01
  • ДД-ММ-ГГГГ — если первый сегмент не год из 4 цифр

При некорректном формате даты ошибка попадает в массив errors, HTTP-код остаётся 200.

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

GET /main/hs/orders/get
GET /main/hs/orders/get?code=ДК-00001008
GET /main/hs/orders/get?from=01.01.2024&to=31.12.2024
GET /main/hs/orders/get?date=15.03.2025
GET /main/hs/orders/get?contract=02_slash_25%20DEMO%20obj
GET /main/hs/orders/get?customer=ООО%20ДемоКлиент&approved=true
GET /main/hs/orders/get?inn=7700&summ=1500000
GET /main/hs/orders/get?code=ДК-00001008&full=true

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

Базовый ответ

{
  "data": [
    {
      "Номер": "ДК-00001008",
      "Дата": "15.03.2025",
      "Контрагент": "ООО «ДемоКлиент»",
      "ИНН": "7700000001",
      "Организация": "ООО «ДемоСтрой Альфа»",
      "Ответственный": "Сидоров С.С.",
      "Договор": "ДГ-25/042",
      "ИспользоватьПлановуюСебестоимость": true,
      "ИтогПлановаяСебестоимость": 1250000,
      "Сумма": 1500000,
      "Склад": "Склад «Северный»",
      "Проведен": true,
      "Комментарий": "",
      "ДатаОплаты": "20.03.2025",
      "ДатаОтгрузки": "25.03.2025"
    }
  ],
  "errors": []
}

Расширенный ответ (full=true)

Дополнительно к полям шапки добавляется массив Товары:

{
  "data": [
    {
      "Номер": "ДК-00001008",
      "Дата": "15.03.2025",
      "Контрагент": "ООО «ДемоКлиент»",
      "Товары": [
        {
          "Номенклатура": "Комплект DEMO-K7",
          "ХарактеристикаНоменклатуры": "",
          "Количество": 1,
          "Цена": 1500000,
          "Сумма": 1500000,
          "ЕдиницаИзмерения": "компл",
          "КоличествоМест": 0,
          "Коэффициент": 1,
          "ПлановаяСебестоимость": 1250000,
          "СуммаНДС": 250000,
          "СтавкаНДС": "20%",
          "Спецификация": "СП-DEMO-07"
        }
      ]
    }
  ],
  "errors": []
}

Поля ответа

Шапка заказа

ПолеТипИсточник в 1СОписание
dataarrayМассив заказов. Сортировка: дата убыв., номер убыв.
data[].НомерstringНомерНомер документа
data[].ДатаstringДатаДата в формате ДД.ММ.ГГГГ
data[].КонтрагентstringКонтрагентПредставление контрагента
data[].ИННstringКонтрагент.ИННИНН контрагента. Пустая строка, если не заполнен
data[].ОрганизацияstringОрганизацияОрганизация
data[].ОтветственныйstringОтветственныйОтветственный
data[].ДоговорstringДоговорКонтрагентаПредставление договора
data[].ИспользоватьПлановуюСебестоимостьbooleanИспользоватьПлановуюСебестоимостьФлаг использования плановой себестоимости
data[].ИтогПлановаяСебестоимостьnumberИтогПлановаяСебестоимостьИтог плановой себестоимости по документу
data[].СуммаnumberСуммаДокументаСумма документа
data[].СкладstringСкладГруппаСклад
data[].ПроведенbooleanПроведенДокумент проведён
data[].КомментарийstringКомментарийКомментарий
data[].ДатаОплатыstringДатаОплатыДата оплаты (ДД.ММ.ГГГГ) или пустая строка
data[].ДатаОтгрузкиstringДатаОтгрузкиДата отгрузки (ДД.ММ.ГГГГ) или пустая строка

Табличная часть Товары (только при full=true)

ПолеТипИсточник в 1СОписание
Товары[].НоменклатураstringНоменклатура.НаименованиеНаименование
Товары[].ХарактеристикаНоменклатурыstringХарактеристикаНоменклатурыХарактеристика
Товары[].КоличествоnumberКоличествоКоличество
Товары[].ЦенаnumberЦенаЦена
Товары[].СуммаnumberСуммаСумма строки
Товары[].ЕдиницаИзмеренияstringЕдиницаИзмеренияЕдиница измерения
Товары[].КоличествоМестnumberКоличествоМестКоличество мест
Товары[].КоэффициентnumberКоэффициентКоэффициент
Товары[].ПлановаяСебестоимостьnumberрасчётПлановая себестоимость строки (из ТЧ, спецификации или по номенклатуре)
Товары[].СуммаНДСnumberСуммаНДССумма НДС
Товары[].СтавкаНДСstringСтавкаНДССтавка НДС
Товары[].СпецификацияstringСпецификация / поискНаименование спецификации
errorsarrayОшибки парсинга параметров или загрузки товаров отдельных документов

HTTP-коды

КодКогдаТело
200Запрос обработан{ "data": [...], "errors": [...] }
500Непредвиденная ошибка на стороне 1С{ "error": "текст ошибки" }

Массив errors при 200 не означает полный провал: data может содержать найденные заказы, а в errors — проблемы с отдельными документами (например, не удалось собрать Товары при full=true).

Примечания

  • Фильтры из разных групп можно комбинировать: сначала отбор в запросе к базе, затем пост-фильтры по строкам.
  • customer ищет подстроку и в наименовании контрагента, и в его ИНН.
  • ПлановаяСебестоимость в строке товара: сначала берётся из ТЧ заказа; если 0 — рассчитывается по спецификации из строки или по номенклатуре (рекурсивно по СпецификацииНоменклатуры).
  • Без параметров возвращаются все заказы покупателей (с учётом прав публикации 1С).
  • Ответ содержит заголовок Access-Control-Allow-Origin: *.