Заказ и получение кодов маркировки через API
#
Описание процессовПроцесс заказа и получения кодов сотоит из нескольких основных действий:
Этап | Описание |
---|---|
Авторизация | Получение токена авторизации |
Создание заказа | Создание заказа |
Создание позиций заказа | Создание позиций заказа |
Обработка заказа | Отправка заказа |
Отслеживание статуса заказа | Отслеживание статуса заказа |
Отслеживание статуса кодов | Проверка синхронизации кодов маркировки по заказу |
Получение кодов | Получение кодов маркировки по заказу |
#
Получение токена авторизацииURL : /passport/token/
Method : POST
Content type : application/x-www-form-urlencoded
Тело запроса :
Параметр | Обязательный | Комментарий |
---|---|---|
grant_type | Да | Значение: password |
client_id | Да | Значение: public_client |
client_secret | Да | Значение: public_client_secret |
username | Да | Логин пользователя |
password | Да | Пароль пользователя |
Ответ (JSON) :
Пример (cURL) :
#
Взаимодействие с APIДля обращения к API необходимо передавать данные в заголовках запроса
Загаловок | Обязательный | Комментарий |
---|---|---|
X-Auth-Token | Да | Bearer {access_token} |
X-Company-Id | Нет | ID компании |
X-Stock-Id | Нет | ID склада |
X-Product-Group | Нет | shoes |
Пример (cURL) :
#
Создание заказаURL : /bp/processes/order/
Method : POST
Content type : application/json
Тело запроса :
Параметр | Обязательный | Тип | Комментарий |
---|---|---|---|
data | Да | OrderData | Основная информация о заказе |
extra | Нет | DocumentExtra | Дополнительная информация |
Структура OrderData
:
Параметр | Обязательный | Тип | Комментарий |
---|---|---|---|
contact_person | Да | string | Контактное лицо |
release_method_type | Да | String | Метод выпуска товаров Возможные варианты: «IMPORT» - Импорт в РФ «PRODUCTION» - Производство в РФ «REMAINS» - Маркировка остатков |
create_method_type | Да | String | Способ изготовления СИ Возможные варианты: «SELF_MADE» - Самостоятельно «CEM» - ЦЭМ |
production_order_id | Нет | String | Идентификатор производственного заказа |
remains_import | Нет | Bool | Товар был импортирован до даты запрета оборота немаркированных товаров |
remains_available | Нет | Bool | Товар был произведен до даты запрета оборота немаркированных товаров |
contract_date | Нет | Date | Дата договора с оператором (не используется) |
contract_number | Нет | String | Номер договора с оператором (не используется) |
Структура DocumentExtra
:
Параметр | Обязательный | Тип | Комментарий |
---|---|---|---|
name | Нет | String | Произвольное имя документа |
Пример запроса (JSON) :
Параметры ответа :
Параметр | Тип | Комментарий |
---|---|---|
document_id | String | Уникальный ID Документа |
status | String | Статус документа |
created | String | Дата создания |
data | Объект OrderData | Основная информация о заказе |
extra | Объект DocumentExtra | Дополнительная информация |
external_id | String | ID заказа в СУЗ |
Пример ответа (JSON) :
#
Получение одного заказа по IDURL : /bp/processes/order/{id}/
Method : GET
Ответ на запрос аналогичен ответу на запрос создания заказа
#
Редактирование заказаURL : /bp/processes/order/{id}/
Method : PATCH
Content type : application/json
Тело запроса и ответ аналогичны созданию заказа
#
Удаления заказаURL : /bp/processes/order/{id}/
Method : DELETE
#
Создание позиций заказаURL : /bp/processes/order/{id}/children/create/
Method : POST
Content type : application/json
Тело запроса :
Параметр | Обязательный | Тип | Комментарий |
---|---|---|---|
data | Да | Объект OrderChildData | Основная информация о заказе |
Структура OrderChildData
:
Параметр | Обязательный | Тип | Комментарий |
---|---|---|---|
gtin | Да | string | GTIN товара |
quantity | Да | Number | Кол-во довом маркировки |
serial_number_type | Да | String | Тип генерации серийного номера Возможные варианты: «OPERATOR» - Оператором ИС МП «SELF_MADE» - Самостоятельно |
serial_numbers | Да, если serial_number_type = «SELF_MADE» | Array | Массив серийных номеров |
template_id | Да | Number | Номер шаблона кода маркировки Возможные варианты: «1» - Лёгкая промышленность, обувь |
Пример запроса (JSON) :
Параметры ответа :
Параметр | Тип | Комментарий |
---|---|---|
document_id | String | Уникальный ID Позиции заказа |
created | String | Дата создания |
data | Объект OrderChildData | Основная информация о позиции заказе |
#
Получение одного позиции заказа по IDURL : /bp/document/document/{id}/
Method : GET
Ответ на запрос аналогичен ответу на запрос создания позиции заказа
#
Редактирование позиции заказаURL : /bp/document/document/{id}/
Method : PATCH
Content type : application/json
Тело запроса и ответ аналогичны созданию позиции заказа
#
Удаления заказаURL : /bp/document/document/{id}/
Method : DELETE
#
Отправка заказаОтправка заказа на обработку в СУЗ
URL : /bp/processes/order/{id}/execute/
Method : POST
#
Отслеживание статуса заказаДля получения статуса заказа, можно использовать запрос GET
/bp/processes/order/{id}/
Возможные статусы заказа :
Статус | Значение |
---|---|
draft | Черновик |
request_created | Заказ в обработке |
completed | Завершен (коды маркировки получены) |
failed | Отклонен |
#
Проверка синхронизации кодов маркировки по заказуДля того чтобы проверить сколько осталось несинхронизированных кодов по заказу, можно отправить запрос на получение кодов маркировки, передав в параметре documents
айди документа, полученный при создании заказа, и в параметре status
передать значение NotRegistered
.
Если в ответе, в поле count
вернеться 0
, значит все коды синхронизированны.
#
Получение кодов маркировки по заказуДля того чтобы получить коды по заказу, можно отправить запрос на получение кодов маркировки, передав в параметре documents
айди документа, полученный при создании заказа.
#
Получение кодов маркировкиURL : /bp/code/code/
Method : GET
Параметры запроса :
Параметр | Обязательный | Комментарий |
---|---|---|
page_size | Нет | Кол-во элементов на странице |
page | Нет | Номер страницы |
ordering | Нет | Сортировка |
documents | Нет | ID докумена |
status | Нет | Статус кода маркировки |
gtin | Нет | GTIN |
serial | Нет | Серийный номер |
cis | Нет | Читаемая часть кода маркировки |
Возможные статусы кода маркировки :
Статус | Значение |
---|---|
NotRegistered | Не синхронизован с ГИС МТ |
Emitted | Выпущен |
Applied | Нанесен |
Introduced | Введен в оборот |
Retired | Выведен из оборота |
Disaggregation | Дезагрегирован |
Пример запроса (cURL) :
Параметры ответа :
Параметр | Тип | Комментарий |
---|---|---|
count | Number | Общее колвичество найденных кодов маркировки |
results | Array MarkingCode | Массив с кодами маркировки |
Структура MarkingCode
:
Параметр | Тип | Комментарий |
---|---|---|
id | String | Уникальный ID кода маркировки в системе |
gtin | String | GTIN |
serial | String | Серийный номер |
cis | String | Читаемая часть кода маркировки |
code | String | Код маркировки вместе с крипточастью |
status | String | Статус кода маркировки |
emission_date | DateTime | Дата эмиссии кода маркировки |
emission_type | String | Тип эмиссии |
external_status | String | Статус кода в ГИС МТ |
last_es_update | DateTime | Дата последней синхронизации кода с ГИС МТ |
product_group | String | Товарная группа |
order_id | String | Номер заказа в СУЗ |