Введение
Merchant-API - это сервис REST API для складских клиентов ФМ, позволяющий интегрироваться с WMS системой.
Сервис включает в себя набор стандартизированных потоков, которые позволяют создавать, обновлять, удалять различные объекты WMS-системы и получать информацию по ним. Для этого используются методы POST, GET, DEL. Для отправки запроса и получения ответа можно использовать Postman или настроить интеграцию с системами учёта, например, 1С.
Возможности Merchant-API
Данный сервис позволит вам:
- Загружать, обновлять и получать данные справочников по товарам, поставщикам, грузополучателям
- Управлять заказами B2B, B2C
- Получать информацию по стоку
- Получать актуальный статус и состав заказов
- Управлять настройками маркетплейсов
Общая инфоормация
На этом сайте представлена детальная спецификация каждого из потоков, которая содержит ссылку на данный метод, описание каждого из полей и пример входящих и исходящих json.
- значения времени передаются и хранятся в UTC
- некоторые поля обязательны для заполнения только если передан соответствующий массив, в спецификации в данном случае в столбце с признаком обязательности будет обозначение "sometimes"
Для доступа в тестовую или продовую среду необходимо указать в URL метода вместо *** данные, полученные вами от менеджера FM Logistic.
Release notes
Авторизация в Merchant-API
Запрос токена
Метод позволяет получить токен для дальнейшей работы с Merchant-API.
POST - https://***.wcp.fmlogistic.ru/auth/auth/token
curl --location 'https://***.wcp.fmlogistic.ru/auth/auth/token' \
--header 'Accept: application/json' \
--header 'Accept-Language: ru' \
--header 'Content-Type: application/json' \
--data-raw '{
"username": "TEST",
"password": "****"
}'
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
username | str(50) | true | Логин пользователя |
password | str(255) | true | Пароль |
Обработка полученного ответа
Ответ от системы при успешном прохождении авторизации:
Status-Code: 200 OK
{
"message": "Токен успешно создан.",
"data": {
"accessToken": "11264770|8hRKhe4YuwjPGRZxcTrcF2JAmZLYtMUfnmDdUIMK27b299",
"accessTokenExpiresAt": "2025-01-20T18:47:11.000000Z",
"refreshToken": "11264770|8hRKhe4YuwjPGRZxcTrcF2JAmZLYtMUfnmDdUIMK27b299",
"refreshTokenExpiresAt": "2025-01-22T01:47:11.000000Z",
"abilityGroups": [
"merchant"
],
"activities": [
"TST"
]
}
}
Параметр | Тип данных | Описание |
---|---|---|
accessToken | str() | Токен |
accessTokenExpiredAt | str() | Дата и время до которого действует токен |
refreshToken | str() | Refresh токен |
refreshTokenExpiredAt | str() | Дата и время до которого действует refresh токен |
abilityGroups | str() | Роль пользователя |
activities | str() | WMS активности, доступные данному пользователю |
curl --location 'https://***.wcp.fmlogistic.ru/auth/auth/refresh-token' \
--header 'Accept-Language: ru' \
--header 'Authorization: Bearer {{auth_api_refresh_token}}'
Для продления действия accessToken используйте метод GET - http://***.wcp.fmlogistic.ru/auth/auth/refresh-token
, передав refreshToken.
accessToken действует 300 минут. refreshToken действует 2160 минут. По истечении действия refreshToken необходимо получить новые данные через авторизацию и метод
POST - http://***.wcp.fmlogistic.ru/auth/auth/token
В случае введния некорректных учетных данных вы получите ошибку 422.
Товары
Артикул - единица товара, имеющая уникальный набор признаков, отличающий его от другого ассортимента.
Мастер-данные товаров - информация по товару, которая позволяет обрабатывать товар складской системой и отличать его от других товаров клиента. Ниже приведены методы, используемые для работы с товарами.
Создание артикулов
Метод CreateProducts
POST - https://***.wcp.fmlogistic.ru/api/v2/products
Метод используется для создания и обновления данных для одного или нескольких артикулов.
Unique key: activityCode, sku
curl --location 'https://***.wcp.fmlogistic.ru/api/v2/products' \
--header 'accept: application/vnd.api+json' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '[
{
"supplierCode":"TEST_SUPPLIER",
"activityCode":"TST",
"sku":"TEST_SKU",
"name":"Набор тестовый",
"brand":"Мой бренд",
"merchantReference":"111111",
"orderUnitCode":"PCS",
"isLabeling": false,
"dangerClassCode":"4",
"storageClassCode":"A",
"abcClass":"C",
"xyzClass":"Z",
"unitPrice": 100.5,
"shelfLifeDays": 365,
"preExpiryDays": 120,
"hasBatch": false,
"additionalData": { "data":"test" },
"isOversize": false,
"contractDates": [
{
"type":"inbound",
"shelfLifeType":"days",
"shelfLifeValue": 280
},
{
"type":"outbound",
"shelfLifeType":"percent",
"shelfLifeValue": 50
}
],
"serialValidationRegex": ".*",
"serialTypes": [
{
"code": "KMperfume"
}
],
"shelfLifeInputType": "expired_based",
"autoCorrectionExpiryDate": "nochange",
"autoCorrectionManufacturingDate": "nochange",
"logisticVariants":[
{
"unitCode":"PCS",
"width": 100,
"length": 100,
"height": 100,
"weight": 1000,
"isMain": true,
"baseUnitQty": 1,
"barcodes":[
{
"type":"EAN13",
"code":"111111111111",
"gtin":"0111111111111",
"isMain": true
}
]
},
{
"unitCode":"BOX",
"width": 1000,
"length": 1000,
"height": 1000,
"weight": 10000,
"isMain": false,
"baseUnitQty": 10,
"barcodes":[
{
"type":"EAN13",
"code":"111111111111",
"gtin":"0111111111111",
"isMain": false
}
]
}
],
"categories":[
{
"code":"Care"
}
],
"marketplacesParameters" : [
{
"marketplaceCode" : "wildberries",
"sku" : "TEST SKU WB",
"name" : "Набор тестовый",
"settings" : {
"decreaseFromStock" : 10,
"percentageFromStock" : 20,
"roundingRule" : "lower",
"minQtyThreshold" : 10,
"decreaseQtyShownUnderThreshold" : 5,
"maxQtyShownUnderThreshold" : 5,
"marketplaceCategory" : "Care",
"sizeCategory" : "mgt",
"baseUnitQty" : 10,
"markdownCategory" : null
}
}
]
}
]'
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
supplierCode | str(255) | false | Код поставщика |
activityCode | str(255) | true | Код активности |
sku | str(255) | true | Код артикула |
name | str(255) | true | Наименование артикула |
brand | str(255) | false | Бренд |
merchantReference | str(255) | false | Код артикула в системе клиента |
orderUnitCode | str(255) | false | Единица измерения, в которой заказывается товар по умолчанию |
isLabeling | boolean | false | Требует ли товар русификации. Значения: true / false. |
dangerClassCode | str(255) | false | Класс опасности |
storageClassCode | str(255) | false | Класс хранения |
abcClass | str(2) | false | Класс ротации |
xyzClass | str(2) | false | Класс ротации |
unitPrice | float8 | false | Цена за штуку |
shelfLifeDays | int4 | false | Срок годности |
preExpiryDays | int4 | false | Дни безопасности |
hasBatch | boolean | false | Требует ввода партии при приеме. Значения: true / false |
additionalData | json | false | Дополнительная информация |
isOversize | boolean | false | Признак негабаритного товара. Значения: true / false |
contractDates | array | false | Массив данных, сожержащий информацию по правилам приема/отбора сроков годности для данного товара |
type | str(enum) | sometimes | Правило применимо к заказу или к приемке. Значения: inbound/outbound |
shelfLifeType | str(enum) | sometimes | В чем измеряется допустимый срок годности: days, percent |
shelfLifeValue | str(255) | sometimes | Значение допустимого срока годности в указанных единицах измерения |
serialValidationRegex | str(255) | false | Настройки маски кода, если отличается от стандартной для данного типа маркировки |
serialTypes | array | false | Массив данных, содржащий информацию по типа кодов маркировки для данного товара |
code | str(255) | someimes | Тип маркировки |
shelfLifeInputType | str(enum) | false | Формат контроля сроков годности на приемке. Возможные варианты: expired_only -> только срок годности, manufacturing_only -> только дата производства, expired_based -> срок годности вводится, дата производства высчитывается из Срока жизни, manufacturing_based -> дата производства вводится, срок годности высчитывается из Срока жизни, not_managed -> нет управления датами, input_both -> обе даты вводятся. По умолчанию not_managed |
autoCorrectionExpiryDate | str(enum) | false | Округление даты окончания срока годности при приеме: nochange -> Принимать введённое значение, firstofmonth -> Заменять на первый день месяца, lastofmonth -> Заменять на последний день месяца. По умолчанию nochange |
autoCorrectionManufacturingDate | str(enum) | false | Округление даты производства при приеме: nochange -> Принимать введённое значение, firstofmonth -> Заменять на первый день месяца, lastofmonth -> Заменять на последний день месяца. По умолчанию nochange |
logisticVariants | array | false | Массив данных, содержащий информацию по логистическим вариантам для данного товара |
unitCode | str(255) | sometimes | Единица измерения |
width | int8 | false | Ширина, мм |
length | int8 | false | Длина, мм |
height | int8 | false | Высота, мм |
weight | int8 | false | Вес, г |
isMain | boolean | false | Признак основного логистического варианта. Значения: true / false |
baseUnitQty | int4 | sometimes | Вложенность от isMain |
barcodes | array | false | Массив, содержащий информацию по штрих-кодам для логистического варианта |
type | str(255) | false | Тип штрих-кода |
code | str(255) | sometimes | Код |
gtin | str(255) | false | gtin |
isMain | boolean | true | Признак основного ШК. Значения: true / false |
marketplacesParameters | array | false | Массив, содержащий настройки для маркетплейсов для FBS |
marketplaceCode | str(enum) | false | Код маркетплейса. Возможные значения: wildberries, ozon, yandexmarket, sbermegamarket, lemanapro, lamoda |
sku | str(255) | false | Код артикула для маркетплейса |
name | str(255) | false | Наименование артикула |
settings | object | false | Правила для определения переданного количества на сток маркетплейсов |
decreaseFromStock | int4 | false | Количество единиц на которое уменьшается значение стока перед расчетом % остатков |
percentageFromStock | int4 | false | Процент разрешенного количества на стоке для конкретного маркетплейса |
roundingRule | str(enum) | false | Правило округления для percentageFromStock. Значения: lower, upper, arithmetic. Если не указано, то значение по умолчанию lower |
minQtyThreshold | int4 | false | |
decreaseQtyShownUnderThreshold | int4 | false | |
maxQtyShownUnderThreshold | int4 | false | |
marketplaceCategory | str(255) | false | Категория товара на маркетплейсе |
sizeCategory | str(enum) | false | Категория размера: kgt, mgt, skgt. Если не указано, то значение по умолчанию mgt |
baseUnitQty | int4 | false | Количество единиц для продажи в одной позиции. Если не указано, то значение по умолчанию 1 |
markdownCategory | str(255) | false | Категория уценки товара |
categories | array | false | Массив, содержащий информацию по категориям товаров |
code | str(255) | false | Код категории, к которой относится товар |
Получение информации по одному или нескольким артикулам
Метод GetProducts
GET - https://***.wcp.fmlogistic.ru/api/v2/products
Метод используется для получения данных по одному или нескольким артикулам.
Квадратные скобки [] указывают на то, что параметр может принимать несколько значений
curl --location --globoff 'https://***.wcp.fmlogistic.ru/api/v2/products?sku[]=TEST_SKU&ActivityCode=TST&limit=100&page=1' \
--header 'Authorization: Bearer ******'
Request response 200 OK
{
"data": [
{
"id": "9d540d2e-ca67-4fb7-8dc0-f8b8a18cd4c2",
"supplierCode":"TEST_SUPPLIER",
"activityCode":"TST",
"sku":"TEST_SKU",
"name":"Набор тестовый",
"brand":"Мой бренд",
"merchantReference":"111111",
"orderUnitCode":"PCS",
"isLabeling": false,
"dangerClassCode":"4",
"storageClassCode":"B",
"abcClass":"C",
"xyzClass":"Z",
"unitPrice": 100,5,
"isActive": false,
"shelfLifeDays": 365,
"preExpiryDays": 120,
"defaulReceptionPackageCode": "EUR"
"hasBatch": false,
"additionalData": { "data":"test" },
"isOversize": false,
"createdAt": "2024-10-25 08:00:39.000",
"updatedAt": "2024-10-25 08:00:39.000",
"contractDates": [
{
"type":"inbound",
"shelfLifeType":"days",
"shelfLifeValue": 280
},
{
"type":"outbound",
"shelfLifeType":"percent",
"shelfLifeValue": 50
}
],
"serialValidationRegex": ".*",
"serialTypes": [
{
"code": "KMperfume"
}
],
"shelfLifeInputType": "expired_based",
"autoCorrectionExpiryDate": "nochange",
"autoCorrectionManufacturingDate": "nochange",
"logisticVariants":[
{
"id": "9d540d2e-ca67-4fb7-8dc0-f8b8a18cd4c3",
"unitCode":"PCS",
"width": 100,
"length": 100,
"height": 100,
"weight": 1000,
"volume": 1000000,
"isMain": true,
"baseUnitQty": 1,
"createdAt": "2024-10-25 08:00:39.000",
"updatedAt": "2024-10-25 08:00:39.000",
"barcodes":[
{
"type":"EAN13",
"code":"111111111111",
"gtin":"111111111111",
"isMain": true
}
]
},
{
"id": "9d540d2e-ca67-4fb7-8dc0-f8b8a18cd4c4",
"unitCode":"BOX",
"width": 1000,
"length": 1000,
"height": 1000,
"weight": 10000,
"volume": null,
"isMain": false,
"baseUnitQty": 10,
"createdAt": "2024-10-25 08:00:39.000",
"updatedAt": "2024-10-25 08:00:39.000",
"barcodes":[
{
"type":"EAN13",
"code":"111111111111",
"gtin":"111111111111",
"isMain": false
}
]
}
],
"categories":[
{
"code":"Care"
}
],
"marketplacesParameters" : [
{
"marketplaceCode" : "wildberries",
"sku" : "TEST SKU WB",
"name" : "Набор тестовый",
"settings" : {
"decreaseFromStock" : 10,
"percentageFromStock" : 20,
"roundingRule" : "lower",
"minQtyThreshold" : 10,
"decreaseQtyShownUnderThreshold" : 5,
"maxQtyShownUnderThreshold" : 5,
"marketplaceCategory" : "Care",
"sizeCategory" : "mgt",
"baseUnitQty" : 10,
"markdownCategory" : null
}
}
]
}
],
"meta": {
"limit": 100,
"page": 1,
"total": 1,
"total_pages": 1
}
}
Параметр | Тип данных | Описание |
---|---|---|
id | uuid | id товара |
supplierCode | str(255) | Код поставщика |
activityCode | str(255) | Код активности |
sku | str(255) | Код артикула |
name | str(255) | Наименование артикула |
brand | str(255) | Бренд |
merchantReference | str(255) | Код артикула в системе клиента |
orderUnitCode | str(255) | Единица измерения, в которой заказывается товар по умолчанию |
isLabeling | boolean | Требует ли товар русификации. Значения: true/false |
dangerClassCode | str(255) | Класс опасности |
storageClassCode | str(255) | Класс хранения |
abcClass | str(2) | Класс ротации |
xyzClass | str(2) | Класс ротации |
unitPrice | float8 | Цена за штуку |
isActive | boolean | Новый товар (для приема). Значения: true/false |
shelfLifeDays | int4 | Cрок годности |
preExpiryDays | int4 | Дни безопасности |
defaulReceptionPackageCode | str(255) | Тип тары по умолчанию |
hasBatch | boolean | Ввод партии на приемке. Значения: true/false |
additionalData | json | Дополнительная информация |
createdAt | timestamp | Время создания записи |
updatedAt | timestamp | Время последнего обновления |
isOversize | boolean | Признак негабаритного товара. Значения: true/false |
contractDates | array | Массив данных, сожержащий информацию по правилам отбора сроков годности для данного товара |
type | str(enum) | Тип. Значения: inbound/outbound |
shelfLifeType | str(enum) | В чем измеряется допустимый срок годности: days, percent |
shelfLifeValue | str(255) | Значение допустимого срока годности |
serialValidationRegex | str(255) | Настройки маски кода, если отличается от стандартной для данного типа маркировки |
serialTypes | array | Массив данных, содржащий информацию по типа кодов маркировки для данного товара |
code | str(255) | Тип маркировки |
shelfLifeInputType | str(enum) | Формат контроля сроков годности на приемке. Возможные варианты: expired_only -> только срок годности, manufacturing_only -> только дата производства, expired_based -> срок годности вводится, дата производства высчитывается из Срока жизни, manufacturing_based -> дата производства вводится, срок годности высчитывается из Срока жизни, not_managed -> нет управления датами, input_both -> обе даты вводятся. По умолчанию not_managed |
autoCorrectionExpiryDate | str(enum) | Округление даты окончания срока годности при приеме: nochange -> Принимать введённое значение, firstofmonth -> Заменять на первый день месяца, lastofmonth -> Заменять на последний день месяца. По умолчанию nochange |
autoCorrectionManufacturingDate | str(enum) | Округление даты производства при приеме: nochange -> Принимать введённое значение, firstofmonth -> Заменять на первый день месяца, lastofmonth -> Заменять на последний день месяца. По умолчанию nochange |
logisticVariants | array | Массив данных, содержащий информацию по логистическим вариантам для данного товара |
id | uuid | id логистического варианта |
unitCode | str(255) | Единица измерения |
width | int8 | Ширина, мм |
length | int8 | Длина, мм |
height | int8 | Высота, мм |
weight | int8 | Вес, г |
volume | int8 | Объем |
isMain | boolean | Признак основного логистического варианта. Значения: true/false |
createdAt | timestamp | Время создания записи |
updatedAt | timestamp | Время последнего обновления |
baseUnitQty | int4 | Вложенность от основного логистического варианта |
barcodes | array | Массив, содержащий информацию по штрих-кодам для данного товара |
type | str(255) | Тип ШК |
code | str(255) | Код ШК |
gtin | str(255) | GTIN |
isMain | boolean | Признак основного ШК. Значения: true/false |
createdAt | timestamp | Время создания записи |
updatedAt | timestamp | Время последнего обновления |
marketplacesParameters | array | Массив, содержащий настройки для маркетплейсов для FBS |
marketplaceCode | str(enum) | Код маркетплейса. Возможные значения: wildberries, ozon, yandexmarket, sbermegamarket, lemanapro, lamoda |
sku | str(255) | Код артикула для маркетплейса |
name | str(255) | Наименование артикула |
settings | json | Правила для определения переданного количества на сток маркетплейсов |
decreaseFromStock | int4 | Количество единиц на которое уменьшается значение стока перед расчетом % остатков |
percentageFromStock | int4 | Процент разрешенного количества на стоке для конкретного маркетплейса |
roundingRule | str(enum) | Правило округления для percentageFromStock. Значения: lower, upper, arithmetic. Если не указано, то значение по умолчанию lower |
minQtyThreshold | int4 | |
decreaseQtyShownUnderThreshold | int4 | |
maxQtyShownUnderThreshold | int4 | |
marketplaceCategory | str(255) | Категория товара на маркетплейсе |
sizeCategory | str(enum) | Категория размера: kgt, mgt, skgt. Если не указано, то значение по умолчанию mgt |
baseUnitQty | int4 | Количество единиц для продажи в одной позиции. Если не указано, то значение по умолчанию 1 |
markdownCategory | str(255) | Категория уценки товара |
categories | array | Массив, содержащий информацию по категориям товаров |
code | str(255) | Код категории, к которой относится товар |
Query parameters
Вы можете использовать следующие параметры для фильтрации получаемых данных
Вы можете передать массив значений, добавляя квадратные скобки [] к имени параметра
Параметр | Описание |
---|---|
activityCode | Возвращает артикул по коду активности |
id | Возвращает артикул по id |
limit | Ограничение количества возвращаемых записей. По умолчанию устанавливается 100, если не передано |
page | Смещение выборки. По умолчанию устанавливается 1, если не передано |
Процесс x-dock
Кросс-докинг — это процесс приёмки и отгрузки товаров через склад напрямую, без размещения в зоне хранения. В процессе сортировки при кросс докинге товар не извлекается, а собирается в виде конкретного заказа, без вскрытия фабричной упаковки.
Создание supports и одного или нескольких заказов на выход
Метод CreateSuppliesXdock
POST - https://***.wcp.fmlogistic.ru/api/v2/supplies/xdock
Метод используется для создания суппортов в статусе Expected и одного или нескольких заказов на выход.
curl --location 'https://***.wcp.fmlogistic.ru/api/v2/supplies/xdock' \
--header 'accept: application/vnd.api+json' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '[
{
"reference": "XDOCK_TEST",
"carrierCode": "DPD",
"truckNumber": "1343",
"trailerNumber": "123444556",
"driver":
{
"name": "Ivan",
"phone": "80000000000"
},
"plannedArrivalDate":"2024-12-30T12:00:00+03:00",
"comment": "Тестовый",
"additionalData": { "data": "test" },
"orders": [
{
"activityCode": "TST",
"supplierCode": "TEST_SUPP",
"documentReference": "XDOCK_1",
"documentDate": "2025-06-17",
"customerDocumentReference": "XDOCK_1_TEST",
"pickupPointCode": "2215",
"tracking": {
"externalSystemCode": "WB",
"orderReference": "1234556"
},
"marketplaceCode": "wildberries",
"carrierCode": "DPD",
"shippingMethod": "LTL",
"consigneeCode": "TEST_CONS",
"requisites": [
{
"type": "main",
"name": "TEST"
}
],
"plannedShippingDate": "2025-06-19",
"plannedShippingTime": "18:00",
"plannedDeliveryDate": "2025-06-20",
"deliveryTime":
{
"from": "18:00",
"to": "22:00"
},
"shippingInstructions": "Особые инструкции",
"deliveryInstructions": "Особые инструкции",
"comment": "Комментарий",
"additionalData": { "data": "test" },
"supports":[
{
"sscc": "662030081000006569",
"packageCode": "BOX",
"width": "300",
"length": "300",
"height": "300",
"weight": "1000",
"parentSSCC": "338001000662978023",
"additionalData": { "data": "test" }
}
]
}
],
"consolidationSupports":[
{
"sscc": "338001000662978023",
"packageCode": "EUR",
"width": "800",
"length": "1200",
"height": "2000",
"weight": "10000",
"additionalData": { "data": "test" }
}
]
}
]'
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
reference | str(255) | true | Номер раунда |
carrierCode | str(255) | false | Код перевозчика (для документа приемки) |
truckNumber | str(255) | false | Номер машины |
trailerNumber | str(255) | false | Номер прицепа |
driver | array | false | Массив для передачи данных о водителе |
name | str(255) | false | ФИО водителя |
phone | str(255) | false | Телефон водителя |
plannedArrivalDate | date-time | false | Плановая дата и время поставки |
comment | text | false | Любая информация для склада |
additionalData | json | false | Дополнительная информация |
orders | array | true | Передача данных по заказу |
activityCode | str(255) | true | Код активности |
supplierCode | str(255) | true | Код поставщика |
documentReference | str(255) | true | Номер заказа внешний |
documentDate | date | false | Дата документа |
customerDocumentReference | str(255) | false | Дополнительный номер заказа |
pickupPointCode | str(255) | false | Код пункта выдачи |
tracking | json | false | Информация по трек-номеру/ам заказа/ов |
externalSystemCode | str(255) | false | Внешняя система |
orderReference | str(255) | false | Номер заказа в этой системе, трек-номер |
marketplaceCode | str(255) | false | Маркетплейс |
carrierCode | str(255) | false | Перевозчик (для заказа на отгрузку) |
shippingMethod | str(50) | false | Тип доставки. Возможные значения: LTL, FTL |
consigneeCode | str(255) | true | Код грузополучателя |
requisites | array | false | Передача информации по реквизитам грузополучателя. Детали см. в разделе "Requisites" |
plannedShippingDate | date | true | Плановая дата отгрузки |
plannedShippingTime | time | false | Плановое время отгрузки |
plannedDeliveryDate | date | false | Плановая дата доставки |
deliveryTime | object | false | Передача данных по времени доставки |
from | time | false | Доставить с (временной интрвал) |
to | time | false | Доставить до (временной интревал) |
shippingInstructions | text | false | Инструкции по отгрузке |
deliveryInstructions | text | false | Инструкции по доставке |
comment | text | false | Любая информация для склада |
additionalData | json | false | Дополнительная информация |
supports | array | true | Передача данных по суппортам |
sscc | str(255) | true | SSCC |
packageCode | str(255) | true | Код упаковки |
width | int8 | false | Ширина, мм |
length | int8 | false | Длина, мм |
height | int8 | false | Высота,мм |
weight | int8 | false | Вес, гр |
parentSSCC | str(255) | false | sscc консолидационного суппорта |
additionalData | json | false | Дополнительные данные |
consolidationSupports | array | false | Массив для передачи данных по консолидационным суппортам |
sscc | str(255) | false | SSCC консолидационные |
packageCode | str(255) | false | Код упаковки |
width | int8 | false | Ширина, мм |
length | int8 | false | Длина, мм |
height | int8 | false | Высота, мм |
weight | int8 | false | Вес, гр |
additionalData | json | false | Дополнительная информация |
Заказ на вход
Заказ на вход (приемка) - размещенный заказ на прием товара на складское хранение.
Создание заказа на вход
Метод CreateSuppliesInbound
POST - https://***.wcp.fmlogistic.ru/api/v2/supplies/inbound
Метод используется для создания или обновления одного или нескольких заказов на приемку. Обновить приемку можно только в статусе WMS "draft" и "to_receive".
Unique key: activityCode, documentReference, documentDate
curl --location 'https://***.wcp.fmlogistic.ru/api/v2/supplies/inbound' \
--header 'accept: application/vnd.api+json' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '[
{
"type": "supply",
"supplier": {
"code": "TEST_SUPP",
"name": "TEST_SUPP_TEST"
},
"carrierCode": "DPD",
"documentDate": "2025-01-22",
"documentReference": "TEST_SUPPLY",
"merchantReference": "1234",
"activityCode": "TST",
"arrivalDatePlan": "2025-03-11 20:00:00.000",
"source": "Приемка от поставщика",
"comment": "Тестовая поставка",
"additionalData": { "data": "test" },
"containers": [
{
"code": "yUv2nUjQK7FLtcVTip",
"packageCode": "BOX",
"length": 407,
"height": 62,
"width": 33,
"weight": 3268,
"isSerialAggregate": true,
"aggregateType": "box",
"additionalData": { "data": "test" }
}
],
"serialAggregates": [
{
"code": "8REGwMO3GpueIJ943B",
"type": "box",
"containerCode": "yUv2nUjQK7FLtcVTip",
"externalStatus": "CREATED",
"externalType": "BOX",
"additionalData": {
"externalUUID": "877108a4-e687-4421-a9b4-0ef7f449a5e3"
}
}
],
"supplyLines": [
{
"lineNumber": 1,
"sku": "TEST_SKU",
"logisticVariantCode": "BOX",
"qtyPlan": 1,
"batch": "11111111",
"manufacturingDate": "2024-12-29",
"expiryDate": "2026-12-29",
"minExpiryDate": "2026-08-29",
"maxExpiryDate": "2027-12-29",
"blockReasonCode": null,
"shelfLifeType": "days",
"shelfLifeValue": 876,
"gtdNumber": "11111111",
"comment": "Короб агрегирован",
"receptionInstructions": "инструкция",
"additionalData": { "data": "test" },
"reservationKey": "COPACK",
"expectedStocks": [
{
"sscc": "662030081000006231",
"containerCode": "yUv2nUjQK7FLtcVTip",
"packageCode": "EUR",
"logisticVariantCode": "BOX",
"sku": "TEST_SKU",
"totalQty": 1,
"blockReasonCode": null,
"batch": "11111111",
"expiryDate": "2026-12-29",
"manufacturingDate": "2024-12-29",
"gtdNumber": "11111111",
"reservationKey": "COPACK",
"length": 407,
"height": 62,
"width": 33,
"weight": 3268,
"additionalData": { "data": "test" }
}
],
"serialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"code": "0104610267860291215)KijQqi8&pmM!,Не",
"expectedStockSSCC" : "662030081000006231",
"externalStatus": "",
"serialAggregates": ["8REGwMO3GpueIJ943B"],
"additionalData": {},
"childSerialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"code": "0104610267860291215ABCDEfghijiLMNOQ",
"externalStatus": "",
"additionalData": {}
},
{
"code": "0104610267860291215ABCDEflhijKLMNOQ",
"externalStatus": "",
"additionalData": {}
}
]
}
]
},
{
"code": "0104610267860291215)KijQqi4&pmMhlj0",
"expectedStockSSCC" : "662030081000006231",
"externalStatus": "",
"serialAggregates": ["8REGwMO3GpueIJ943B"],
"additionalData": {},
"childSerialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"code": "0104610267860291215ABCDEfghijiLMNOQ",
"externalStatus": "",
"additionalData": {}
},
{
"code": "0104610267860291215ABCDEflhijKLMNOQ",
"externalStatus": "",
"additionalData": {}
}
]
}
]
}
]
}
]
}
]
}
]'
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
type | str(255) | false | Тип поставки. Варианты заполнения: supply, inbound |
supplier | object | true | Массив данных, в котором передается информация по поставщику. Детали см. в разделе "Supplier". acivityCode можно не передавать в этом массиве, он будет равен переданному выше |
carrierCode | object | false | Код перевозчика |
documentDate | date | false | Дата документа |
documenReference | str(255) | true | Номер заказа на вход |
merchantReference | str(255) | false | Номер приемки клиента |
activityCode | str(255) | true | Код активности |
arrivalDatePlan | datetime | true | Плановая дата поставки |
source | str(255) | false | Источник поставки |
containers | array | false | Массив данных, в котором передаются данные для доверительной приемки |
code | str(255) | sometimes | Код контейнера для доверительной приемки |
packageCode | str(255) | sometimes | Код упаковки |
width | bigInt | false | Ширина, в мм |
length | bigInt | false | Длина, в мм |
height | bigInt | false | Высота, в мм |
weight | bigInt | false | Вес, в граммах |
isSerialAggregate | boolean | false | Признак того, что контейнер является также агрегатом серийных номеров |
aggregateType | enum | true if "isSerialAggregate": true | Тип агрегата. Один из: virual, box, group, pallet. consolidation |
additionalData | json | false | Дополнительные данные |
serialAggregates | array | false | Массив для передачи данных по агрегатам серийных номеров |
code | str(255) | sometimes | Код агрегата |
containerCode | str(255) | false | Код контейнера, которому принадлежит агрегат |
type | str(enum) | sometimes | Тип агрегации, возможные значения virual, box, group, pallet, consolidation |
externalType | str(255) | false | Тип агрегата |
externalStatus | str(255) | false | Статус агрегата |
additionalData | json | false | Дополнительные данные |
comment | text | false | Комментарий |
additionalData | json | false | Дополнительная информация |
supplyLines | array | true | Массив для передачи данных по линиям приемки |
lineNumber | integer | false | Номер линии |
sku | str(255) | true | Код артикула |
logisticVariantCode | str(255) | false | Единица измерения |
qtyPlan | bigInt | true | Плановое количество |
batch | str(255) | false | Номер партии |
manufacturingDate | date | false | Дата производства |
expiryDate | date | false | Дата окончания срока годности |
minExpiryDate | date | false | Минимальная дата срока годности для приема |
maxExpiryDate | date | false | Максимальная дата срока годности для приема |
blockReasonCode | str(255) | false | Код блокировки |
shelfLifeType | str(enum) | false | В чем измеряется допустимый срок годности: days, percent |
shelfLifeValue | int | false | Значение допустимого срока годности |
gtdNumber | str(255) | false | Номер ГТД. Информационное поле |
comment | text | false | Комментарий |
receptionInstructions | text | false | Инструкция по приемке |
additionalData | json | false | Дополнительная информация |
reservationKey | str(255) | false | Признак для резервации товара |
expectedStocks | array | false | Массив для передачи ожидаемого стока. Для доверительной приемки на складе |
sscc | str(255) | true, if containerCode is null | Код sscc |
containerCode | str(255) | true, if sscc is null | Код контейнера. Совпадает с одним из переданных в массиве containers. |
packageCode | str(255) | false | Код упаковки |
sku | str(255) | false | Код артикула |
total_qty | int | true | Количество |
logisticVariantCode | str(255) | false | Единица измерения |
blockReasonCode | str(255) | false | Код блокировки |
batch | str(255) | false | Партия |
gtdNumber | str(255) | false | GTD |
manufacturingDate | date | false | Дата производства |
expiryDate | date | false | Дата окончания срока годности |
reservationKey | str(255) | false | Код резервации |
width | int | false | Ширина суппорта, мм |
length | int | false | Длина суппорта, мм |
height | int | false | Высота суппорта, мм |
weight | int | false | Вес суппорта, г |
reservationKey | str(255) | false | Код резервации |
serialNumbers | array | false | Массив для передачи данных по серийным номерам |
type | str(255) | sometimes | Тип серийного номера |
codes | array | false | Массив для передачи кодов, относящихся к этому типу |
code | str(255) | sometimes | Значение серийного номера |
expectedStockSSCC | str(255) | false | Связанный SSCC для данного кода из массива ExpectedStocks |
externalStatus | str(255) | false | Статус кода в системе ЧЗ |
additionalData | json | false | Дополнительная информация |
childSerialNumbers | array | false | Массив для передачи дочерних кодов, входящих в переданный ранее код. Например, для KIN, KIK |
type | str(255) | sometimes | Передача типа серийного номера дочерних кодов |
codes | array | false | Массив для передачи значений дочерних кодов |
code | str(255) | sometimes | Значение серийного номера |
externalStatus | str(255) | false | Статус кода в системе ЧЗ |
additionalData | json | false | Дополнительная информация |
serialAggregates | array | false | Массив для передачи агрегатов, в которые входит переданный код |
Получение информации по заказам на вход
Метод GetSupplies
GET - https://***.wcp.fmlogistic.ru/api/v2/supplies/inbound
Метод используется для получения информации по одному или нескольким заказам на приемку.
Квадратные скобки [] указывают на то, что параметр может принимать несколько значений
curl --location --globoff 'https://***.wcp.fmlogistic.ru/api/v2/supplies/inbound?documentReference[]=TEST_SUPPLY&ActivityCode=TST&limit=100&page=1' \
--header 'Authorization: Bearer ******'
Request response 200 OK
{
"data": [
{
"id": "fc3ebcbd-4ba0-492e-80e5-ee6d9806f012",
"type": "supply",
"supplier": {
"code": "TEST_SUPP",
"name": "TEST_SUPP_TEST"
},
"carrierCode": "DPD",
"documentDate": "2025-01-22",
"documentReference": "TEST_SUPPLY",
"merchantReference": "1234",
"status": "recieved",
"statusChanges": [
{
"statusBefore": "to_receive",
"statusAfter": "in_progress",
"eventTime": "2025-03-11 19:00:00.000"
},
{
"statusBefore": "in_progress",
"statusAfter": "recieved",
"eventTime": "2025-03-11 22:00:00.000"
}
],
"roundId": "fc3ebcbd-5ba0-492e-80e5-ee6d9806f017",
"activityCode": "TST",
"arrivalDatePlan": "2025-03-11 20:00:00.000",
"arrivalDateFact": "2025-03-11 19:00:00.000",
"gateCode": "25/1",
"source": "Приемка от поставщика",
"comment": "Тестовая поставка",
"additionalData": { "data": "test" },
"containers": [
{
"code": "yUv2nUjQK7FLtcVTip",
"packageCode": "BOX",
"length": 407,
"height": 62,
"width": 33,
"weight": 3268,
"isSerialAggregate": true,
"aggregateType": "box",
"additionalData": { "data": "test" }
}
],
"serialAggregates": [
{
"code": "8REGwMO3GpueIJ943B",
"type": "box",
"containerCode": "yUv2nUjQK7FLtcVTip",
"status": "in_warehouse",
"externalStatus": "CREATED",
"externalType": "BOX",
"additionalData": {
"externalUUID": "877108a4-e687-4421-a9b4-0ef7f449a5e3"
}
}
],
"createdAt": "2025-03-08 16:00:00.000",
"updatedAt": "2025-03-11 22:00:00.000",
"closedAt": null,
"supplyLines": [
{
"id": "9ada4c4e-4828-42e8-b49a-007d845f1e9f",
"lineNumber": 1,
"sku": "TEST_SKU",
"logisticVariantCode": "BOX",
"qtyPlan": 1,
"qtyFact": 1,
"batch": "11111111",
"manufacturingDate": "2024-12-29",
"expiryDate": "2026-12-29",
"minExpiryDate": "2026-08-29",
"maxExpiryDate": "2027-12-29",
"blockReasonCode": null,
"shelfLifeType": "days",
"shelfLifeValue": 876,
"gtdNumber": "11111111",
"comment": "Короб агрегирован",
"receptionInstructions": "инструкция",
"additionalData": { "data": "test" },
"reservationKey": "COPACK",
"createdAt": "2025-03-08 16:00:00.000",
"updatedAt": "2025-03-11 22:00:00.000",
"expectedStocks": [
{
"sscc": "662030081000006231",
"containerCode": "yUv2nUjQK7FLtcVTip",
"packageCode": "EUR",
"logisticVariantCode": "BOX",
"sku": "TEST_SKU",
"totalQty": 1,
"blockReasonCode": null,
"batch": "11111111",
"expiryDate": "2026-12-29",
"manufacturingDate": "2024-12-29",
"gtdNumber": "11111111",
"reservationKey": "COPACK",
"length": 407,
"height": 62,
"width": 33,
"weight": 3268,
"additionalData": { "data": "test" }
}
],
"serialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"code": "0104610267860291215)KijQqi8&pmM!,Не",
"status": "in_warehouse",
"expectedStockSSCC" : "662030081000006231",
"externalStatus": "",
"serialAggregates": [ "8REGwMO3GpueIJ943B" ],
"additionalData": {},
"childSerialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"code": "0104610267860291215ABCDEfghijiLMNOQ",
"externalStatus": "",
"additionalData": {}
},
{
"code": "0104610267860291215ABCDEflhijKLMNOQ",
"externalStatus": "",
"additionalData": {}
}
]
}
]
},
{
"code": "0104610267860291215)KijQqi4&pmMhlj0",
"status": "in_warehouse",
"expectedStockSSCC" : "662030081000006231",
"externalStatus": "",
"serialAggregates": [ "8REGwMO3GpueIJ943B" ],
"additionalData": {},
"childSerialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"code": "0104610267860291215ABCDEfghijiLMNOQ",
"externalStatus": "",
"additionalData": {}
},
{
"code": "0104610267860291215ABCDEflhijKLMNOQ",
"externalStatus": "",
"additionalData": {}
}
]
}
]
}
]
}
],
"supplyDetails": [
{
"id": "9ada4c4e-4828-42e8-b49a-007d845f1e9p",
"blockReasonCode": null,
"sscc": "",
"sku": "TEST_SKU",
"logisticVariantCode": "PCS",
"activityCode": "TST",
"totalQty": 2,
"batch": "11111111",
"gtdNumber": "11111111",
"manufacturingDate": "2024-12-29",
"expiryDate": "2026-12-29",
"supplyReference": "TEST_SUPPLY",
"supplyId": "fc3ebcbd-4ba0-492e-80e5-ee6d9806f012",
"supplyLineId": "9ada4c4e-4828-42e8-b49a-007d845f1e9f",
"lineNumber": 1,
"createdAt": "2025-03-11 19:00:00.000",
"updatedAt": "2025-03-11 19:00:00.000",
"reservationKey": "COPACK",
"additionalData": { "data": "test" }
}
]
}
]
}
],
"meta": {
"limit": 100,
"page": 1,
"total": 1,
"total_pages": 1
}
}
Параметр | Тип данных | Описание |
---|---|---|
id | uuid | id приемки |
type | str(enum) | Тип поставки. Варианты заполнения: supply, inbound |
supplier | object | Массив данных, в котором передается информация по поставщику. Детали см. в разделе "Supplier" |
carrierCode | str(255) | Код перевозчика |
documentDate | date | Дата документа |
documenReference | str(255) | Номер заказа на вход |
merchantReference | str(255) | Номер приемки клиента |
status | str(enum) | Статус приемки. Возможные значения: draft, to_receive, in_progress, received, closed |
statusChanges | array | Массив данных, содержащий информацию о смене статусов приемки |
statusBefore | str(enum) | Предыдущее значение статуса приемки |
statusAfter | str(enum) | Новый статус приемки |
eventTime | timestamp | Время смены статуса |
activityCode | str(255) | Код активности |
roundId | uuid | id раунда |
gateCode | str(255) | Номер ворот |
arrivalDatePlan | datetime | Плановая дата поставки |
arrivalDateFact | datetime | Фактическая дата поставки |
source | str(255) | Источник поставки |
containers | array | Массив данных, в котором передаются данные для доверительной приемки |
code | str(255) | Код контейнера для доверительной приемки |
packageCode | str(255) | Код упаковки |
width | bigInt | Ширина, в мм |
length | bigInt | Длина, в мм |
height | bigInt | Высота, в мм |
weight | bigInt | Вес, в граммах |
isSerialAggregate | boolean | Признак того, что контейнер является также агрегатом серийных номеров |
aggregateType | str(enum) | Тип агрегата. Тип агрегации, возможные значения virual, box, group, pallet, consolidation |
additionalData | json | Дополнительные данные |
serialAggregates | array | Массив для передачи данных по агрегатам серийных номеров |
code | str(255) | Код агрегата. |
type | str(enum) | Тип агрегата. Тип агрегации, возможные значения virual, box, group, pallet, consolidation |
status | str(enum) | Статус агрегата в WMS. Возможные значения: expected, in_warehouse, picked, shipped |
containerCode | str(255) | Код контейнера, которому принадлежит агрегат |
externalType | str(255) | Тип агрегата |
externalStatus | str(255) | Статус агрегата |
additionalData | json | Дополнительные данные |
comment | text | Комментарий |
additionalData | json | Дополнительная информация |
createdAt | timestamp | Время создания записи |
updatedAt | timestamp | Время обновления записи |
closedAt | timestamp | Время закрытия приемки |
supplyLines | array | Массив для передачи данных по линиям приемки |
id | uuid | id линии приемки |
lineNumber | integer | Номер линии |
sku | str(255) | Код артикула |
logisticVariantCode | str(255) | Единица измерения |
qtyPlan | bigInt | Плановое количество |
qtyFact | bigInt | Фактическое количество |
batch | str(255) | Номер партии |
manufacturingDate | date | Дата производства |
expiryDate | date | Дата окончания срока годности |
minExpiryDate | date | Минимальная дата срока годности для приема |
maxExpiryDate | date | Максимальная дата срока годности для приема |
blockReasonCode | str(255) | Код блокировки |
shelfLifeType | str(enum) | В чем измеряется допустимый срок годности: days, percent |
shelfLifeValue | int | Значение допустимого срока годности |
gtdNumber | str(255) | Номер ГТД. Информационное поле |
comment | text | Комментарий |
receptionInstructions | text | Инструкция по приемке |
additionalData | json | Дополнительная информация |
reservationKey | str(255) | Признак для резервации товара |
createdAt | timestamp | Время создания записи |
updatedAt | timestamp | Время обновления записи |
expectedStocks | array | Массив для передачи ожидаемого стока. Для доверительной приемки на складе |
sscc | str(255) | Код sscc |
containerCode | str(255) | Код контейнера. Совпадает с одним из переданных в массиве containers. |
packageCode | str(255) | Код упаковки |
sku | str(255) | Код артикула |
total_qty | int | Количество |
logisticVariantCode | str(255) | Единица измерения |
blockReasonCode | str(255) | Код блокировки |
batch | str(255) | Партия |
gtdNumber | str(255) | GTD |
manufacturingDate | date | Дата производства |
expiryDate | date | Дата окончания срока годности |
reservationKey | str(255) | Код резервации |
width | int | Ширина суппорта, мм |
length | int | Длина суппорта, мм |
height | int | Высота суппорта, мм |
weight | int | Вес суппорта, г |
reservationKey | str(255) | Код резервации |
serialNumbers | array | Массив для передачи данных по серийным номерам |
type | str(255) | Тип серийного номера |
codes | array | Массив для передачи кодов, относящихся к этому типу |
code | str(255) | Значение серийного номера |
satus | str(enum) | Статус кода в WMS. Возможные значения: expected, in_warehouse, picked, shipped |
expectedStockSSCC | str(255) | Связанный SSCC для данного кода из массива ExpectedStocks |
externalStatus | str(255) | Статус кода в системе ЧЗ |
additionalData | json | Дополнительная информация |
childSerialNumbers | array | Массив для передачи дочерних кодов, входящих в переданный ранее код. Например, для KIN, KIK |
type | str(255) | Типа серийного номера дочерних кодов |
codes | array | Массив для передачи значений дочерних кодов |
code | str(255) | Значение серийного номера |
externalStatus | str(255) | Статус кода в системе ЧЗ |
additionalData | json | Дополнительная информация |
serialAggregates | array | Массив для передачи агрегатов, в которые входит переданный код |
supplyDetails | array | Детали приемки. Фактические данные |
id | uuid | id стока |
blockReasonCode | uuid | Код блокировки |
sscc | str(255) | Код SSCC |
sku | str(255) | Код артикула |
logisticVariantCode | str(255) | Код фасовки |
activityCode | str(255) | Код активности |
totalQty | int4 | Количество всего в базовых единицах |
batch | str(255) | Номер партии |
gtdNumber | str(255) | Номер ГТД |
manufacturingDate | date | Дата производства |
expiryDate | date | Дата окончания срока годности |
supplyReference | str(255) | Номер приемки |
supplyId | uuid | id приемки |
supplyLineId | uuid | id линии приемки |
lineNumber | str(255) | Номер линии |
createdAt | timestamp | Время создания записи |
updatedAt | timestamp | Время последнего обновления |
reservationKey | str(255) | Код резервации |
additionalData | json | Дополнительная информация |
Query parameters
Вы можете использовать следующие параметры для фильтрации получаемых данных
Вы можете передать массив значений, добавляя квадратные скобки [] к имени параметра
Параметр | Описание |
---|---|
activityCode | Возвращает информацию по коду активности |
documentReference | Возвращает информацию по номеру приемки |
documentDate | Возвращает информацию по приемке по дате документа |
id | Возвращает информацию по id приемки |
limit | Ограничение количества возвращаемых записей. По умолчанию устанавливается 100, если не передано |
page | Смещение выборки. По умолчанию устанавливается 1, если не передано |
Удаление заказов
Метод DeleteSupplies
'DELETE - https://***.wcp.fmlogistic.ru/api/v2/supplies/inbound?activityCode=&documentReference=&documentDate' или
DELETE - https://***.wcp.fmlogistic.ru/api/v2/supplies/inbound?id
Метод используется для удаления (отмены) приемки. Удалить приемку можно только в статусе WMS "draft" и "to_receive".
Параметры, которые указываются в запросе:
Параметр | Описание |
---|---|
activityCode | Код активности |
documentReference | Номер заказа |
documentDate | Дата документа |
id | id приемки |
Заказ на выход
Заказ - размещенный заказ на отгрузку: B2B или B2C.
Создание заказа на выход
Метод CreateOrders
POST - https://***.wcp.fmlogistic.ru/api/v2/orders
Метод используется для создания и обновления одного или нескольких заказов на отгрузку. Обновить заказ можно только в статусе WMS "new" .
Unique key: activityCode, documentReference, documentDate
curl --location 'https://***.wcp.fmlogistic.ru/api/v2/orders' \
--header 'accept: application/vnd.api+json' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '[
{
"activityCode": "TST",
"businessFlow": "B2C",
"documentReference": "TEST_ORDER",
"documentDate": "2025-03-10",
"customerDocumentReference": "ORDER 1",
"pickupPointCode": "11233",
"tracking": [
{
"externalSystemCode": "WB",
"orderReference" : "1233456"
}
],
"marketplaceCode": "wildberries",
"carrierCode": "DPD",
"orderedShippingMethod": "FTL",
"consignee": {
"code": "TEST_CONS",
"name": "TEST_CONS_TEST"
},
"kladr": "Э63000007",
"requisites": [
{
"type": "billing",
"name": "Счет",
"nameFull": "ООО Счет",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77"
}
],
"paymentMethod": "prepaid",
"giftPackingStyle": "123",
"giftMessage": "Подарок",
"plannedShippingDate": "2025-03-15",
"plannedShippingTime": "15:00",
"planDeliveryDate": "2025-03-16",
"deliveryTime":
{
"from": "18:00",
"to": "22:00"
},
"category": "BBB",
"packageCode": "GFT",
"pickingInstructions": "text",
"packingInstructions": "text",
"shippingInstructions": "text",
"deliveryInstructions": "text",
"price":{
"grandTotal": 112,
"taxAmount": 20,
"subtotal": 80,
"subtotalInclTax": 100,
"discountAmount": null,
"shippingAmount": 10,
"shippingTaxAmount": 2,
"shippingInclTax": 12,
"assessedCost": 100
},
"comment": "text",
"additionalData": { "data": "test" },
"type": "picking",
"allowPartialPreparation": true,
"orderLines":[
{
"lineNumber": 1,
"sku": "TEST_SKU",
"logisticVariantCode": "PCS",
"blockReasonCode": null,
"minExpiryDate": "2027-01-12",
"maxExpiryDate": "2027-09-12",
"orderedQty": 2,
"orderedBatch": "1111",
"orderedSscc": "413199500000000044",
"shelfLifeType": "days",
"shelfLifeValue": 486,
"preparationPackageCode": "box",
"price": {
"price": 80,
"priceInclTax": 100,
"originalPrice": 80,
"discountAmount": null,
"taxRate": 20,
"taxAmount": 20,
"rowTotal": 80,
"rowTotalInclTax": 100
},
"packingInstructions": "text",
"comment": "text",
"additionalData": { "data": "test" },
"reservationKey": "COPACK",
"blockReasonBypass": false,
"reserveByKeyOnly": true
}
]
}
]'
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
activityCode | str(255) | true | Код активности |
businessFlow | str(255) | false | Тип заказа: B2C, B2B и т.д. |
documentReference | str(255) | true | Номер заказа внешний |
documentDate | date | false | Дата документа |
customerDocumentReference | str(255) | false | Дополнительный номер заказа |
pickupPointCode | str(255) | false | Код пункта выдачи |
tracking | array | false | Массив для передачи информации по трек- номеру/ам заказа/ов |
externalSystemCode | str(255) | false | Код внешней системы |
orderReference | str(255) | false | Номер заказа в этой системе, трек-номер |
marketplaceCode | str(255) | false | Код маркетплейса |
carrierCode | str(255) | false | Код перевозчика |
orderedShippingMethod | str(50) | false | Тип доставки. Возможные значения: LTL, FTL |
consignee | object | false | Массив данных, в котором передается информация по грузополучателю. Детали см. в разделе "Consignee". acivityCode можно не передавать в этом массиве, он будет равен переданному выше |
requisites | array | false | Массив данных, в котором передается информация по реквизитам грузополучателя. Детали см. в разделе "Requisites" |
kladr | str(255) | false | |
requisites | array | false | Массив данных, в котором передается информация по реквизитам заказа: billing, shipping. Детали см. в разделе "Requisites" |
paymentMethod | str(50) | false | Метод оплаты |
giftPackingStyle | str(255) | false | Код подарочной упаковки |
giftMessage | text | false | Подарочное сообщение, которое нужно распечатать на предмет (конверт, карта, etc ...) |
plannedShippingDate | date | true | Плановая дата отгрузки |
plannedShippingTime | time(0) | false | Плановое время отгрузки |
planDeliveryDate | date | false | Плановая дата доставки |
deliveryTime | object | false | Передача данных по времени доставки |
from | time | false | Доставить с (временной интрвал) |
to | time | false | Доставить до (временной интревал) |
category | str(50) | false | Метод подготовки заказа |
packageCode | str(255) | false | Тип упаковки |
pickingInstructions | text | false | Инструкции по сборке |
packingInstructions | text | false | Инструкции по упаковке |
shippingInstructions | text | false | Инструкции по отгрузке |
deliveryInstructions | text | false | Инструкции по доставке |
price | json | false | Массив для передачи информации по стоимости заказа |
grandTotal | numeric(15, 2) | false | Общая стоимость заказа |
taxAmount | numeric(15, 2) | false | Сумма НДС в рублях |
subtotal | numeric(15, 2) | false | Стоимость всех товаров со скидкой и без НДС |
subtotalInclTax | numeric(15, 2) | false | Стоимость всех товаров со скидкой и с НДС |
discountAmount | numeric(15, 2) | false | Размер скидки |
shippingAmount | numeric(15, 2) | false | Стоимость доставки без НДС |
shippingTaxAmount | numeric(15, 2) | false | Размер НДС доставки (руб.) |
shippingInclTax | numeric(15, 2) | false | Стоимость доставки с НДС |
assessedCost | numeric(15, 2) | false | Страховочная (оценочная) стоимость заказа |
comment | text | false | Любая информация для склада |
addiionalData | json | false | Дополнительная информация |
type | str(255) | false | Возможные значения: picking, breakbulk |
allowPartialPreparation | boolean | false | Возможность сборки с недостачей |
orderLines | array | true | Массив для передачи линий заказа |
lineNumber | int4 | false | Номер линии |
sku | str(255) | true | Код артикула |
logisticVariantCode | str(255) | false | Единица измерения |
blockReasonCode | str(255) | false | Сборка товара из статуса, отличного от коммерческого |
minExpiryDate | date | false | Сборка товара со сроком годности больше чем дата , указанная в данном поле |
maxExpiryDate | date | false | Сборка товара со сроком годности меньше чем дата , указанная в данном поле |
orderedQty | int4 | true | Заказанное количество по линии |
orderedBatch | str(255) | false | Сборка товара с партией , указанной в данном поле |
orderedSscc | str(255) | false | SSCC, с которого нужно произвести сборку |
shelfLifeType | str(255) | false | Служит как "тип рачета для минимального СГ" Может быть только days или percent |
shelfLifeValue | int4 | false | Cрок годности |
preparationPackageCode | str(255) | false | Код упаковки товара |
price | object | false | Массив для передачи информации по стоимости линии заказа |
price | numeric(15, 2) | false | Сумма по линии в рублях |
priceInclTax | numeric(15, 2) | false | Стоимость товаров в линии, включая НДС |
originalPrice | numeric(15, 2) | false | Стоимость товара изначальная (без скидок) |
discountAmount | numeric(15, 2) | false | Размер скидки |
taxRate | int4 | false | Размер налога |
taxAmount | numeric(15, 2) | false | Сумма налога |
rowTotal | numeric(15, 2) | false | Общая стоимость по линии без НДС |
rowTotalInclTax | numeric(15, 2) | false | Общая стоимость по линии, включая НДС |
packingInstructions | text | false | Инструкция по упаковке на уровне линии заказа |
comment | text | false | Комментарий |
additionalData | json | false | Дополнительные данные |
reservationKey | str(255) | false | Сборка товара из запаса, имеющего это значение (Например, можно использовать для разделения на владельцы запаса/поклажедателей) |
blockReasonBypass | boolean | false | Сборка товара из любого block reason |
reserveByKeyOnly | boolean | false | Сборка любого товара с указанным значением reservationKey |
Получение информации по одному или нескольким заказам на отгрузку
Метод GetOrders
GET - https://***.wcp.fmlogistic.ru/api/v2/orders
Метод используется для получения информации по одному или несколким заказам на отгрузку. Квадратные скобки [] указывают на то, что параметр может принимать несколько значений
curl --location --globoff 'https://***.wcp.fmlogistic.ru/api/v2/orders?documentReference[]=TEST_ORDER&ActivityCode=TST&limit=100&page=1' \
--header 'Authorization: Bearer ******'
Request response 200 OK
{
"data": [
{
"id": "9b9e6b6d-4dcb-4933-9644-462444e01be0",
"activityCode": "TST",
"businessFlow": "B2C",
"documentReference": "TEST_ORDER",
"documentDate": "2025-03-10",
"customerDocumentReference": "ORDER 1",
"status": "shipped",
"subStatus": "",
"pickupPointCode": "11233",
"tracking": [
{
"externalSystemCode": "WB",
"orderReference" : "1233456"
}
],
"marketplaceCode": "wildberries",
"carrierCode": "DPD",
"orderedShippingMethod": "FTL",
"roundId": "b0e3516d-5b38-4179-9985-222dca2f7458",
"roundNumber": "12345678",
"consignee": {
"acivityCode": "TST",
"code": "TEST_CONS",
"name": "TEST_CONS_TEST",
"defaultCarrierCode": "TEST_CARRIER",
"pickingInstructions": "инструкция пикинга",
"packingInstructions": "инструкция упаковки",
"shippingInstructions": "инструкция отгрузки",
"additionalData": { "data": "test" },
"mandatoryMeasurePicking": false,
"mandatoryMeasureConsolidation": false,
"contractDates": {
"shelfLifeType": "percent",
"shelfLifeValue": 40
},
"requisites": [
{
"type": "main",
"name": "Грузополучатель номер 1",
"nameFull": "ООО Номер 1",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77"
}
]
},
"kladr": "Э63000007",
"requisites": [
{
"type": "billing",
"name": "Счет",
"nameFull": "ООО Счет",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77"
}
],
"paymentMethod": "prepaid",
"giftPackingStyle": "123",
"giftMessage": "Подарок",
"plannedShippingDate": "2025-03-15",
"plannedShippingTime": "15:00",
"planDeliveryDate": "2025-03-16",
"deliveryTime":
{
"from": "18:00",
"to": "22:00"
},
"category": "BBB",
"packageCode": "GFT",
"pickingInstructions": "text",
"packingInstructions": "text",
"shippingInstructions": "text",
"deliveryInstructions": "text",
"price": {
"grandTotal": 112,
"taxAmount": 20,
"subtotal": 80,
"subtotalInclTax": 100,
"discountAmount": null,
"shippingAmount": 10,
"shippingTaxAmount": 2,
"shippingInclTax": 12,
"assessedCost": 100
},
"comment": "text",
"additionalData": { "data": "test" },
"type": "picking",
"allowPartialPreparation": true,
"statusChanges": [
{
"statusBefore": "new",
"statusAfter": "in_progress",
"eventTime": "2025-03-11 19:00:00.000"
},
{
"statusBefore": "in_progress",
"statusAfter": "picked",
"eventTime": "2025-03-11 22:00:00.000"
}
],
"createdAt": "2025-03-08 16:00:00.000",
"updatedAt": "2025-03-11 22:00:00.000",
"orderLines":[
{
"id": "0194829c-d68a-7002-bd1e-1b51b0560474",
"lineNumber": 1,
"sku": "TEST_SKU",
"logisticVariantCode": "PCS",
"blockReasonCode": null,
"minExpiryDate": "2027-01-12",
"maxExpiryDate": "2027-09-12",
"orderedQty": 2,
"preparedQty": 2,
"shippedQty": 2,
"returnedQty": 0,
"orderedBatch": "1111",
"orderedSscc": "413199500000000044",
"shelfLifeType": "days",
"shelfLifeValue": 486,
"preparationPackageCode": "box",
"price": {
"price": 80,
"priceInclTax": 100,
"originalPrice": 80,
"discountAmount": null,
"taxRate": 20,
"taxAmount": 20,
"rowTotal": 80,
"rowTotalInclTax": 100
},
"packingInstructions": "text",
"comment": "text",
"additionalData": { "data": "test" },
"reservationKey": "COPACK",
"blockReasonBypass": false,
"reserveByKeyOnly": true,
"createdAt": "2025-03-08 16:00:00.000",
"updatedAt": "2025-03-11 22:00:00.000"
}
],
"supports" : [
{
"type" : "picking",
"status" : "closed",
"sscc" : "413199500000000055",
"packageCode" : "support",
"width" : 300,
"length" : 300,
"height" : 300,
"weight" : 1000,
"additionalData" : {"data": "test" },
"contents" : [
{
"orderLineId" : "0194829c-d68a-7002-bd1e-1b51b0560474",
"lineNumber" : 1,
"sku" : "TEST_SKU",
"qty" : 1,
"batch" : "1111",
"gtdNumber" : "1111",
"manufacturingDate" : "2025-03-12",
"expiryDate" : "2027-03-12",
"blockReasonCode" : null,
"reservationKey" : "COPACK",
"additionalData" : { "data": "test" },
"serialAggregates" : [
{
"code": "00319058430985409",
"type": "box",
"status": "shipped",
"externalType": "BOX",
"externalStatus": "SHIPPED",
"additionalData": {
"externalUUID": "24320i8340fj3i"
}
}
],
"serialNumbers": [
{
"type": "KMkin",
"codes": [
{
"code": "0104610267860291215)KijQqi4&pmM!,Не",
"externalStatus": "",
"status": "shipped",
"childSerialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"additionalData": {},
"code": "0104610267860291215)oifweuv4&pm?Tch",
"externalStatus": ""
}
],
"additionalData": {}
}
],
"serialAggregates": [ "00319058430985409" ],
"additionalData": {}
}
]
}
]
}
]
},
{
"type" : "consolidation",
"status" : "shipped",
"sscc" : "413199500000000044",
"packageCode" : "EUR",
"width" : 800,
"length" : 1200,
"height" : 1800,
"weight" : 1000,
"additionalData" : { "data": "test" },
"childSupports" : [
{
"type" : "picking",
"status" : "closed",
"sscc" : "413199500000000066",
"packageCode" : "support",
"width" : 300,
"length" : 300,
"height" : 300,
"weight" : 1000,
"additionalData" : {"data": "test" },
"contents" : [
{
"orderLineId" : "0194829c-d68a-7002-bd1e-1b51b0560478",
"lineNumber" : 1,
"sku" : "TEST_SKU",
"qty" : 1,
"batch" : "1111",
"gtdNumber" : "1111",
"manufacturingDate" : "2025-03-12",
"expiryDate" : "2027-03-12",
"blockReasonCode" : null,
"reservationKey" : "COPACK",
"additionalData" : { "data": "test" },
"serialAggregates" : [
{
"code": "00319058430985408",
"type": "box",
"status": "shipped",
"externalType": "BOX",
"externalStatus": "SHIPPED",
"additionalData": {
"externalUUID": "24320i8340fj3i"
}
}
],
"serialNumbers": [
{
"type": "KMkin",
"codes": [
{
"code": "0104610267860291215)KijQqi4&pmM!,Не",
"status": "shipped",
"externalStatus": "",
"childSerialNumbers": [
{
"type": "KMperfume",
"codes": [
{
"additionalData": {},
"code": "0104610267860291215)oifweuv4&pm?Tch",
"externalStatus": ""
}
],
"additionalData": {}
}
],
"serialAggregates": [ "00319058430985408" ],
"additionalData": {}
}
]
}
]
}
]
}
]
}
]
}
]
}
],
"meta": {
"limit": 100,
"page": 1,
"total": 1,
"total_pages": 1
}
}
Параметр | Тип данных | Описание |
---|---|---|
id | uuid | id заказа |
activityCode | str (255) | Код активности |
businessFlow | str (255) | Тип заказа: B2C, B2B и т.д. |
documentReference | str (255) | Номер заказа внешний |
documentDate | date | Дата документа |
customerDocumentReference | str (255) | Дополнительный номер заказа |
status | str (enum) | Статус заказа |
subStatus | str (255) | Дополнительный статус заказа |
tracking | json array | Массив для отображения информации по трек- номеру/ам заказа/ов |
externalSystemCode | str (255) | Код внешней системы |
orderReference | str (255) | Номер заказа в этой системе, трек-номер |
pickupPointCode | str (255) | Код пункта выдачи |
marketplaceCode | str (255) | Код маркетплейса |
carrierCode | str (255) | Код перевозчика |
orderedShippingMethod | str (255) | Тип доставки. Возможные значения: LTL, FTL |
roundId | uuid | Id раунда |
roundNumber | int4 | Номер раунда |
consignee | object | Массив данных, в котором отображается информация по грузополучателю. Детали см. в разделе "Consignee" |
requisites | array | Массив данных, в котором отображается информация по реквизитам грузополучателя. Детали см. в разделе "Requisites" |
kladr | str (255) | |
paymentMethod | str (enum) | Метод оплаты |
giftPackingStyle | str (255) | Код подарочной упаковки. |
giftMessage | text | Подарочное сообщение, которое нужно распечатать на предмет (конверт, карта, etc ...) |
plannedShippingDate | date | Плановая дата отгрузки |
plannedShippingTime | time(0) | Плановое время отгрузки |
planDeliveryDate | date | Плановая дата доставки |
deliveryTime | object | Передача данных по времени доставки |
from | time(0) | Доставить с (временной интервал) |
to | time(0) | Доставить до (временной интревал) |
category | str (255) | Метод подготовки заказа |
packageCode | str (255) | Тип упаковки |
pickingInstructions | text | Инструкции по сборке |
packingInstructions | text | Инструкции по упаковке |
shippingInstructions | text | Инструкции по отгрузке |
deliveryInstructions | text | Инструкции по доставке |
price | object | Массив информации по стоимости заказа |
grandTotal | numeric(15, 2) | Общая стоимость заказа |
taxAmount | numeric(15, 2) | Сумма НДС в рублях |
subtotal | numeric(15, 2) | Стоимость всех товаров со скидкой и без НДС |
subtotalInclTax | numeric(15, 2) | Стоимость всех товаров со скидкой и с НДС |
discountAmount | numeric(15, 2) | Размер скидки |
shippingAmount | numeric(15, 2) | Стоимость доставки без НДС |
shippingTaxAmount | numeric(15, 2) | Размер НДС доставки (руб.) |
shippingInclTax | numeric(15, 2) | Стоимость доставки с НДС |
assessedCost | numeric(15, 2) | Страховочная (оценочная) стоимость заказа |
comment | text | Любая информация для склада |
addiionalData | json | Дополнительная информация |
createdAt | timestamp(0) | Время создания заказа |
updatedAt | timestamp(0) | Время обновления заказа |
type | str (enum) | Возможные значения: picking, breakbulk |
allowPartialPreparation | bool | Возможность сборки с недостачей |
statusChanges | array | Дата и время изменения статусов |
statusBefore | str (enum) | Значение статуса до |
statusAfter | str (enum) | Значение статуса после |
eventTime | timestamp(0) | Время изменения статуса |
orderLines | array | Массив линий заказа |
id | uuid | id линии |
lineNumber | int4 | Номер линии |
sku | str (255) | Код артикула |
logisticVariantCode | str (255) | Единица измерения |
blockReasonCode | str (255) | Сборка товара из статуса, отличного от коммерческого |
minExpiryDate | date | Сборка товара со сроком годности больше чем дата , указанная в данном поле |
maxExpiryDate | date | Сборка товара со сроком годности меньше чем дата , указанная в данном поле |
orderedQty | int4 | Заказанное количество по линии |
preparedQty | int4 | Собранное количество по линии |
shippedQty | int4 | Отгруженное количество по линии |
returnedQty | int4 | Возвращенное кол-во по линии |
orderedBatch | str (255) | Сборка товара с партией , указанной в данном поле |
orderedSscc | str (255) | SSCC, с которого нужно произвести сборку |
shelfLifeType | str (enum) | Служит как "тип раcчета для минимального СГ" Может быть только days или percent |
shelfLifeValue | int4 | Cрок годности |
preparationPackageCode | str(255) | Код упаковки товара |
price | object | Массив для передачи информации по стоимости линии заказа |
price | numeric(15, 2) | Сумма по линии в рублях |
priceInclTax | numeric(15, 2) | Стоимость товаров в линии, включая НДС |
originalPrice | numeric(15, 2) | Стоимость товара изначальная (без скидок) |
discountAmount | numeric(15, 2) | Размер скидки |
taxRate | int4 | Размер налога |
taxAmount | numeric(15, 2) | Сумма налога |
rowTotal | numeric(15, 2) | Общая стоимость по линии без НДС |
rowTotalInclTax | numeric(15, 2) | Общая стоимость по линии, включая НДС |
packingInstructions | text | Инструкция по упаковке на уровне линии заказа |
comment | text | Коммнтарий |
additionalData | json | Дополнительная информация |
createdAt | timestamp(0) | Время создания линии |
updatedAt | timestamp(0) | Время обновления линии |
reservationKey | str (255) | Сборка товара из запаса, имеющего это значение (Например, можно использовать для разделения на владельцы запаса/поклажедателей) |
blockReasonBypass | bool | Сборка товара из любого block reason |
reserveByKeyOnly | bool | Сборка ЛЮБОГО товара (даже несовпадающего по остальным параметрам: срок годности, код партии и т.д) с указанным значением в этом поле |
supports | array | Перечисление паллет с их содержимым |
type | str (255) | Тип суппорта. Если тип суппорта = consolidation, то у него будет массив childsupports |
status | str (enum) | Статус суппорта. Возможные статусы: new, in progress, picked, loaded, shipped, cancelled |
sscc | str (255) | SSCC |
packageCode | str (255) | Код упаковки |
width | int8 | Ширина собранного суппорта |
length | int8 | Длина собранного суппорта |
height | int8 | Высота собранного суппорта |
weight | int8 | Вес собранного суппорта |
additionalData | json | Дополнительные данные |
contents | array | Состав собранного суппорта |
orderLineId | uuid | id линии соответствующий суппорту |
lineNumber | int4 | Номер линии соответствующий суппорту |
sku | str (255) | Код артикула |
qty | int4 | Количество собранное |
batch | str (255) | Партия |
gtdNumber | str (255) | Номер GTD |
manufacturingDate | date | Дата производства |
expiryDate | date | Дата окончания срока годности |
blockReasonCode | str (255) | Код блокировки |
reservationKey | str (255) | Код резервации |
additionalData | json | Дополнительная информация |
serialAggregates | array | Массив кодов агрегатов, в которые входят собранные серийные номера |
code | str (255) | Код агрегата |
type | str(enum) | Тип агрегата |
status | str(enum) | Статус |
externalType | str (255) | Тип кода агрегата во внешней системе |
externalStatus | str (255) | Статус кода в системе ЧЗ |
additionalData | json | Дополнительная информация |
serialNumbers | array | Массив серийных номеров , входящих в собранный агрегат |
serialType | str (255) | Тип серийного номера |
codes | array | Массив кодов, относящихся к этому типу |
code | str (255) | Значение серийного номера |
status | str (enum) | Статус |
externalStatus | str (255) | Статус кода в системе ЧЗ |
additionalData | json | Дополнительная информация |
childSerialNumbers | array | Массив дочерних кодов, входящих в собранный ранее код |
serialType | str(255) | Типа серийного номера дочерних кодов |
codes | array | Массив значений дочерних кодов |
code | str(255) | Значение серийного номера |
externalStatus | str(255) | Статус кода в системе ЧЗ |
additionalData | str(255) | Дополнительная информация |
codes | array | Масси с перечислением кодов агрегатов , собранных в этом заказе |
childSupports | array | Массив данных для отображения информации ,если тип в массиве supports = consolidation. Будет содержать в себе массивы supports, contents, serialNumbers, codes в которых перечислены суппорта, входящие в этот консолидационный суппорт |
Query parameters
Вы можете использовать следующие параметры для фильтрации получаемых данных
Вы можете передать массив значений, добавляя квадратные скобки [] к имени параметра
Параметр | Описание |
---|---|
activityCode | Возвращает информацию по коду активности |
documentReference | Возвращает информацию по номеру заказа |
documentDate | Возвращает информацию по заказу по дате документа |
id | Возвращает информацию по id заказа |
limit | Ограничение количества возвращаемых записей. По умолчанию устанавливается 100, если не передано |
page | Смещение выборки. По умолчанию устанавливается 1, если не передано |
Удаление заказов
Метод DeleteOrders
DELETE - https://***.wcp.fmlogistic.ru/api/v2/orders?activityCode=&documentReference=&documentDate
или
'DELETE - https://***.wcp.fmlogistic.ru/api/v2/orders?id'
Метод DeleteOrders
используется для удаления (отмены) одного или нескольких заказов.
Удалить заказ можно только в статусе "new".
Для удаления заказа вы можете передать следующие параметры:
Параметр | Описание |
---|---|
activityCode | Возвращает информацию по коду активности |
documentReference | Возвращает информацию по номеру заказа |
documentDate | Возвращает информацию по заказу по дате документа |
id | Возвращает информацию по id заказа |
Или передать id заказа:
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
id | uuid | true | id |
Рекизиты для сущностей "грузополучатель", "поставщик" и "заказ"
Создание реквизитов
Реквизиты создаются с помощью методов CreateConsignees, CreateSuppliers, CreateOrders
POST - https://***.wcp.fmlogistic.ru/api/v2/consignees
POST - https://***.wcp.fmlogistic.ru/api/v2/suppliers
POST - https://***.wcp.fmlogistic.ru/api/v2/orders
Методы используются для создания и обновления реквизитов для поставщиков, грузополучателей или заказчиков.
"requisites": [
{
"type": "main",
"name": "Поставщик номер 1",
"nameFull": "ООО Номер 1",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77"
}
]
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
type | str(255) | false | Тип реквизитов |
name | str(255) | false | Имя |
nameFull | text | false | Полное имя |
address | text | false | Адрес ГП |
zipcode | str(50) | false | Индекс |
city | str(255) | false | Город |
country | str(255) | false | Страна |
inn | str(50) | false | ИНН |
kpp | str(255) | false | КПП |
phone | str(50) | false | Телефон для связи |
str(255) | false | Почта для связи | |
contactName | str(255) | false | Контакт для связи |
contactPosition | str(255) | false | Должность контакта для связи |
comment | text | false | Комментарий |
contractNumber | text | false | Номер договора с ГП |
countryCode | str(50) | false | Код страны |
region | str(50) | false | Регион |
Получение информации по реквизитам поставщиков / грузополучателей
Для получения информации по реквизитам можно использовать следующие методы GetConsignees , GetSuppliers, GetOrders
GET - https://***.wcp.fmlogistic.ru/api/v2/consignees
GET - https://***.wcp.fmlogistic.ru/api/v2/suppliers
GET - https://***.wcp.fmlogistic.ru/api/v2/orders
Методы используются для получения информации по реквизитам для одного или нескольких поставщиков, грузополучателей или заказов.
"requisites": {
"type": "main",
"name": "Поставщик номер 1",
"nameFull": "ООО Номер 1",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77",
"createdAt": "2024-12-17T06:00:14",
"updatedAt": "2024-12-17T06:00:14"
}
Параметр | Тип данных | Описание |
---|---|---|
type | str(255) | Тип -основной. Значения могут варьироваться |
name | str(255) | Имя |
nameFull | text | Полное имя |
address | text | Адрес ГП |
zipcode | str(50) | Индекс |
city | str(255) | Город |
country | str(255) | Страна |
inn | str(50) | ИНН |
kpp | str(255) | КПП |
phone | str(50) | Телефон для связи |
str(255) | Почта для связи | |
contactName | str(255) | Контакт для связи |
contactPosition | str(255) | Должность контакта для связи |
comment | text | Комментарий |
createdAt | timestamp | Время создания |
updatedAt | timestamp | Время обновления |
contractNumber | text | Номер договора с ГП |
countryCode | str(50) | Код страны |
region | str(50) | Регион |
Поставщики
Поставщик - лицо, поставляющее товары. Указывается в заказе на приемку. Ниже приведены методы, используемые для работы с поставщиками.
Создание поставщиков
Метод CreateSuppliers
POST - https://***.wcp.fmlogistic.ru/api/v2/suppliers
Метод используется для создания одного или нескольких поставщиков.
Unique key: code
curl --location 'https://***.wcp.fmlogistic.ru/api/v2/suppliers' \
--header 'accept: application/vnd.api+json' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '[
{
"activityCode": "TST",
"code": "TEST_SUPP",
"name": "TEST_SUPP_TEST",
"trusted": false,
"specificInstructions": "инструкция",
"contractDates": {
"shelfLifeType": "days",
"shelfLifeValue": 111
},
"requisites": [
{
"type": "main",
"name": "Поставщик номер 1",
"nameFull": "ООО Номер 1",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77"
}
]
}
]'
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
activityCode | str(255) | true | Код активности |
code | srt(255) | true | Код поставщика |
name | srt(255) | true | Наименование поставщика |
trusted | boolean | false | Разрешена ли доверительная приемка от поставщика |
specificInstructions | str | false | Особые инструкции |
contractDates | object | false | Массив данных, сожержащий информацию по правилам прима сроков годности для данного поставщика |
shelfLifeType | srt(enum) | sometimes | В чем измеряется допустимый срок годности: days, percent. Обязательно для заполнения, если передан массив contractDates |
shelfLifeValue | srt(255) | sometimes | Значение допустимого срока годности. Обязательно для заполнения, если передан массив contractDates |
requisites | array | false | Массив данных, содержащий реквизиты данного поставщика. Детали смотрите в разделе "Реквизиты" |
Получение информации по поставщикам
Метод GetSuppliers
GET - https://***.wcp.fmlogistic.ru/api/v2/suppliers
Метод используется для получения информации по одному или нескольким поставщикам.
curl --location --globoff 'https://***.wcp.fmlogistic.ru/api/v2/suppliers?code[]=TEST_SUPP&ActivityCode=TST&limit=100&page=1' \
--header 'Authorization: Bearer ******'
Request response 200 OK
{
"data": [
{
"id": "9dbca469-3486-4838-b07f-b347be894d53",
"activityCode": "TST"
"code": "TEST_SUPP",
"name": "TEST_SUPP_TEST",
"trusted": false,
"specificInstructions": "инструкция",
"contractDates": {
"shelfLifeType": "days",
"shelfLifeValue": 111
},
"createdAt": "2024-12-17T06:00:14",
"updatedAt": "2024-12-17T06:00:14",
"requisites": [
{
"type": "main",
"name": "Поставщик номер 1",
"nameFull": "ООО Номер 1",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77",
"createdAt": "2024-12-17T06:00:14",
"updatedAt": "2024-12-17T06:00:14"
}
]
}
],
"meta": {
"limit": 100,
"page": 1,
"total": 1,
"total_pages": 1
}
}
Параметр | Тип данных | Описание |
---|---|---|
id | uuid | id поставщика |
activityCode | str(255) | Код активности |
code | str(255) | Код поставщика |
name | str(255) | Наименование поставщика |
trusted | boolean | Разрешена ли доверительная приемка от поставщика |
specificInstructions | text | Особые инструкции |
createdAt | timestamp | Время создания |
updatedAt | timestamp | Время обновления |
contractDates | object | Массив данных, сожержащий информацию по правилам прима сроков годности для данного поставщика |
shelfLifeType | str(enum) | В чем измеряется допустимый срок годности: days, percent. Обязательно для заполнения, если передан массив contractDates |
shelfLifeValue | str(255) | Значение допустимого срока годности. Обязательно для заполнения, если передан массив contractDates |
requisites | array | Массив данных, содержащий реквизиты данного поставщика. Детали смотрите в разделе "Реквизиты" |
Query parameters
Вы можете использовать следующие параметры для фильтрации получаемых данных
Параметр | Описание |
---|---|
id | Возвращает поставщика по id |
code | Возвращает поставщика по коду |
activityCode | Возвращает поставщика по коду активности |
limit | Ограничение количества возвращаемых записей. По умолчанию устанавливается 100, если не передано |
page | Смещение выборки. По умолчанию устанавливается 1, если не передано |
Грузополучатели
Грузополучатель - лицо, которое получает товары. Указывается в заказе на отгрузку. Ниже приведены методы, используемые для работы с грузополучателями.
Создание грузополучателей
Метод CreateConsignees
POST - https://***.wcp.fmlogistic.ru/api/v2/consignees
Метод используется для создания и обновления данных для одного или нескольких поставщиков.
Unique key: acivityCode, code
curl --location 'https://***.wcp.fmlogistic.ru/api/v2/consignees' \
--header 'accept: application/vnd.api+json' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '[
{
"activityCode": "TST",
"code": "TEST_CONS",
"name": "TEST_CONS_TEST",
"defaultCarrierCode": "TEST_CARRIER",
"pickingInstructions": "инструкция пикинга",
"packingInstructions": "инструкция упаковки",
"shippingInstructions": "инструкция отгрузки",
"additionalData": { "data": "test" },
"mandatoryMeasureConsolidation": false,
"defaultPackageCode": "box",
"contractDates": {
"shelfLifeType": "percent",
"shelfLifeValue": 40
},
"requisites": [
{
"type": "main",
"name": "Грузополучатель номер 1",
"nameFull": "ООО Номер 1",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77"
}
]
}
]'
Параметр | Тип данных | Обязательный | Описание |
---|---|---|---|
activityCode | str(255) | true | Код активности |
code | str(255) | true | Код грузополучателя |
name | str(255) | true | Наименование грузополучателя |
defaultCarrierCode | str(255) | false | Транспортная компания для этого ГП по умолчанию |
pickingInstructions | str(255) | false | Инструкции по сборке |
packingInstructions | str(255) | false | Инструкции по упаковке |
shippingInstructions | str(255) | false | Инструкции по отгрузке |
additionalData | json | false | Дополнительная информация |
mandatoryMeasureConsolidation | boolean | false | Признак: обязательно занесение вгх суппортов консолидационных. Возможные значения: true, false |
defaultPackageCode | str(255) | false | Тип упаковки заказа, используемый по умолчанию для данного ГП |
contractDates | object | false | Массив данных, сожержащий информацию по правилам отбора сроков годности для данного получателя |
shelfLifeType | str(enum) | sometimes | В чем измеряется допустимый срок годности: days, percent. Обязательно для заполнения, если передан массив contractDates |
shelfLifeValue | str(255) | sometimes | Значение допустимого срока годности. Обязательно для заполнения, если передан массив contractDates |
requisites | array | false | Массив данных, содержащий реквизиты данного ГП. Детали смотрите в разделе "Requisites" |
Получение информации по грузополучателям
Метод GetConsignees
GET - https://***.wcp.fmlogistic.ru/api/v2/consignees
Метод используется для получения информации по одному или нескольким поставщикам.
curl --location --globoff 'https://***.wcp.fmlogistic.ru/api/v2/consignees?code[]=TEST_CONS&ActivityCode=TST&limit=100&page=1' \
--header 'Authorization: Bearer ******'
Request response 200 OK
{
"data": [
{
"id": "9dbca469-3486-4838-b07f-b347be894d53",
"activityCode": "TST",
"code": "TEST_CONS",
"name": "TEST_CONS_TEST",
"defaultCarrierCode": "TEST_CARRIER",
"pickingInstructions": "инструкция пикинга",
"packingInstructions": "инструкция упаковки",
"shippingInstructions": "инструкция отгрузки",
"additionalData": { "data": "test" },
"mandatoryMeasureConsolidation": false,
"defaultPackageCode": "box",
"createdAt": "2024-12-17T06:00:14",
"updatedAt": "2024-12-17T06:00:14",
"contractDates": {
"shelfLifeType": "percent",
"shelfLifeValue": 40
},
"requisites": [
{
"type": "main",
"name": "Грузополучатель номер 1",
"nameFull": "ООО Номер 1",
"address": "ул.Ивана, д.4",
"zipcode": "222222",
"city": "Москва",
"country": "Россия",
"inn": "123456789",
"kpp": "111111111",
"phone": "+70000000000",
"email": "mail@email.mail",
"contactName": "Иван",
"contactPosition": "Менеджер",
"comment": "комментарий",
"contractNumber": "A123",
"countryCode": "50",
"region": "77",
"createdAt": "2024-12-17T06:00:14",
"updatedAt": "2024-12-17T06:00:14"
}
]
}
],
"meta": {
"limit": 100,
"page": 1,
"total": 1,
"total_pages": 1
}
}
Параметр | Тип данных | Описание |
---|---|---|
id | uuid | id грузополучателя |
activityCode | uuid | id активности |
code | str(255) | Код грузополучателя |
name | str(255) | Наименование грузополучателя |
defaultCarrierCode | uuid | id ТК для этого ГП |
pickingInstructions | str(255) | Инструкции по сборке |
packingInstructions | str(255) | Инструкции по упаковке |
shippingInstructions | str(255) | Инструкции по отгрузке |
additionalData | json | Дополнительная информация |
mandatoryMeasureConsolidation | boolean | Признак: обязательно занесение вгх суппортов консолидационных. Возможные значения: true, false |
defaultPackageCode | str(255) | Тип упаковки заказа, используемый по умолчанию для данного ГП |
createdAt | timestamp | Время создания |
updatedAt | timestamp | Время обновления |
contractDates | object | Массив данных, сожержащий информацию по правилам отбора сроков годности для данного получателя |
shelfLifeType | str(enum) | В чем измеряется допустимый срок годности: days, percent |
shelfLifeValue | str(255) | Значение допустимого срока годности |
requisites | array | Массив данных, содержащий реквизиты данного ГП. Детали смотрите в разделе "Requisites" |
Query parameters
Вы можете использовать следующие параметры для фильтрации получаемых данных
Параметр | Описание |
---|---|
id | Возвращает грузополучатля по id |
code | Возвращает грузополучателя по коду |
activityCode | Возвращает грузополучателя по коду активности |
limit | Ограничение количества возвращаемых записей. По умолчанию устанавливается 100, если не передано |
page | Смещение выборки. По умолчанию устанавливается 1, если не передано |
Транспортные компании
Транспортная компания (ТК)- юридическое лицо, осуществляющее перевозку товара со склада конечному грузополучателю. Указывается в заказе на приемку и закзе на выход. Ниже приведены методы, используемые для работы с ТК.
Получение информации по ТК
Метод GetCarriers
GET - https://***.wcp.fmlogistic.ru/api/v2/carriers
Метод используется для получения информации по одной или нескольким транспортным компаниям.
curl --location --globoff 'https://***.wcp.fmlogistic.ru/api/v2/carriers?code[]=TEST_CARRIER&limit=100&page=1' \
--header 'Authorization: Bearer ******'
Request response 200 OK
[
{
"id": "9dbca469-3486-4838-b07f-b347be894d54",
"code": "TEST_CARRIER",
"name": "Тестовый перевозчик",
"createdAt": "2024-12-17T06:00:14",
"updatedAt": "2024-12-17T06:00:14"
}
]
Параметр | Тип данных | Описание |
---|---|---|
id | uuid | id ТК |
code | str(255) | Код ТК |
name | str(255) | Наименование ТК |
createdAt | timestamp(0) | Время создания |
updatedAt | timestamp(0) | Время обновления |
Query parameters
Вы можете использовать следующие параметры для фильтрации получаемых данных
Параметр | Описание |
---|---|
id | Возвращает перевозчика по id |
code | Возвращает перевозчика по коду |
limit | Ограничение количества возвращаемых записей. По умолчанию устанавливается 100, если не передано |
page | Смещение выборки. По умолчанию устанавливается 1, если не передано |
Стоки
Сток — это запасы товаров на складе.
Получение информации по стоку
Метод GETStocks
'GET - https://***.wcp.fmlogistic.ru/api/v2/stocks'
Метод используется для получения информации по текущему стоку клиента.
curl --location --globoff 'https://***.wcp.fmlogistic.ru/api/v2/stocks?sku[]=TEST_SKU&ActivityCode=TST&limit=100&page=1' \
--header 'Authorization: Bearer ******'
Request response 200 OK
{
"data": [
{
"id": "9d19b1d2-e835-403b-ab66-57387818f236",
"blockReasonCode": "BRA",
"sscc": "662030081000006231",
"packageCode": "A",
"sku": "TEST_SKU",
"logisticVariantName": "PCS",
"activityCode": "TST",
"totalQty": "100",
"reservedQty": "0",
"availableQty": "100",
"batch": "111111111111",
"gtdNumber": "111111111111",
"manufacturingDate": "2024-05-12",
"expiryDate": "2026-05-12",
"supplyReference": "TEST_SUPPLY",
"supplyId": "9d19b1d2-e835-403b-ab66-57387818f237",
"supplyLineId": "9d19b1d2-e835-403b-ab66-57387818f238",
"lineNumber": "1",
"createdAt": "2024-12-13 11:22:28.000",
"updatedAt": "2024-12-13 11:22:28.000",
"reservationKey" : null,
"additionalData": { "data": "test" }
}
],
"meta": {
"limit": 100,
"page": 1,
"total": 1,
"total_pages": 1
}
}
Параметр | Тип данных | Описание |
---|---|---|
id | uuid | Идентификатор стока |
blockReasonCode | str(255) | Код блокировки |
sscc | str(255) | Код SSCC |
packageCode | str(255) | Код упаковки |
sku | str(255) | Артикул |
logisticVariantName | str(255) | Логистический вариант |
activityCode | str(255) | Код активности |
totalQty | int4 | Количество всего на стоке |
reservedQty | int4 | Количество зарезервированное |
availableQty | int4 | Количество свободное |
batch | str(255) | Номер партии |
gtdNumber | str(255) | Номер ГТД |
manufacturingDate | date | Дата производства |
expiryDate | date | Дата окончания срока годности |
supplyReference | str(255) | Номер приемки |
supplyId | uuid | id приемки, в которой пришел данный SSCC |
supplyLineId | uuid | id линии приемки, в которой был принят данный SSCC |
lineNumber | int | Номер линии приемки |
createdAt | timestamp | Время создания |
updatedAt | timestamp | Время обновления |
reservationKey | str(255) | Код резервации |
additionalData | json | Дополнительная информация |
Query parameters
Вы можете использовать следующие параметры для фильтрации получаемых данных
Параметр | Описание |
---|---|
id | Возвращает сток по id записи |
sku | Возвращает сток по коду артикула |
sscc | Возвращает сток по коду sscc |
activityCode | Возвращает сток по коду активности |
blockReasonCode | Возвращает сток по коду блокировки |
limit | Ограничение количества возвращаемых записей. По умолчанию устанавливается 100, если не передано |
page | Смещение выборки. По умолчанию устанавливается 1, если не передано |