Передача кодов «Честного знака»

Этот метод устарел. Вместо него используйте PUT campaigns/{campaignId}/orders/{orderId}/identifiers.

Передает Маркету коды маркировки для товаров в указанном заказе.

Для каждой позиции в заказе, требующей маркировки, нужно передать список кодов — по одному для каждой единицы товара. Например, если в заказе две пары тапочек и одна пара туфель, получится список из двух кодов для первой позиции и список из одного кода для второй.

⚙️ Лимит: 1 000 000 запросов в час

Request

PUT

https://api.partner.market.yandex.ru/campaigns/{campaignId}/orders/{orderId}/cis

Path parameters

Name

Description

campaignId*

Type: integer<int64>

Идентификатор кампании в API и магазина в кабинете. Каждая кампания в API соответствует магазину в кабинете.

Чтобы узнать идентификаторы своих магазинов, воспользуйтесь запросом GET campaigns.

ℹ️ Что такое кабинет и магазин на Маркете

orderId*

Type: integer<int64>

Идентификатор заказа.

Body

application/json
{
    "items": [
        {
            "id": 0,
            "instances": [
                {
                    "cis": "string"
                }
            ]
        }
    ]
}

Name

Description

items*

Type: OrderItemInstanceModificationCisDTO[]

Собственно список позиций, требующих маркировки.
Позиция в корзине, требующая маркировки.

OrderItemInstanceModificationCisDTO

Позиция в корзине, требующая маркировки.

Name

Description

id*

Type: integer<int64>

Идентификатор товара в заказе.

Он приходит в ответе на запрос GET campaigns/{campaignId}/orders/{orderId} и в запросе Маркета POST order/accept — параметр id в items.

instances*

Type: BriefOrderItemInstanceCisDTO[]

Список кодов маркировки единиц товара.
Маркировка единицы товара.

BriefOrderItemInstanceCisDTO

Маркировка единицы товара.

Name

Description

cis*

Type: string

Код идентификации единицы товара в системе «Честный ЗНАК».

Важно

Не экранируйте косую черту в коде символа-разделителя \u001d!

01030410947874432155Qbag!\u001d93Zjqw

01030410947874432155Qbag!\\u001d93Zjqw

Косые черты и кавычки в других местах экранируйте по правилам JSON: \\ и \"

Responses

200 OK

Ответ 200 обозначает, что коды маркировки успешно записались. Ответ содержит краткие сведения о промаркированных товарах.

Body

application/json
{
    "status": "OK",
    "result": {
        "items": [
            {
                "id": 0,
                "vat": "NO_VAT",
                "count": 0,
                "price": 0,
                "offerName": "string",
                "offerId": "string",
                "instances": [
                    {
                        "cis": "string",
                        "cisFull": "string"
                    }
                ]
            }
        ]
    }
}

Name

Description

status

Type: ApiResponseStatusType

Тип ответа.
Enum: OK, ERROR

result

Type: OrderItemsModificationCisResultDTO

Краткие сведения о промаркированных товарах. Параметр возвращается, если ответ OK.

ApiResponseStatusType

Тип ответа.

Type

Description

ApiResponseStatusType

Enum: OK, ERROR

OrderItemsModificationCisResultDTO

Краткие сведения о промаркированных товарах. Параметр возвращается, если ответ OK.

Name

Description

items

Type: BriefOrderItemCisDTO[]

Список позиций в заказе, подлежащих маркировке.
Информация о промаркированном товаре.

BriefOrderItemCisDTO

Информация о промаркированном товаре.

Name

Description

id

Type: integer<int64>

Идентификатор товара в заказе.

Позволяет идентифицировать товар в рамках данного заказа.

vat

Type: OrderVatType

Ставка налога на добавленную стоимость (НДС) на услугу доставки заказа.
Enum: NO_VAT, VAT_0, VAT_10, VAT_10_110, VAT_20, VAT_20_120, VAT_18, VAT_18_118, UNKNOWN_VALUE

count

Type: integer<int32>

Количество единиц товара.

price

Type: number

Цена на товар. Указана в той валюте, которая была задана в каталоге. Разделитель целой и дробной части — точка.

offerName

Type: string

Название товара.

offerId

Type: string

Ваш идентификатор товара.
Min length: 1
Max length: 255
Pattern: ^[^\x00-\x08\x0A-\x1f\x7f]{1,255}$

instances

Type: OrderItemInstanceCisDTO[]

Переданные вами коды маркировки.
Переданные вами для данной позиции коды маркировки. Возвращаются в двух вариантах — с криптохвостом и без.

OrderVatType

Ставка налога на добавленную стоимость (НДС) на товар:

  • NO_VAT — НДС не облагается, используется только для отдельных видов услуг.

  • VAT_0 — НДС 0%. Например, используется при продаже товаров, вывезенных в таможенной процедуре экспорта, или при оказании услуг по международной перевозке товаров.

  • VAT_10 — НДС 10%. Например, используется при реализации отдельных продовольственных и медицинских товаров.

  • VAT_10_110 — НДС 10/110. Расчетная ставка НДС 10%, применяется только при предоплате.

  • VAT_20 — НДС 20%. Основная ставка с 2019 года.

  • VAT_20_120 — НДС 20/120. Расчетная ставка НДС 20%, применяется только при предоплате.

  • VAT_18 — НДС 18%. Основная ставка до 2019 года.

  • VAT_18_118 — НДС 18/118. Ставка использовалась до 1 января 2019 года при предоплате.

  • UNKNOWN_VALUE — неизвестный тип.

Используется только совместно с параметром payment-method=YANDEX.

Type

Description

OrderVatType

Enum: NO_VAT, VAT_0, VAT_10, VAT_10_110, VAT_20, VAT_20_120, VAT_18, VAT_18_118, UNKNOWN_VALUE

OrderItemInstanceCisDTO

Переданные вами для данной позиции коды маркировки. Возвращаются в двух вариантах — с криптохвостом и без.

Name

Description

cis

Type: string

Код идентификации единицы товара в системе «Честный ЗНАК» без криптохвоста.

cisFull

Type: string

Код идентификации единицы товара в системе «Честный ЗНАК» с криптохвостом.

400 Bad Request

Запрос содержит неправильные данные.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

status

Type: ApiResponseStatusType

Тип ответа.
Enum: OK, ERROR

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

ApiErrorDTO

Общий формат ошибки.

Name

Description

code*

Type: string

Код ошибки.

message

Type: string

Описание ошибки.

401 Unauthorized

В запросе не указаны данные для авторизации.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

status

Type: ApiResponseStatusType

Тип ответа.
Enum: OK, ERROR

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

403 Forbidden

Данные для авторизации неверны или доступ к ресурсу запрещен.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

status

Type: ApiResponseStatusType

Тип ответа.
Enum: OK, ERROR

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

404 Not Found

Запрашиваемый ресурс не найден.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

status

Type: ApiResponseStatusType

Тип ответа.
Enum: OK, ERROR

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

420 Method Failure

Превышено ограничение на доступ к ресурсу.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

status

Type: ApiResponseStatusType

Тип ответа.
Enum: OK, ERROR

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.

500 Internal Server Error

Внутренняя ошибка сервера.

Body

application/json
{
    "status": "OK",
    "errors": [
        {
            "code": "string",
            "message": "string"
        }
    ]
}

Name

Description

status

Type: ApiResponseStatusType

Тип ответа.
Enum: OK, ERROR

errors

Type: ApiErrorDTO[]

Список ошибок.
Общий формат ошибки.