shop.order.save
Сохраняет информацию о заказе в базу данных.
Параметры
-
id
POST
ID заказа.
-
items
POST
Массив с информацией о заказе:
- 'items': массив с информацией об элементах заказа: модификациях товаров.
- 'items'[]['item_id']: ID существующего элемента заказа. Используется для идентификации элементов заказа при его сохранении. Если ID указан, то при выполнении метода обновится информация о существующем элементе заказа. Если это значение не указано и указаны значения 'items'[]['product_id'] и 'items'[]['sku_id'], то либо обновится существующий элемент заказа с этими значениями, либо в заказ будет добавлен новый элемент с этими значениями (если они не соответствуют ни одному из существующих элементов заказа). Элементы заказа, значения 'items'[]['item_id'] либо 'items'[]['product_id'] и 'items'[]['sku_id'] которых отсутствуют в POST-запросе, будут удалены из заказа при выполнении метода.
- 'items'[]['product_id']: ID товара, к которому относится новый элемент заказа. Используется для идентификации элементов заказа при сохранении, если не заполнено поле 'items'[]['item_id'].
- 'items'[]['sku_id']: ID модификации товара, к которой относится новый элемент заказа. Используется для идентификации элементов заказа при сохранении, если не заполнено поле 'items'[]['item_id'].
- 'items'[]['quantity']: количество модификации товара в заказе в формате decimal(15,3). Если значение не указано, то по умолчанию используется 1.
- 'items'[]['price']: цена модификации товара, выраженная в валюте заказа, в формате decimal(15,4). Если значение не указано, то используется цена модификации товара из таблицы 'shop_product_skus', если она не была удалена из каталога товаров.
- 'items'[]['total_discount']: скидка на всё количество данной модификации товара в заказе, выраженная в валюте заказа, в формате decimal(15,4).
- 'items'[]['name']: наименование товара. Используется в том случае, если выполняется сохранение заказа с модификацией товара, уже удалённой из магазина.
- 'items'[]['sku_code']: код артикула товара. Используется в том случае, если выполняется сохранение заказа с модификацией товара, уже удалённой из магазина.
- 'items'[]['stock_id']: ID склада, с которого нужно списывать остатки заказанной модификации товара. Если значение не указано, то по умолчанию используется ID одного из существующих складов.
- 'items'[]['virtual_stock_id']: ID виртуального склада, с которого нужно списывать остатки заказанной модификации товара. Если значение не указано, то по умолчанию используется ID одного из существующих виртуальных складов.
- 'items'[]['services']: массив информации об услугах, связанных с данной заказанной модификацией товара.
- 'items'[]['services'][]['item_id']: ID элемента заказа, являющегося услугой. Если значение указано, то при выполнении метода будет обновлена информация об этой услуге для данного элемента заказа. Если значение не указано и в POST-запросе содержатся значения 'items'[]['services'][]['service_id'] и 'items'[]['services'][]['service_variant_id'], то либо обновится существующая услуга для данного элемента заказа с этими значениями, либо для него будет добавлена новая услуга с этими значениями. Услуги, значения 'items'[]['services'][]['item_id'] которых отсутствуют в POST-запросе для данного элемента заказа, будут удалены из его свойств при выполнении метода.
- 'items'[]['services'][]['price']: стоимость услуги, выраженная в валюте заказа, в формате decimal(15,4).
- 'items'[]['services'][]['total_discount']: скидка на услугу, выраженная в валюте заказа, в формате decimal(15,4).
- 'discount': информация о сохранении размера скидки для всего заказа. Текстовое значение 'true' либо 'calculate' приведёт к автоматическому расчёту скидки. Значение в виде числа сохранит указанный размер скидки, выраженный в валюте заказа. Отсутствие значения (null) сохранит ранее зафиксированный размер скидки в случае сохранения существующего заказа. -
customer
POST
Необязательно
Массив информации о покупателе.
-
shipping_address
POST
Необязательно
Ассоциативный массив полей адреса доставки.
-
billing_address
POST
Необязательно
Ассоциативный массив полей адреса плательщика.
-
discount
POST
Необязательно
Информация о скидке:
- Размер скидки в валюте заказа.
- null, если не нужно изменять размер скидки.
- calculate, если нужно автоматически пересчитать размер скидки. -
params
POST
Необязательно
Массив дополнительных параметров заказа для таблицы shop_order_params.
-
comment
POST
Необязательно
Комментарий к заказу.
-
access_token
GET
Токен авторизации, полученный при подключении к API.
-
format
GET
Необязательно
Устанавливает формат ответа. Возможные значения:
json
(по умолчанию),xml
.
Коды ошибок
-
invalid_request
Неверно сформированный запрос. Дополнительная информация об ошибке передается в параметре
error_description
. -
access_denied
Доступ к указанному методу API не разрешен.
-
invalid_method
Неизвестный метод API.