Полезная информация. Как защитить данные в интернете
Rus / Eng

Логистические услуги для интернет-магазинов от транспортной Компании «ПЭК» - оказание логистических услуг для интернет-магазинов

Для использования API необходимо получить учетную запись.

При вызове методов используется basic-авторизация.

Для PHP разработчиков реализован SDK.

Для пользователей Wordpress есть плагин для запроса статусов заявок.

Для разработчиков на платформе 1С:Предприятие реализована внешняя обработка.

Список методов

Статусы заказов

Описание методов

createOrder

Cоздание заявки на доставку груза

POST-запрос к ресурсу http://apiurl/createOrder

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

{
    id: 'test123457',   // Идентификатор заказа в системе клиента
    locationFrom: 'Москва, ул. Складочная, д 1, стр 9',        // Адрес отправления
    locationTo: 'Ростов-на-Дону, ул. М. Горького, 130; кв.4',  // Адрес получения
    pickupPointCode: '123', // Код ПВЗ, полученный методом getPickupPoints из поля guid. Обязательный, если тип доставки 2 или 4
    cargoCount: 2,          // Количество грузомест
    weight: 1.5,            // Вес в килограммах
    length: 15,             // Длина в сантиметрах
    width: 30,              // Ширина в сантиметрах
    height: 20,             // Высота в сантиметрах
    assessedCost: 999.99,   // Оценочная стоимость
    paymentMethod: 0,       // Способ оплаты (0 - Безналичная, 1 - Наличными, 2 - предоплата (без наложенного платежа)
    deliveryType: 1,        // Тип доставки (1 - Авто до двери, 2 - Авто до ПВЗ, 3 - Авиа до двери, 4 - Авиа до ПВЗ)
    deliveryInterval: {     // Желаемый интервал доставки
        start: '2018-09-20T16:00:00',
        end: '2018-09-20T18:00:00'
    },
    total: 999.99,          // Итого с клиента
    senderId: '',           // Идентификатор отправителя (в случае нескольких юр. лиц), необязательный
    clientRelatedDocumentsBarcode: '000000', // Штрихкод сопроводительного документа, необязательный
    sender: {                        // Отправитель, необязательный (используется при отправке от сторонних юр. лиц)
        contactName: 'Сидоров Иван', // Контактное лицо отправителя, необязательный
        contactPhone: '9055089784',  // Телефон, необязательный
        inn:'5036285793',            // ИНН Отправителя, необязательный
        name: 'ООО Отправитель',     // Наименование юридического лица, необязательный
        organization: {              // Грузоотправитель, обязательный при использовании отправки от сторонних юр. лиц
            inn: '5036285799',            // ИНН Грузоотправителя
            name: 'ООО Грузоотправитель'  // Наименование юридического лица грузоотправителя
        }
    },
    noPickup: true,         // true - в случае самостоятельной доставки груза на склад Easy Way, необязательный
    PickupType: 4,          // Если используется отдельный Заказ на подачу машины и заказ должен быть забран по такой заявке,
                            // то при подаче Заказа необходимо передавать данный тэг со значением - 4. В остальных случаях тэг не передается.
    pickupInterval: {       // Желаемый интервал забора груза, необязательный
        start: '2018-09-19T16:00:00',
        end: '2018-09-19T18:00:00'
    },
    items: [{               // Товарный состав, необязательный
        article: '123456',    // Артикул
        name: 'Телефон LG',   // Наименование
        count: 1,             // Количество
        price: 800,           // Цена с НДС
        sum: 800,             // Сумма с НДС
        vat: 18,              // Ставка НДС (%)
        vatSum: 122.03        // Сумма НДС
        labelKIZ: '000000'    // Контрольно-идентификационный знак, уникален внутри товарного состава (count не может быть больше 1)
    }, {
        article: '123457',
        name: 'Телефон LG',
        count: 2,
        price: 199.99,
        sum: 399.98,
        vat: 18,
        vatSum: 61.01
    }],
    places: [  // Характеристики грузовых мест
        {
            length: 40,      // Длина (см)
            width: 30,       // Ширина (см)
            height: 130,     // Высота (см)
            volume: 0.002,   // Объём (м3)
            weight: 6,       // Вес (кг)
            barcode: '123456' // Штрихкод грузового места
        }, {
            length: 30,
            width: 20,
            height: 70,
            volume: 0.001,
            weight: 4,
            barcode: '123457'
        }
    ],
    recipient: {           // Получатель
        organization: {                // Заполняется, если получатель - юридическое лицо
            inn: '5036285792',           // ИНН получателя
            name: 'ООО Наша Организация' // Наименование юридического лица
        },
        name: 'Иванов Иван', // ФИО получателя
        phone: '9055089783',  // Телефон
        identityDocuments: { // необязательный, данные блок необходимо заполнять для заказов превышающих пороговую оценочную стоимость (для большинства клиентов это 100 000 руб.)
            type: 10, // тип документа удостоверяющего личность (список возможных значений смотрите в приложении 1)
            series: "2505", // серия документа
            number: "123456" // номер документа
        }
    },
    services: [            // Дополнительные услуги, необязательный
        'hardPack',                  // Жесткая упаковка
        'addPack1',                  // Дополнительная упаковка
        'addPack2',                  // Пузырьковая пленка
        'docReturn',                 // Возврат документов
        'loadUnload',                // Погрузочно-разгрузочные работы
        'recipientPayer',            // Оплата получателем
        'nightDelivery',             // Ночная доставка
        'partialDistribution'        // Частичная выдача
    ]
}

Пример ответа

{
    isError: false,
    errors: [
        {
            code: 200,
            descr: "Описание"
        },
    ],
    data: {
        id: "000032888"
    }
}

Приложение 1. Список кодов документов удостоверяющих личность.

1 - Иностранный паспорт;
2 - Разрешение на временное проживание в Российской Федерации;
3 - Водительское удостоверение,;
4 - Вид на жительство;
5 - Загранпаспорт гражданина РФ;
6 - Удостоверение беженца;
7 - Временное удостоверение личности гражданина РФ;
8 - Свидетельство о предоставлении временного убежища на территории Российской Федерации;
9 - Паспорт моряка;
10 - Паспорт гражданина РФ;
11 - Свидетельство о регистрации ходатайства иммигранта о признании его беженцем;
12 - Военный билет солдата (матроса, сержанта, старшины).

updateOrder

Изменение заявки

Используется при необходимости уточнения после подачи Заявки ее параметров и только до передачи груза водителю
(гарантируется работа только при использовании технологии раздельной подачи заявок на грузы и Заказ машины)

POST-запрос к ресурсу http://apiurl/updateOrder

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

{
    id: "011078257", 	// номер заказа (полученный при вызове createOrder)
    locationFrom: "Москва, ул. 2-ая Мелитопольская вл. 10А, стр. 13",  			// Адрес отправления
    locationTo: "Россия, Москва, Москва, 5 - донской проезд. д 21 к12 . кв 25.",  	// Адрес получения
    cargoCount: 1,  	// Количество грузомест
    weight: 0.5,  	// Вес в килограммах
    length: 0,  		// Длина в сантиметрах
    width: 0,   		// Ширина в сантиметрах
    height: 0,   		// Высота в сантиметрах
    assessedCost: 9478,   // Оценочная стоимость
    total: 9478,       	// Итого с клиента
    paymentMethod: 0,  	// Способ оплаты (0 - Безналичная, 1 - Наличными, 2 - предоплата (без наложенного платежа)
    deliveryType: 1,   	// Тип доставки (тип доставки 1- Авто до двери, 2- Авто до ПВЗ, 3 - Авиа до двери, 4 - Авиа до ПВЗ)
    sender: {			// Отправитель, необязательный (используется при отправке от сторонних юр. лиц)
        inn: "", 						// ИНН Отправителя, необязательный
        name: "ООО \"ПЭК:МОЛЛ\"", 				// Наименование юридического лица, необязательный
        contactName: "Любутин Александр Геннадьевич", 	// Контактное лицо отправителя, необязательный
        contactPhone: "89197221234" 			// Телефон, необязательный
    },
    senderId: "",		// Идентификатор отправителя (в случае нескольких юр. лиц), необязательный
    recipient: {		// Получатель
        name: "Крылова Наталья Владимировна",		// ФИО получателя
        phone: "79164234243"				// Телефон
    },
    items: [	// Товарный состав, необязательный
        {
            article: "Barracuda",		// Артикул
            name: "Видеорегистратор с радар-детектором Inspector Barracuda (GPS, ГЛОНАСС)",	// Наименование
            count: 1,			// Количество
            price: 9478,			// Цена с НДС
            sum: 9478,			// Сумма с НДС
            vat: 20,			// Ставка НДС (%)
            vatSum: 1579.67		// Сумма НДС
        }
    ],
    noPickup: true,	// true - в случае самостоятельной доставки груза на склад Easy Way, необязательный
    places: [	// Характеристики грузовых мест
        {
            volume: 2.16,		// Объём (м3)
            weight: 0.5,		// Ширина (см)
            length: 1.2,		// Длина (см)
            width: 0.8,		// Вес (кг)
            height: 2.25,		// Высота (см)
            barcode: "PL-23553"	// Штрихкод грузового места
        }
    ],
    services: []		// Дополнительные услуги, необязательный
}

Пример ответа

{
    isError: false,
    errors: [
        {
            code: 400,
            descr: "Не удалось распознать дату получения. Будет установлена текущая дата Заявка на перевозку груза 011078257 от 25.05.2021 13:04:15 изменена"
        }
    ],
    data: {
        id: "011078257",
        track: "EASRU011078257YQ"
    }
}

createPickup

Cоздание заявки на заказ машины

Создает заявку на заказ машины при использовании процесса разделенной подачи заявок и заказов на машину (подробности уточняйте у менеджеров EasyWay)

POST-запрос к ресурсу http://apiurl/createPickUp

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

{
    id: "111ТЕСТ_ЗаказМашины",   //Номер заказа, строка
    pickupDate: "2020-10-01T10:00:00", //Дата забора груза, дата
    locationFrom: "Москва, 7-я Парковая, д. 27, кв. 40", //Адрес отправления груза, строка
    cargoCount: 1, //Количество грузовых мест, число
    weight: 2.1, //Масс груза, число
    volume: 2,   //Объем груза, число
    comment: "Зоотовары" //Комментарий, строка. Необязательное поле.
}

Пример ответа

{
    isError: false,
    errors: [
        {
            code: 400,
            descr: "Не удалось распознать дату получения. Будет установлена текущая дата Создана \"Заявка на перевозку груза 010119510 от 07.10.2020 14:47:09\" с номером КИС \"222ТЕСТ_ЗаказМашины\""
        }
    ],
    data:    {
        id: "010119510",
        track: "EASRU010119510YQ"
    }
}

cancelOrder

Отмена заявок на доставку груза

POST-запрос к ресурсу http://apiurl/cancelOrder

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

["000034152", "000034150"] // Массив id заявок, полученных методом createOrder

Пример ответа

{
    isError: false,
    errors: [["code": 200, "descr": "Описание"], [...]],
    data: [{
        id: "000034152",
        cancel: true,
        descr: "Отменена"
    }, {
        id: "000034150",
        cancel: false,
        descr: "Не найдена"
    }]
}

getPickupPoints

Получение списка ПВЗ

GET-запрос к ресурсу http://apiurl/getPickupPoints

Пример ответа

[
    {
        city: "Москва",
        address: "Россия, Москва, Востряковский проезд, 10Бс19",
        lat: 55.577271,
        lng: 37.626052,
        office: true,
        guid: "67534813-855d-11e6-80c7-000d3a2542c4",
        partner: "ПЭК",
        schedule: "",
        phone: ""
    }, {
        city: "Ярославль",
        address: "Россия, Ярославль, проспект Октября, 93",
        lat: 57.661655,
        lng: 39.841954,
        office: false,
        guid: "352845f6-a017-11e6-80c7-000d3a2542c4",
        partner: "ПЭК",
        schedule: "Пн.-Пт. с 9-19, сб. с 10-16, вс.- вых",
        phone: ""
    }
]

getTariff

Предварительный расчет доставки

GET-запрос к ресурсу http://apiurl/getTariff?locationFrom=Москва&locationTo=Подольск&weight=1&volume=0.001&deliveryType=1&postIndex=115280&hardPack=true&length=0.1&width=0.2&height=0.1

  • locationFrom - адрес отправления
  • locationTo - адрес получения
  • weight - вес в кг.
  • volume - объем в м3
  • deliveryType - тип доставки (необязательный)
  • postIndex - почтовый индекс (необязательный)
  • hardPack - жесткая упаковка, true или 1 (необязательный)
  • length - длина в м (необязательный)
  • width - ширина в м (необязательный)
  • height - высота в м (необязательный)

Пример ответа

[
    {
        deliveryType: 1,
        total: 260,
        estDeliveryTime: {
            min: "1",
            max: "2"
        }
    },
    {
        deliveryType: 2,
        total: 130,
        estDeliveryTime: {
            min: "1",
            max: "2"
        }
    },
    {
        deliveryType: 3,
        total: 0,
        estDeliveryTime: {
            min: "-",
            max: "-"
        }
    },
    {
        deliveryType: 4,
        total: 0,
        estDeliveryTime: {
            min: "-",
            max: "-"
        }
    }
]

deliveryType - тип доставки

  1. Авто до двери
  2. Авто до ПВЗ
  3. Авиа до двери
  4. Авиа до ПВЗ

getStatus

Запрос статусов заявок

GET-запрос к ресурсу http://apiurl/getStatus?number=1091840-YD1854000,66012-YD1854327

GET-запрос к ресурсу http://apiurl/getStatus?dateFrom=2017-10-01T00:00:00&dateTo=2017-10-01T23:59:59

  • number - номера заявок, разделенные запятой

Пример ответа

[
    {
        clientId: "1091840-YD1854000",
        date: "2017-05-20T11:58:42",
        status: "На ПВЗ",
        arrivalPlanDateTime: "2017-05-22T15:00:00",
        dateOrder: "2017-05-15T15:08:00",
        sender: "Московская область",
        receiver: "Самара",
        carrierTrackNumber: "000029766",
        address: "Терминал, Склад ПЭК, г. Ярославль, проспект Октября, 93",
        deliveryType: "Терминал",
        phone: "",
        id: "000038700",
        statusCode: "675f4358-6f61-11e6-80ea-003048baa05f"
    },
    {
        orderNumber: "66012-YD1854327",
        date: "2017-05-22T13:32:37",
        status: "Выдан",
        arrivalPlanDateTime: "2017-05-20T15:00:00",
        dateOrder: "2017-05-15T15:27:17",
        sender: "Москва",
        receiver: "Брянск",
        carrierTrackNumber: "000029779",
        address: "Терминал, Склад ПЭК, г. Ярославль, проспект Октября, 93",
        deliveryType: "Терминал",
        phone: "",
        id: "000038700",
        statusCode: "b3e0596a-6b97-11e6-80e9-003048baa05f"
    }
]

statusCode – одно из значений таблицы статусов

getOrderInfo

Получение подробной информации по заявкам

GET-запрос к ресурсу http://apiurl/getOrderInfo?number=1091840-YD1854000,66012-YD1854327

  • number - номера заявок, разделенные запятой

Пример ответа

[
    {
        id: "000038701",
        clientId: "1091840-YD1854000",
        date: "2017-05-15T15:27:17",
        regionFrom: "Москва",
        regionTo: "Брянск",
        addressFrom: "Россия, 0, г Москва, Огородный проезд, 20, К3",
        addressTo: "ПВЗ, Склад ПЭК, Брянск 241014, ул. Марии Расковой, д. 25",
        weight: 10.4,
        volume: 0.0495,
        length: 37.4,
        width: 37.6,
        height: 35.2,
        accessedCost: 11004,
        cargoCost: 11004,
        recipient: "ООО Велес ООО Велес ",
        recipientPhone: "74832686281",
        total: 0,            // Наложенный платеж
        deliveryCost: 334,   // Стоимость доставки
        outsideZoneCost: 0,  // Стоимость доставки за пределами городской зоны (Оплата километража)
        insuranceCost: 0,    // Страхование груза
        addServicesCost: 0   // Дополнительные услуги (Все остальное кроме НП)
    },
    {
        id: "000038702",
        clientId: "1091840-YD1854001",
        date: "2017-05-15T15:08:00",
        regionFrom: "Московская область",
        regionTo: "Самара",
        addressFrom: "Россия, 0, г Москва, Огородный проезд, 20, К3",
        addressTo: "ПВЗ, Склад ПЭК, г. Самара, ул. Береговая, д.36",
        weight: 11.34,
        volume: 0.074784,
        length: 41,
        width: 40,
        height: 45.6,
        accessedCost: 5650,
        cargoCost: 5650,
        recipient: "Иван Иванов Иванович",
        recipientPhone: "79053049601",
        total: 6177,
        deliveryCost: 398,
        outsideZoneCost: 0,
        insuranceCost: 0,
        addServicesCost: 0
    }
]

getLabel

Получение этикеток для печати

GET-запрос к ресурсу http://apiurl/getLabel?number=000026718,000033668

  • number - номера заявок, разделенные запятой

Пример ответа

Возвращает HTML разметку этикетки Easy Way

Москва Санкт-Петербург 3 24.04.2017
Заказ №000026718 Место 1 из 3
Заказ клиента №448722/1
МВМВ

Статусы заказов

Статус Описание статуса statusCode
Новый Заказ сформирован 9f02eabc-6aa3-11e6-80e9-003048baa05f
Ожидание Заказ готов к перевозке (ПЭК его может принять) 41552567-6b97-11e6-80e9-003048baa05f
На складе Успешная приемка на складе (Зеленая зона) 65b5ceda-6b97-11e6-80e9-003048baa05f
На складе (сортировка) Успешная приемка на складе (Зеленая зона) 7c4b94cd-6f5c-11e6-80ea-003048baa05f
В пути Заказ в магистральной машине b122101b-6f61-11e6-80ea-003048baa05f
На складе ФС Заказ прибыл на склад, с которого будет доставка до получателя (либо если выдача на терминале, то груз с этого момента можно получить) bfcc82dc-6f8e-11e6-80ea-003048baa05f
На терминале (ПВЗ) Заказ прибыл в пункт выдачи 675f4358-6f61-11e6-80ea-003048baa05f
На доставке Заказ выдан на доставку 8628571a-6b97-11e6-80e9-003048baa05f
Предварительно выдан Заказ выдан получателю (по данным службы доставки) 2587e0b5-1b57-11ea-8117-00155d032908
Отмена выдачи Заказ ранее получил ошибочный статус "выдан" 40b19cf8-1b57-11ea-8117-00155d032908
Отменен Заказ отменен отправителем 00a72c8b-7e4a-11e6-80c7-000d3a2542c4
Возврат в пути Заказ перенаправлен отправителю (отказ получателя, истечение сроков, отмена отправителем) f510368a-8973-11e6-80c7-000d3a2542c4
Отказ клиента от заказа Получатель отказался от заказа 8fab03fe-1fb2-11e9-80fa-00155d032908
Возврат на складе Заказ прибыл на склад, с которого будет возвращен отправителю 9aaa55ed-6b97-11e6-80e9-003048baa05f
Готовится к возврату Заказ подготовлен для возврата отправителю (если заказ возвращается на склад отправителя) fa32cea9-3996-11e9-80fc-00155d032908
Возврат выдан Заказ возвращен отправителю 1094ba91-8ca3-11e6-80c7-000d3a2542c4
Выдан Заказ выдан (пройдена внутренняя проверка) b3e0596a-6b97-11e6-80e9-003048baa05f