1. Go to this page and download the library: Download wildtuna/boxberry-sdk library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
wildtuna / boxberry-sdk example snippets
$bbClient = new \WildTuna\BoxberrySdk\Client(120, 'https://api.boxberry.ru/json.php');
$bbClient->setToken('main', 'bb_api_token');
$bbClient = new \WildTuna\BoxberrySdk\Client();
$bbClient->setToken('main', 'bb_api_token'); // Заносим токен BB и присваиваем ему ключ main
$bbClient->setToken('another', 'another_bb_api_token');
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$log = new Logger('name');
$log->pushHandler(new StreamHandler('log.txt', Logger::INFO));
$bbClient = new \WildTuna\BoxberrySdk\Client();
$bbClient->setToken('main', 'token');
$bbClient->setCurrentToken('main');
$bbClient->setLogger($log);
$result = $bbClient->getCityList();
$bbClient = new \WildTuna\BoxberrySdk\Client();
$bbClient->setToken('main', 'bb_api_token'); // Заносим токен BB и присваиваем ему ключ main
$bbClient->setCurrentToken('main'); // Указываем клиенту использовать ключ main для запросов
try {
$order = new \WildTuna\BoxberrySdk\Entity\Order();
$order->setTrackNum(TRACK_NUM); // Трекномер заказа в системе BB. Заполняется, если нужно изменить данные заказа
$order->setDeliveryDate('2019-05-10'); // Дата доставки от +1 день до +5 дней от текущий даты (только для доставки по Москве, МО и Санкт-Петербургу)
$order->setOrderId('9999999'); // ID заказа в ИМ
$order->setPalletNum(1); // Номер паллета
$order->setBarcode('12345678'); // ШК заказа
$order->setValuatedAmount(1000); // Объявленная стоимость
$order->setPaymentAmount(1300); // Сумма к оплате
$order->setDeliveryAmount(300); // Стоимость доставки
$order->setComment('Тестовый заказ'); // Комментарий к заказу
// $order->setVid(\WildTuna\BoxberrySdk\Entity\Order::PVZ); // Тип доставки (1 - ПВЗ, 2 - КД, 3 - Почта России)
// $order->setPvzCode(61831); // Код ПВЗ
// $order->setPointOfEntry('010'); // Код пункта поступления
$order->setVid(\WildTuna\BoxberrySdk\Entity\Order::COURIER); // Тип доставки (1 - ПВЗ, 2 - КД, 3 - Почта России)
$customer = new \WildTuna\BoxberrySdk\Entity\Customer();
$customer->setFio('Иванов Петр Николаевич'); // ФИО получателя
$customer->setPhone('79995556677'); // Контактный номер телефона
$customer->setSecondPhone('79995556677'); // Дополнительный номер телефона
$customer->setEmail('[email protected]'); // E-mail для оповещений
$customer->setIndex(115551); // Почтовый индекс получателя (не заполянется, если в ПВЗ)
$customer->setCity('Москва'); // (не заполянется, если в ПВЗ)
$customer->setAddress('Москва, ул. Маршала Захарова, д. 3а кв. 1'); // Адрес доставки (не заполянется, если в ПВЗ)
$customer->setTimeFrom('10:00'); // Время доставки от
$customer->setTimeTo('18:00'); // Время доставки до
$customer->setTimeFromSecond('10:00'); // Альтернативное время доставки от
$customer->setTimeToSecond('18:00'); // Альтернативное время доставки до
$customer->setDeliveryTime('С 10 до 19, за час позвонить'); // Время доставки текстовый формат
// Поля ниже заполняются для организации (не обязательные)
//$customer->setOrgName('ООО Ромашка'); // Наименование организации
//$customer->setOrgAddress('123456 Москва, Красная площадь дом 1'); // Арес организации
//$customer->setOrgInn('7731347089'); // ИНН организации
//$customer->setOrgKpp('773101001'); // КПП организации
//$customer->setOrgRs('40702810500036265800'); // РС организации
//$customer->setOrgKs('30101810400000000225'); // КС банка
//$customer->setOrgBankName('ПАО Сбербанк'); // Наименование банка
//$customer->setOrgBankBik('044525225'); // БИК банка
$order->setCustomer($customer);
// Создаем места в заказе
$place = new \WildTuna\BoxberrySdk\Entity\Place();
$place->setWeight(1000); // Вес места в граммах
$place->setBarcode('1234567890'); // ШК места
$order->setPlaces($place);
// Создаем товары
$item = new \WildTuna\BoxberrySdk\Entity\Item();
$item->setId('123124BC'); // ID товара в БД ИМ'
$item->setName('Тестовый товар 1'); // Название товара
$item->setAmount(100); // Цена единицы товара
$item->setQuantity(10); // Количество
$item->setVat(20); // Ставка НДС
$item->setUnit('шт'); // Единица измерения
$order->setItems($item);
$order->setSenderName('ООО Ромашка'); // Наименование отправителя
$order->setIssue(\WildTuna\BoxberrySdk\Entity\Order::TOI_DELIVERY_WITH_OPENING_AND_VERIFICATION); // вид выдачи (см. константы класса)
// Для отправления Почтой России необходимо заполнить дополнительные параметры
$russianPostParams = new \WildTuna\BoxberrySdk\Entity\RussianPostParams();
$russianPostParams->setType(\WildTuna\BoxberrySdk\Entity\RussianPostParams::PT_POSILKA); // Тип отправления (см. константы класса)
$russianPostParams->setFragile(true); // Хрупкая посылка
$russianPostParams->setStrong(true); // Строгий тип
$russianPostParams->setOptimize(true); // Оптимизация тарифа
$russianPostParams->setPackingType(\WildTuna\BoxberrySdk\Entity\RussianPostParams::PACKAGE_IM_MORE_160); // Тип упаковки (см. константы класса)
$russianPostParams->setPackingStrict(false); // Строгая упаковка
// Габариты тарного места (см) Обязательны для доставки Почтой России.
$russianPostParams->setLength(10);
$russianPostParams->setWidth(10);
$russianPostParams->setHeight(10);
$order->setRussianPostParams($russianPostParams);
$result = $bbClient->createOrder($order);
/*
array(
'track'=>'DUD15224387', // Трек-номер BB
'label'=>'URI' // Ссылка на скачивание PDF файла с этикетками
);
*/
}
catch (\WildTuna\BoxberrySdk\Exception\BoxBerryException $e) {
// Обработка ошибки вызова API BB
// $e->getMessage(); текст ошибки
// $e->getCode(); http код ответа сервиса BB
// $e->getRawResponse(); // ответ сервера BB как есть (http request body)
}
catch (\Exception $e) {
// Обработка исключения
}
$bbClient = new \WildTuna\BoxberrySdk\Client();
$bbClient->setToken('main', 'bb_api_token'); // Заносим токен BB и присваиваем ему ключ main
$bbClient->setCurrentToken('main'); // Указываем клиенту использовать ключ main для запросов
try {
$order = new \WildTuna\BoxberrySdk\Entity\Order();
$result = $bbClient->deleteOrderByOrderId('1056', 1);
if ($result['err'] === false) {
// Заказ удален
} else {
// Заказ не удален, некорректный ответ сервера BB
}
}
catch (\WildTuna\BoxberrySdk\Exception\BoxBerryException $e) {
// Обработка ошибки вызова API BB
// $e->getMessage(); текст ошибки
// $e->getCode(); http код ответа сервиса BB
// $e->getRawResponse(); // ответ сервера BB как есть (http request body)
}
catch (\Exception $e) {
// Обработка исключения
}
$bbClient = new \WildTuna\BoxberrySdk\Client();
$bbClient->setToken('main', 'bb_api_token'); // Заносим токен BB и присваиваем ему ключ main
$bbClient->setCurrentToken('main'); // Указываем клиенту использовать ключ main для запросов
try {
$order = new \WildTuna\BoxberrySdk\Entity\Order();
$result = $bbClient->deleteOrderByTrack('DUD15224387', 1);
if ($result['err'] === false) {
// Заказ удален
} else {
// Заказ не удален, некорректный ответ сервера BB
}
}
catch (\WildTuna\BoxberrySdk\Exception\BoxBerryException $e) {
// Обработка ошибки вызова API BB
// $e->getMessage(); текст ошибки
// $e->getCode(); http код ответа сервиса BB
// $e->getRawResponse(); // ответ сервера BB как есть (http request body)
}
catch (\Exception $e) {
// Обработка исключения
}
$bbClient = new \WildTuna\BoxberrySdk\Client();
$bbClient->setToken('main', 'bb_api_token'); // Заносим токен BB и присваиваем ему ключ main
$bbClient->setCurrentToken('main'); // Указываем клиенту использовать ключ main для запросов
try {
$bbClient->getOrderStatuses('DUD15086277');
/*
Array
(
[0] => Array
(
[Date] => 2019-05-01T00:56:12
[Name] => Принято к доставке
[Comment] =>
)
[1] => Array
(
[Date] => 2019-05-01T00:56:13
[Name] => Передано на сортировку
[Comment] =>
)
[2] => Array
(
[Date] => 2019-05-03T08:43:56
[Name] => Передан на доставку до пункта выдачи
[Comment] =>
)
[3] => Array
(
[Date] => 2019-05-04T06:47:48
[Name] => Передан на доставку до пункта выдачи
[Comment] =>
)
[4] => Array
(
[Date] => 2019-05-04T11:48:01
[Name] => Поступило в пункт выдачи
[Comment] => Москва (115478, Москва г, Каширское ш, д.24, строение 7)
)
)
*/
$bbClient->getOrderStatuses('DUD15086277', true);
/*
Array
(
[statuses] => Array
(
[0] => Array
(
[Date] => 30.04.2019 15:35
[Name] => Загружен реестр ИМ
[Comment] =>
)
[1] => Array
(
[Date] => 01.05.2019 00:56
[Name] => Принято к доставке
[Comment] =>
)
[2] => Array
(
[Date] => 01.05.2019 00:56
[Name] => Передано на сортировку
[Comment] =>
)
[3] => Array
(
[Date] => 03.05.2019 08:43
[Name] => Передан на доставку до пункта выдачи
[Comment] =>
)
[4] => Array
(
[Date] => 04.05.2019 06:47
[Name] => Передан на доставку до пункта выдачи
[Comment] =>
)
[5] => Array
(
[Date] => 04.05.2019 11:48
[Name] => Поступило в пункт выдачи
[Comment] => Москва (115478, Москва г, Каширское ш, д.24, строение 7)
)
)
[PD] =>
[sum] => 5843
[Weight] => 1.58
[PaymentMethod] => Касса
)
*/
}
catch (\WildTuna\BoxberrySdk\Exception\BoxBerryException $e) {
// Обработка ошибки вызова API BB
// $e->getMessage(); текст ошибки
// $e->getCode(); http код ответа сервиса BB
// $e->getRawResponse(); // ответ сервера BB как есть (http request body)
}
catch (\Exception $e) {
// Обработка исключения
}