Skip to main content

/api/lite/purchase_orders

Запрос списка поставок на склад (заказов поставщиков)

/api/lite/purchase_orders

Метод возвращает список заказов с заданной фильтрацией.

Можно использовать как для получения списка, так и единичного заказа.

 

Фильтрация

Для фильтрации есть следующие возможности:

  • id - по номеру заказа
  • filter_states - по статусам заказов (можно указывать несколько через зяпятую) 
  • filter_external_id, filter_external_id_2, filter_external_id_3, filter_external_id_4, filter_external_id_5 - по внешним идентификаторам
  • date_from - по дате заказа, от.    формат: 2020-02-19T12:35:31
  • date_to - по дате заказа, до
  • updated_from - по дате/времени изменения. формат: 2020-02-19T12:35:31. Не суммируется с другими параметрами фильтрации
  • supllier_id - по id поставщика
  • consignor_id - по id грузоотправителя
  • date_of_accept_from - по фактической дате приемки, от. формат 2020-02-19T12:35:31
  • date_of_accept_to - по фактической дате приемки, до. формат 2020-02-19T12:35:31
  • arrival_date_from - по фактической дате прибытия поставки на склад, от. формат 2020-02-19T12:35:31
  • arrival_date_to - по фактической дате прибытия поставки на склад, до. формат 2020-02-19T12:35:31
  • statuses - список статусов поставки через запятую

 

Пейджинация

Для пейджинации используются параметры page и size: size - записей на странице, page - номер страницы.

Пример: /api/lite/orders?page=0&size=200

Если параметры не переданы, то дефолтные значения page=0&size=100

Также для отображение пейджинации следует анализировать параметр recordsTotal, возвращающий общее количество записей (с учетом примененной фильтрации, если она есть).

 

Сортировка

Для сортировки задается параметр order, принимающий код поля для сортировки и направление сортировки (asc, desc), отделенное символом плюса.

Пример сортировки по дате (возрастание): /api/lite/orders?order=date+asc

Пример сортировки по дате (убывание): /api/lite/orders?order=date+desc

Доступные коды сортировки:

  • date (дата заказа)
  • id (номер заказа)

По умолчанию используется сортировка по дате заказа по убыванию.

Полный комплект данных по заказам будет передан только если в запросе будет параметр full_info=true

Точечное описание некоторых полей, которые возвращает запрос по поставкам

purchaseArrivalDate формат 2021-04-02 15:50:48.032 фактическая дата прихода поставки на склад
finishlDate формат 2021-04-02 15:50:48.032  фактическая дата закрытия поставки
date формат 2021-04-02 15:50:48.032  дата создания поставки в лк Кактус
status статус поставки
supplier объект, содержит информацию о поставщике
consignor объект, содержит информацию о грузоотправителе
files список объектов, содержит информацию о файлах в поставке
warehouseName  название склада
warehouseCode код склада
comment комментарий к поставке

 

 

Пример запроса по одному заказу и полными данными:

GET api/lite/purchase_orders?id=1001&full_info=true

Пример результата запроса

{
	"success":true,
	"recordsTotal":1,
	"purchaseOrders":[
		{
			"id":"1001",
			"externalId":"extId",
			"externalId2":"extId2",
			"externalId3":"extId3",
			"externalId4":"extId4",
			"externalId5":"extId5",
			"date":"2021-04-02 15:50:41",
			"updateTs":"2021-04-02 15:50:48.032",
			"status":"COMPLETED",
			"totalOrderSum":0,
			"comment":"",
			"totalQuantity":100,
			"supplier":{
				"id":"da1686cf-0551-db1d-57b9-c04120309fae",
				"type":"PERSON",
				"role":null,
				"name":"Розничный покупатель",
				"organization":null,
				"person":{
					"name":"",
					"surname":"",
					"patronymic":"",
					"fullName":"Розничный Покупатель",
					"phone":"",
					"rawPhone":null,
					"alternativePhone":"",
					"email":null,
					"post":null,
					"personType":null,
					"address":{
						"country":null,
						"countryCode":null,
						"region":null,
						"area":null,
						"city":null,
						"settlement":null,
						"street":null,
						"house":null,
						"block":null,
						"building":null,
						"flat":null,
						"fullAddress":null,
						"fullCity":null,
						"rawData":null,
						"zip":null,
						"regionFias":null,
						"areaFias":null,
						"cityFias":null,
						"settlementFias":null
					}
				}
			},
			"consignor":{
				"id":"11430b37-7f78-1202-f6cf-e4b460d81aca",
				"name":"АО \"АРМАДИЛЛО БИЗНЕС ПОСЫЛКА\"",
				"organization":{
					"address":{
						"area":"ГОРОД МОСКВА",
						"block":"",
						"building":"СТРОЕНИЕ 1",
						"city":"ГОРОД МОСКВА",
						"country":"Russia",
						"countryCode":"RU",
						"flat":"",
						"fullAddress":"",
						"fullCity":"ГОРОД МОСКВА",
						"house":"16",
						"rawData":"",
						"region":"ГОРОД МОСКВА",
						"settlement":"",
						"street":"УЛИЦА ДОКУКИНА",
						"zip":"129226"
					},
					"fullName":"АКЦИОНЕРНОЕ ОБЩЕСТВО \"АРМАДИЛЛО БИЗНЕС ПОСЫЛКА\"",
					"id":"c9066ce2-307b-23db-f22a-f1dcc3742f77",
					"inn":"7713215523",
					"kpp":"771601001",
					"name":"АО \"АРМАДИЛЛО БИЗНЕС ПОСЫЛКА\"",
					"ogrn":"1027739074142",
					"orgLegalType":"COMPANY",
					"phones":"",
					"postalAddress":{
						
					}
				},
				"type":"COMPANY"
			},
			"items":[
				{
					"accountingAttributes":[
						{
							"code":"chestnyznak",
							"n":854,
							"stringValue":"0104064196826017215uHGtegWyMT;<9100BE92w1NTVrrKUOM1Z2waUb04Nt9Ifc+WOJDV9+fQqtZxZf9D8UssJBIsmx/AVzOP9"
						},
						{
							"code":"chestnyznak",
							"n":852,
							"stringValue":"0104064196826017215vhGSFBRSK.r69100BE928MYt2IiDvRzfF1HcG9QxbuwtckYc6d5NlzTwweRuKGVM3tyq+1vx35aKDFhsN"
						}
					],
                  	"article":"1-1-22407-20-508",
					"barcode":"4164196826017",
					"num":1,
					"variantId":"1001",
					"productId":"1001",
					"name":"товар тест 3",
					"quantity":100,
					"quantityFact":100,
					"quantityRaw":100,
					"quantityDefective":0,
					"vatRate":"NO_VAT",
					"price":0,
					"img":"https://storage.yandexcloud.net/images-k2c/05d7a992-1c61-4f39-87c6-1401405055e2.jpg",
					"skuType":"SKU",
					"barcode":"",
					"orderDocId":"5703-1013",
					"batchAccountingAttributes":{
						"useBatchAccounting":true,
						"useExpiration":true,
						"expirationDate":"2022-12-01",
						"productionDate":"2021-01-01",
						"expirationDaysLimit":20,
						"expirationDays":500,
						"batchAccountingNumber":"abcd-01",
						"manufacturer":"ООО Полёт",
						"manufacturerRequisites":"ИНН: 123456789"
					}
				}
			],
			"files":[
				{
					"id":"43f79bac-0d82-2d82-f11d-abd1a53b26a0",
					"fileType":"PDF",
					"fileSource":"FULFILLMENT",
					"fileName":"МХ1",
					"fileExt":"pdf",
					"url":"https://yadi.sk/d/BzKXkRigQZtVnB",
					"printWhenPacking":true,
					"copiesQty":1
				}
			],
			"warehouseName":"Свой склад",
			"warehouseCode":"373b1e28-a6d7-545f-9303-65af3a652d48",
			"confirmStatus":"APPROVED",
			"warehouseFFExported":false,
			"warehouseFFSync":false,
			"currency":"RUB"
		}
	]
}

 

Пример запроса по списку поставок:

GET /api/lite/purchase_orders

Пример результата запроса:

{
  "success": true,
  "recordsTotal": 2,
  "purchaseOrders": [
    {
      "id": "1001",
      "externalId": "extId",
      "externalId2": "extId2",
      "externalId3": "extId3",
      "externalId4": "extId4",
      "externalId5": "extId5",
      "date": "2021-04-02 15:50:41",
      "updateTs": "2021-04-02 15:50:48.032",
      "status": "COMPLETED",
      "totalOrderSum": 0,
      "comment": "",
      "totalQuantity": 100,
      "supplier": {
        "id": "da1686cf-0551-db1d-57b9-c04120309fae",
        "type": "PERSON",
        "role": null,
        "name": "Розничный покупатель",
        "organization": null,
        "person": {
          "name": "",
          "surname": "",
          "patronymic": "",
          "fullName": "Розничный Покупатель",
          "phone": "",
          "rawPhone": null,
          "alternativePhone": "",
          "email": null,
          "post": null,
          "personType": null,
          "address": {
            "country": null,
            "countryCode": null,
            "region": null,
            "area": null,
            "city": null,
            "settlement": null,
            "street": null,
            "house": null,
            "block": null,
            "building": null,
            "flat": null,
            "fullAddress": null,
            "fullCity": null,
            "rawData": null,
            "zip": null,
            "regionFias": null,
            "areaFias": null,
            "cityFias": null,
            "settlementFias": null
          }
        }
      },
      "items": [
        {
          "num": 1,
          "variantId": "1001",
          "productId": "1001",
          "name": "товар тест 3",
          "quantity": 100,
          "quantityFact": 100,
          "quantityRaw": 100,
          "quantityDefective": 0,
          "vatRate": "NO_VAT",
          "price": 0,
          "img": "https://storage.yandexcloud.net/images-k2c/05d7a992-1c61-4f39-87c6-1401405055e2.jpg",
          "skuType": "SKU",
          "barcode": "",
          "orderDocId": "5703-1013"
        }
      ],
      "files": [
                {
                    "id": "43f79bac-0d82-2d82-f11d-abd1a53b26a0",
                    "fileType": "PDF",
                  	"fileSource": "FULFILLMENT", //ESHOP | USER
                    "fileName": "МХ1",
                    "fileExt": "pdf",
                    "url": "https://yadi.sk/d/BzKXkRigQZtVnB",
                    "printWhenPacking": true,
                    "copiesQty": 1
                }
           	 ],
      "warehouseName": "Свой склад",
      "warehouseCode": "373b1e28-a6d7-545f-9303-65af3a652d48",
      "confirmStatus": "APPROVED",
      "warehouseFFExported": false,
      "warehouseFFSync": false,
      "currency": "RUB"
    },
    
    {
      "id": "1002",
      "date": "2021-04-03 15:50:41",
      "updateTs": "2021-04-02 15:50:48.032",
      "status": "COMPLETED",
      "totalOrderSum": 0,
      "comment": "",
      "totalQuantity": 100,
      "supplier": {
        "id": "da1686cf-0551-db1d-57b9-c04120309fae",
        "type": "PERSON",
        "role": null,
        "name": "Розничный покупатель",
        "organization": null,
        "person": {
          "name": "",
          "surname": "",
          "patronymic": "",
          "fullName": "Розничный Покупатель",
          "phone": "",
          "rawPhone": null,
          "alternativePhone": "",
          "email": null,
          "post": null,
          "personType": null,
          "address": {
            "country": null,
            "countryCode": null,
            "region": null,
            "area": null,
            "city": null,
            "settlement": null,
            "street": null,
            "house": null,
            "block": null,
            "building": null,
            "flat": null,
            "fullAddress": null,
            "fullCity": null,
            "rawData": null,
            "zip": null,
            "regionFias": null,
            "areaFias": null,
            "cityFias": null,
            "settlementFias": null
          }
        }
      },
      "items": [
        {
          "num": 1,
          "variantId": "1001",
          "productId": "1001",
          "name": "товар тест 3",
          "quantity": 100,
          "quantityFact": 100,
          "quantityRaw": 100,
          "quantityDefective": 0,
          "vatRate": "NO_VAT",
          "price": 0,
          "img": "https://storage.yandexcloud.net/images-k2c/05d7a992-1c61-4f39-87c6-1401405055e2.jpg",
          "skuType": "SKU",
          "barcode": ""
        }
      ],
      "files": [
                {
                    "id": "43f79bac-0d82-2d82-f11d-abd1a53b26a0",
                    "fileType": "PDF",
                  	"fileSource": "FULFILLMENT", //ESHOP | USER
                    "fileName": "МХ1",
                    "fileExt": "pdf",
                    "url": "https://yadi.sk/d/BzKXkRigQZtVnB",
                    "printWhenPacking": true,
                    "copiesQty": 1
                }
           	 ],
      "warehouseName": "Свой склад",
      "warehouseCode": "373b1e28-a6d7-545f-9303-65af3a652d48",
      "confirmStatus": "APPROVED",
      "warehouseFFExported": false,
      "warehouseFFSync": false,
      "currency": "RUB"
    }
  ]
}

 

Возможные статусы заказа:
NEW
READY_TO_TAKE_IN
TAKE_IN_PROCESS
COMPLETED
COMPLETED_WITH_DIFFERENCE
DIFFERENCE
CANCELED

Создание/редактирование поставки (заказа поставщику)

/api/lite/purchase_orders

Создание/редактирование заказа для кабинета.

Если указан параметр id - то система будет пробовать найти заказ с указанным номером и отредактировать его, иначе - создаст новый с указанным id.

Если параметр id не указан - система создаст новый заказ и присвоит внутренний номер.

 

Поле Тип Обязательный Комментарий
warehouseCode string да Код склада на который будет поставка, из справочника складов аккаунта
supplier Объект да Данные о поставщике из справочника контрагентов аккаунта
supplier.id string да

Код контрагента-поставщика из справочника контрагентов аккаунта.
Также можно использовать внешний код контрагента. Для этого нужно передавать его в поле extId. В таком случае поле id можно уже не передавть.

consignor Объект нет Данные о грузоотправителе из справочника контрагентов аккаунта
consignor.id string нет Код контрагента-грузоотправителя из справочника контрагентов аккаунта
items Объект да Список позиций поставки
items.num integer да Номер строки (последовательно с 1, без пропусков)
items.quantity integer да Количество товара (более 0)
items.price money да Цена за шт
items.vatRate

enum

Значения: NO_VAT,

VAT_0, VAT_10, VAT_20

да Ставка НДС
items.variantId string да (если настроен поиск по этому полю) Код товара в аккаунте 
items.variantExtId string да (если настроен поиск по этому полю) Внешний код товара в аккаунте 
items.orderDocId string нет Для согласованных кроссдок поставок - номер привязанного заказа
items.batchAccountingAttributes Объект нет Атрибуты партии для данного товара
confirmStatus

enum 
Значения: APPROVED, NEED_CONFIRM, 

CANCELED

нет Статус подтверждения. Только если статус = APPROVED - поставка выгружается на склад для приемки.
comment string нет Комментарий к поставке для склада
dateOfDeliveryPlan DateTime нет Ориентровочная дата поступления поставки
externalId - externalId5 string нет Внешние коды поставки из клиенстких систем

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

{
  "id": "1001",
  "items": [
    {
      "num": 1,
      "variantId": "demo1024",
      "productId": "demo1006",
      "productExtId": null,
      "name": "Компьютер (демо товар) ",
      "quantity": 3,     
      "price": 20000,
      "vatRate": "NO_VAT",    
      "orderDocId": "5703-1013",
       "batchAccountingAttributes": {
        "useBatchAccounting": true,
        "useExpiration": true,
        "expirationDate": "2022-12-01",
        "productionDate": "2021-01-01",
        "expirationDaysLimit": 20,
        "expirationDays": 500,
        "batchAccountingNumber": "abcd-01",
        "manufacturer": "ООО Полёт",
        "manufacturerRequisites":"ИНН: 123456789"
      }
    }
  ],
  "warehouseCode": "373b1e28-a6d7-545f-9303-65af3a652d48", 
  "supplier": {
    "id": "da1686cf-0551-db1d-57b9-c04120309fae"
  },
  "dateOfDeliveryPlan": "2021-10-08 00:00:00",
  "comment": "",
  "confirmStatus": "APPROVED",
  "externalId": "extId",
  "externalId2": "extId2",
  "externalId3": "extId3",
  "externalId4": "extId4",
  "externalId5": "extId5"
}

 

В ответ возвращается:

{
    "success": true,
    "orderId": "111",
    "c": "2b92b631-7f1b-c52a-897e-30bc628f87e5"
}

 

Ошибка: 

{
"success": false,
"errors": [
 {
 "code": 0,
 "message": "Текст ошибки"
 }
]
}