Создание заказов (УСТАРЕВШИЙ МЕТОД!)

Создание поставки с заказами (УСТАРЕВШИЙ МЕТОД!)

POST /api/take_pkgs

Внимание Использовать этот метод не рекомендуется! Используйте актуальный метод апи: POST /api/create_shipment.

Передает в систему Glavpunkt.ru данные об отгружаемых заказах, при этом формируется электронная накладная.

Примеры запросов

Пример запроса с использованием Php + Curl

<?php

$data = json_encode([
  'login' => "userlogin", // логин интернет-магазина
  'token' => "token", // token для авторизации
  'comments_client' => "комментарий к накладной",
  'punkt_id' => "AB-SPB-Moskovskaya", // Пункт отгрузки заказов, если вы сами привозите их на ПВЗ
  'pickup_id' => 123, // Добавить заказы в заявку на забор (см /api/pickup_create)
  'orders' => [
      [ // Перемещение с услугой примерочной
          'serv' => 'выдача',
          'sku' => "ТEST-PKG-2-2",
          'price' => 3600,
          'weight' => 1,
          'primerka' => 1,
          'dst_punkt_id' => "SZ-SPB-Sennaya",
          'parts' => [
              [
                  'name' => "Футболка 1", 'price' => 1100
              ],
              [
                  'name' => "Футболка 2", 'price' => 1200
              ],
              [
                  'name' => "Футболка 3", 'price' => 1300
              ]
          ]
      ],
      [ // Заказ на выдачу по РФ
          'serv' => 'выдача по РФ',
          'sku' => "ТEST-PKG-3",
          'barcode' => "830467",
          'price' => 5000,
          'buyer_phone' => "79001112233",
          'buyer_fio' => "Сидоров А.А",
          'weight' => 1,
          'delivery_rf' => [ // Параметры выдачи по РФ
              'city_id' => 'AMR',
              'pvz_id' => 'RF27141'
          ],
          'parts' => [
              [
                  'name' => "Брюки 1", 'price' => 1100
              ],
              [
                  'name' => "Брюки 2", 'price' => 1200
              ],
              [
                  'name' => "Брюки 3", 'price' => 1300
              ]
          ]
      ],
      [ // Заказ с указанием номенклатуры (товаров)
          'serv' => 'выдача',
          'sku' => "ТEST-PKG-5",
          'price' => 4200, // стоимость должна совпадать с суммарной стоимостью товаров в нем!
          'is_prepaid' => 0,
          'buyer_phone' => "79001112233",
          'weight' => 1,
          'partial_giveout_enabled' => 1,// Если нужна частичная выдача
          'parts' => [
              [
                  'name' => "Война и мир, Л.Н.Толстой, том 1", 'price' => 1500
              ],
              [
                  'name' => "Война и мир, Л.Н.Толстой, том 2", 'price' => 1400
              ],
              [
                  'name' => "Война и мир, Л.Н.Толстой, том 3", 'price' => 1300
              ]
          ]
      ]
  ]
  ]);

  $ch = curl_init();

  // set url
  curl_setopt($ch, CURLOPT_URL, "https://glavpunkt.ru/api/take_pkgs");

  curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
  curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_HTTPHEADER, [
      'Content-Type: application/json',
      'Content-Length: ' . strlen($data)
  ]);

  // return JSON
  $result = curl_exec($ch);
  curl_close($ch);

Справочник параметров заказа

Название параметра

Описание

Возможные значения

Обязательный?

serv

Тип заказа

выдача“, „курьерская доставка“, „выдача по РФ“, „почта

Да

sku

Номер заказа

Произвольная строка длиной до 100 символов

Да, должен быть уникальным

price

Цена заказа / оценочная стоимость (если заказ предоплачен)

Положительное число

Да

insurance_val

Оценочная стоимость (если не указан,то используется значение price)

Положительное число

Нет

primerka

Услуга примерочной на пункте выдачи

1 - да, 0 - нет

Нет. Доступно только для пунктов: Озерки, Купчино2, Чернышевская, Сенная

weight

Вес заказа

Вес в кг (до 20 кг)

Обязательно для следующих типов заказов: „курьерская доставка“,“выдача по РФ“ и заказов на перемещение

barcode

Штрих-код заказа

Произвольная строка длиной до 100 символов

Нет

is_prepaid

Признак, что заказ предоплачен

1“ если заказ предоплачен, „0“ - не предоплачен (по-умолчанию „0“)

Нет

buyer_fio

ФИО клиента

Произвольная строка длиной до 255 символов

Обязательно для заказов с типом „курьерская доставка“, „почта“, „выдача по РФ

buyer_phone

Телефон клиента

Указывайте телефон, на который клиент сможет получить SMS. Пример: 79001112233

Обязательно для заказов с типом „курьерская доставка“, „почта“, „выдача по РФ

comment

Комментарий к заказу

Произвольная строка длиной до 255 символов

Нет

dst_punkt_id

ID пункта назначения в случае перемещения заказа

См. api-getpunkts

Нет

items_count

Количество мест в заказе

Не более 20 мест (по-умолчанию „1“)

Нет

partial_giveout_enabled

Разрешить выдачу заказа по частям. Требуется передать состав заказа в поле parts. См. Параметры указания номенклатуры (товаров)

1“ если заказ можно выдавать частично (по-умолчанию „0“)

Нет

delivery

Параметры курьерской доставки

См. Параметры курьерской доставки

Обязательно для заказа: „курьерская доставка

delivery_rf

Доступно только для заказов, отгружаемых на ПВЗ в г. Санкт-Петербург. Параметры выдачи заказа по РФ

См. Параметры выдачи заказа по РФ

Обязательно для заказа: „выдача по РФ

pochta

Доступно только для заказов, отгружаемых на ПВЗ в г. Санкт-Петербург. Параметры выдачи заказа почтой России

См. Параметры выдачи заказа Почтой России

Обязательно для заказа: „почта

Параметры курьерской доставки


Название параметра

Описание

Возможные значения

Обязательный?

city

Код населенного пункта для доставки.

Для доставки по Спб указать «SPB», для Москвы - «MSK». Указание названия города возможно, но для повышения точности рекомендуем передавать его код.

См. Города России для услуги курьерская доставка

Да

address

Адрес доставки

Подробный адрес доставки

Да

date

Дата доставки. По воскресеньям доставки нет.

dd.mm.yyyy

Да, если доставка по СПб, Мск и их областям. Для остальных регионов не обязательно.

time

Временной интервал доставки

Допустимые форматы: «с 10 до 18», «10:00-18:00», «с 10:00 до 18:00». Для СПб минимальный интервал доставки 3ч, для Мск 5ч. Рамки: от 10 до 18.

Все значения, выходящие за рамки «10:00-18:00», будут сужены до этого диапазона.

Да, если доставка по Спб, Мск и их областям. Для остальных регионов не обязательно.

18_21

Доставить в вечерний интервал. Стоимость доставки возрастает на 50%. Доступно только для заказов с доставкой «По Петербургу» (не включая область)

1“ если необходимо, „0“ - если не требуется (по-умолчанию „0“)

Нет

Параметры выдачи заказа по РФ


Название параметра

Описание

Возможные значения

Обязательный?

city_id

Код города доставки

См Города для услуги выдача РФ

Да

pvz_id

Код пункта выдачи в указанном городе

См pvzs-rf

Да

Параметры выдачи заказа Почтой России


Название параметра

Описание

Возможные значения

Обязательный?

address

Максимально подробный адрес. Рекумендуем в начале адреса указывать почтовый индекс.

Россия, Москва Рогова, дом 12, корпус 2, строение 1

Да

Параметры указания номенклатуры (товаров)


Название параметра

Описание

Возможные значения

Обязательный?

name

Наименование товара

Война и мир, Л.Н.Толстой, том 1

Да

price

Стоимость товара

100

Да

barcode

Штрих-код

Нет

num

Количество товара (по-умолчанию „1“). Используется для расчета итоговой стоимости заказа.

1

Нет

Формирование заказов из товаров на складе

POST /api/take_pkgs_from_goods

Метод позволяет сформировать заказ из товаров, находящихся на складе Glavpunkt.ru При этом формируется электронная накладная.

Параметры метода такие же, как в /api/take_pkgs. Единственное отличие, в массиве заказа надо указывать обязательное поле goods. Поле price сверяется с суммой, равной стоимости передаваемых товаров.

Пример запроса

{
  login : "userlogin",       // логин интернет-магазина
  token : "xxxx_token_xxxx", // token для авторизации
  comments_client : "создание заказов из товаров",
  punkt_id : "AB-SPB-Moskovskaya", // Пункт, где надо сформировать заказы
  orders : [
    {
      serv  : 'выдача',
      sku   : "ТEST-1",
      price : 200, // Общая стоимость всех товаров в заказе, с учетом количества
      goods: [
        {
          good_id: 123, // ID товара
          count: 1 // Кол-во товара
        },
        {
          good_sku: "123", // артикул товара (sku)
          count: 1 // Кол-во товара
        }
      ]
    },
    {
      serv  : 'выдача',
      sku   : "ТEST-2",
      price : 500,
      goods: [
        {
          good_id: 124,
          count: 2
        },
        {
          good_id: 125,
          count: 3
        }
      ]
    }
  ]
}

Для получения остатков товаров на складе, см. Получить товары, находящиеся в Главпункте

Ответ

если заказы сформированы успешно

{
   result : "ok",
   docnum : 2123 // номер накладной
}

если произошла ошибка

{
   result  : "error",
   message : "сообщение об ошибке"
}