Создание заказа
В части передачи идентификаторов заказа и товарных позиций внешняя система должна сгенерировать и передать уникальные значения в полях:
- идентификатор заказа во внешней системе
externalId - номер заказа во внешней системе
number - идентификатор посылки
barcode
Заказ невозможно заложить в постамат если дата фактической доставки раньше даты доставки указанной в заказе dateDelivery. Если доставка заказа переносится на следущий день, то необходимо обновить dateDelivery. Обновление заказа осуществляется методом /order/update.
Для минимизации случаев недоставки товара из-за переполности постамата и контроля доступности свободных ячеек постамата необходимо использовать данные
dayOffsиз метода /auth/postamat/available.
PUT /order/create
Инициатор запроса внешняя система
Header parameters
| desc | type | ||
|---|---|---|---|
SST-ECOM-KEY | Ключ авторизации | string | required |
Content-Type | Со значением application/json | string | required |
Request body
| desc | type | ||
|---|---|---|---|
externalId | Идентификатор заказа во внешней системе | string | required |
number | Номер заказа (может быть использован при отображении клиенту/курьеру) | string | no required |
postamatId | Идентификатор постамата, куда осуществляется доставка | int32 | required |
dateDelivery | Дата предполагаемой доставки | date | required |
parcels | Данные по кол-ву загружаемых посылок | array of objects | required |
clientInvoice | Данные по составу заказа | object | required |
notification | Данные по клиенту (используются для идентификации клиента в поддержке) | object | required |
parcels array
| desc | type | ||
|---|---|---|---|
barcode | Штрих-код посылки | string | required |
additionalBarcodes | Дополнительные штрих-коды, по которым возможно идентифицировать заказ (используется при закладке курьера на постамате) | array of strings | no required |
dimension | Информация о размере посылки | object | no required |
dimension object
| desc | type | ||
|---|---|---|---|
height | Высота коробки, мм ( >=1 ) | int32 | no required |
length | Длина коробки, мм ( >=1 ) | int32 | no required |
width | Ширина коробки, мм ( >=1 ) | int32 | no required |
clientInvoice object
| desc | type | ||
|---|---|---|---|
cart | Данные по составу заказа (используется для претензионной работы) | object | required |
cart object
| desc | type | ||
|---|---|---|---|
items | Данные по товарам | array of object | required |
prePaymentSum | Оплаченная стоимость всего заказа в копейках | int64 | required |
items array
| desc | type | ||
|---|---|---|---|
count | Количество товаров | int32 | required |
name | Наименование товара | string | required |
subjectType | Тип товара согласно 54 ФЗ документ | int32 | required |
price | Стоимость одного товара в копейках | int64 | required |
totalSum | Полная стоимость за все товары в копейках | int64 | required |
taxId | Код ставки НДС согласно 54 ФЗ документ | int32 | required |
taxSystemId | Система налогообложения | int32 | required |
notification object
| desc | type | ||
|---|---|---|---|
emails | Email клиента | array of strings | required |
phones | Телефон клиента. Телефон передается в формате +79996543421 | array of strings | required |
Пример запроса
shell
curl -X 'PUT' \
'https://apim.selftech.ru/test/v4/order/create' \
-H 'accept: */*' \
-H 'SST-ECOM-KEY: KEY' \
-H 'Content-Type: application/json' \
-d '{
"clientInvoice": {
"cart": {
"items": [
{
"count": 1,
"name": "Товар 1",
"price": 67700,
"subjectType": 1,
"taxId": 1,
"taxSystemId": 16,
"totalSum": 67700
},
{
"count": 2,
"name": "Товар 2",
"price": 10000,
"subjectType": 1,
"taxId": 1,
"taxSystemId": 16,
"totalSum": 20000
}
],
"prePaymentSum": 87700
}
},
"externalId": "21fb04ee-e5a6-4ffc-ae2a-0776f97fd734",
"notification": {
"emails": [
"noemail@example.ru"
],
"phones": [
"+79990001122"
]
},
"parcels": [
{
"barcode": "6de5c5b0af274e48b75a813fee2ea580",
"additionalBarcodes": [
"15768506026",
"15768506026",
"*6vgTqqR"
]
},
{
"barcode": "b9e0b32ee6a146888ed54f8f32f42235",
"additionalBarcodes": [
"16309646633",
"12847417429",
"*v3ECFUz"
]
}
],
"postamatId": 12,
"dateDelivery": "2024-03-09"
}'Коды ответов
200 - ОК
400 - Bad request
Response schema
| desc | type | |
|---|---|---|
message | Сообщение ошибки | string |
resultCode | Ответ сервера: 1 - Ошибка авторизации; 2 - Внутренняя ошибка сервера; 3 - Неверный формат запроса; 10 - Маркетплейс не активен; | int32 |
json
{
"message": "Not cells for all parcels",
"resultCode": 32
}401 - Unauthorized
500 - Internal server error