Top.Mail.Ru

Курьерская доставка для интернет-магазинов

24/7
Круглосуточно

Передача маркировки товара при создании заказа

15 Марта 2021

При создании заказа, возможна передача маркировки. Маркировка товара будет использована при печати чека в момент доставки заказа.

Маркировка принимается в двух форматах:

  1. В виде строки, содержащей код товара и его серийный номер, с указанием разделителей 01 и 21, либо (01) и (21). Строка может быть закодирована в Base64 (тогда при передаче нужно указать флаг bar_code в 1), либо передана в исходном состоянии (тогда bar_code = 0).
    Передача маркировки, закодированной в Base64, более предпочтительна, т.к. маркировка может содержать символы, которые могут требовать экранирования для корректной передачи (например, &) в теле запроса.

Передача маркировки товара при создании заказа

 

2. В виде строки, подготовленной для передачи в Честный знак.
Правила преобразования указаны в инструкции от Честного знака. Строка может быть закодирована в Base64 (тогда при передаче нужно указать флаг bar_code в 1), либо передана в исходном состоянии (тогда bar_code = 0).

! Маркировка, переданная в любом другом формате, не будет отражена в чеке, и продажа товара не будет зарегистрирована в Честном знаке.

$data = [
    'goods' => [
        [
            'articul' => 'Артикул товара 1',
            'artname' => 'Название товара 1',

            // Количество товара
            'count' => 1,

            // Цена товара
            'price' => 1350,

            // Ставка НДС для товара
            'nds' => 7,

            // Вес товара в килограммах
            'weight' => 0.34,

            // Закодирована ли маркировка в base64? Если да, то 1. Иначе - 0
            'bar_code' => 1,

            // Сам код маркировки товара
            'bar_code_goods' => 'Код маркировки товара',
        ]
    ],

    // Ключ API
    'key' => '_ваш_ключ_API_',

    // Внутренний номер заказа в вашей ИС
    'inner_n' => '_внутренний_номер_заказа_',

    // Дата доставки
    'delivery_date' => '2021-02-10',

    // Интервал доставки
    'delivery_time' => 2,

    // Нужен ли приём наложенного платежа
    'np' => 1,

    // Имя покупателя
    'target_name' => 'Имя покупателя',

    // Номер телефона покупателя
    'target_contacts' => '+79999999999',

    // Наложенный платёж
    'price_client' => 1530,

    // Стоимость доставки для получателя заказа
    'price_client_delivery' => 180,

    // Объявленная стоимость
    'os' => 1200,

    // Количество мест в заказе
    'places_count' => 3,

    // Вес заказа в кг
    'order_weight' => 0.86,

    // Габариты заказа В САНТИМЕТРАХ
    // ширина
    'dimension_side1' => 50,
    // длина
    'dimension_side2' => 30,
    // высота
    'dimension_side3' => 4,

    // почтовый индекс
    'post_code' => '119334',

    // Адрес доставки
    'addr' => 'Москва, Ленинский проспект 34',

    // В комментарий добавляется квартира и домофон
    'target_notes' => 'кв. 25, домофон 25К8080, позвонить за час',

    // Опции доставки
    // отправлять СМС
    'sms' => 1,
    //вскрытие разрешено
    'open_option' => 1,
    // предварительный звонок клиенту не нужен
    'call_option' => 0,
    // нужно вернуть накладную по заказу
    'docs_option' => 1,
    // частичный отказ возможен
    'partial_option' => 1,
    // примерка/проверка электроники разрешена
    'dress_fitting_option' => 1,
    // подъем на этаж крупногабаритного заказа осуществляет покупатель
    'lifting_option' => 0,
];

$headers = [
    'Accept: application/json',
    'Content-Type: application/json',
];

$ch = curl_init('https://api.logsis.ru/apiv2/createorder');
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);

if ($response === false) {
    throw new \Exception(curl_error($ch));
}

$answer = json_decode($response, true);

// заказ успешно добавлен
if ($answer['status'] == 200) {
    $trackingNumber = $answer['response']['order_id'];
    echo 'Заказ добавлен, номер для трекинга: ' . $trackingNumber;
} else {
    // произошла ошибка добавления
    echo $answer['response']['Error'];
}

 

Данные в формате JSON:

{
    "goods": [
        {
            "articul": "Артикул товара 1",
            "artname": "Название товара 1",
            "count": 1,
            "price": 1350,
            "nds": 7,
            "weight": 0.34,
            "bar_code": 1,
            "bar_code_goods": "Код маркировки товара"
        }
    ],
    "key": "_ваш_ключ_API_",
    "inner_n": "_внутренний_номер_заказа_",
    "delivery_date": "2021-02-10",
    "delivery_time": 2,
    "np": 1,
    "target_name": "Имя покупателя",
    "target_contacts": "+79999999999",
    "price_client": 1530,
    "price_client_delivery": 180,
    "os": 1200,
    "places_count": 3,
    "order_weight": 0.86,
    "dimension_side1": 50,
    "dimension_side2": 30,
    "dimension_side3": 4,
    "post_code": "119334",
    "addr": "Москва, Ленинский проспект 34",
    "target_notes": "кв. 25, домофон 25К8080, позвонить за час",
    "sms": 1,
    "open_option": 1,
    "call_option": 0,
    "docs_option": 1,
    "partial_option": 1,
    "dress_fitting_option": 1,
    "lifting_option": 0
}
Передача маркировки товара при создании заказа

Получить коммерческое предложение

Нажимая кнопку «Отправить», вы соглашаетесь с условиями
политики конфиденциальности
Передача маркировки товара при создании заказа