Оформление заказа - qwep-ru/userapi GitHub Wiki

POST /basket/order

Отправляет в заказ форму с указанным идентификатором и полями по указанному аккаунту поставщика. Если оформление выполняется в несколько шагов, в ответ на запрос вернется форма с дополнительными полями. В случае успешного выполнения запроса возвращается status = true и соответствующее сообщение в warnings, иначе - status = false и ошибка в errors.

Заголовки:

  • Authorization: Bearer TOKEN

Параметры:

  • accountId — ID аккаунта
  • formId — ID формы
  • fieldValues — список полей реквизитов оформления (basketForm > fields из корзины)
    • fieldName — имя поля
    • value — значение поля
  • onlyItems — массив идентификаторов товаров basketItemId с метода получения корзины (доступен при hasPartOrder=true в корзине)

Ответ:

  • baskets — массив корзин
    • accountId — ID аккаунта
    • basketForm — форма заказа
      • caption — действие при отправке формы (если null или Array, действие - оформление заказа)
      • disabled — доступность оформления заказа
      • fields — список реквизитов для оформления заказа
        • defaultValue — значение поля по-умолчанию
        • fieldId — ID поля
        • fieldName — имя поля
        • options — опции выбора (если поле типа SelectField)
        • required — обязательное поле, bool
        • title — заголовок поля, text
        • type — тип поля (1-10), integer (типы)
        • typeName — имя типа поля
      • formId — ID формы
      • formName — имя формы
      • title — заголовок формы
    • basketId — ID корзины
    • basketItems — содержимое корзины
      • article — артикул
      • available — доступное количество (предоставляют не все поставщики)
      • basketItemId — ID строки корзины
      • brand — бренд (предоставляют не все поставщики)
      • delivery — срок поставки (предоставляют не все поставщики)
      • fields — список вложенных полей с дополнительной информацией
        • defaultValue — значение поля по-умолчанию
        • fieldId — ID поля
        • fieldName — наименование поля
        • options — опции выбора (если поле типа SelectField)
        • type — тип поля (1-10), integer (типы)
        • typeName — имя типа поля
      • price — цена
      • quantity — количество
      • title — наименование
      • warehouse — склад
    • vendorId — ID поставщика
    • vendorTitle — наименование поставщика
    • hasPartOrder — признак наличия возможности частичного оформления заказа (если true - нужные товары из корзины можно отправлять в массиве "onlyItems" на /basket/order)
  • status — успешность выполнения операции, boolean
  • errors — список ошибок
  • warnings — список предупреждений

Пример:

Запрос:

POST https://userapi.qwep.ru/basket/order?json HTTP/1.1
Authorization: Bearer 36df5a9e8f37464286d7fa1ad38cabc9b

{
  "Request": {
    "RequestData": {
	"accountId": "1203935",
      	"formId": 176,
      	"fieldValues": [
        {
          "fieldName": "OrderForm[PERSON_TYPE_ID]",
          "value": 458
        },
        {
          "fieldName": "region",
          "value": 459
        }
      ],
        "onlyItems": [
          265305,
          265304
      ]
     }
  }
}

Ответ:

{
    "Response":{
        "entity":{
            "baskets":null,
            "status":true
        },
        "errors":null,
        "warnings":[
            {
                "code":"120160",
                "message":"Заказ успешно отправлен.",
                "details":""
            }
        ]
    }
}