cektop7 / boxberry
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2024-10-01 11:03:13 UTC
README
Форк для установки через composer.
composer require cektop7/boxberry:dev-master
API.Boxberry
Компонент для работы с АПИ службы доставки Boxberry - это универсальный механизм, который позволяет облегчить интеграцию обмена с АПИ-сервисами Boxberry. Не нужно углубленно изучать SOAP и JSON, ограничиваясь только пониманием о структуре передаваемых данных.
Установка компонента
Чтобы установить исходный код из репозитория:
$ git clone git@github.com:AlekseyNikulin/Boxberry.git
Настройка
Для настройки приложения, откройте для изменений файл конфигурации configure.php:
// Корневая директория компонента. define("BOXBERRY_DIR",__DIR__."/"); // Адрес хоста источника данных. define("HOST","http://test.api.boxberry.de");
Soap
Если у вас по каким-либо причинам есть сложности с curl, отключена директива allow_url_fopen и так далее, то вполне вероятно Вы будете использовать технологию обмена по стандарту SOAP.
Личный кабинет
В АПИ личного кабинета вы можете создавать/изменять/удалять посылки, формировать акты-приема передачи, генерировать этикетки и т.д.
define("LC_SERVICE","/__soap/1c_lc.php?wsdl");
Справочники
В АПИ справочнков вам доступна информация:
- о городах, в которых есть ПВЗ (пункты выдачи заказов Boxberry)
- о городах, в которых есть курьерская доставка
- исчерпывающая информация о ПВЗ
- стоимость оказанных услуг
- расчет стоимости доставки
- отслеживать состояние посылки
define("PUBLIC_SERVICE","/__soap/1c_public.php?wsdl");
Список Soap методов
Необходимо указать принадлежность метода к сервису.
Если этого не сделать, то передача аргументов для неописаного метода будет осуществляться к сервису PUBLIC_SERVICE
$soap = [ LC_SERVICE=>[ 'ParselCreate', 'ParselCheck', 'ParselList', 'ParselDel', 'ParselStory', 'ParselSend', 'ParselSendStory', 'OrdersBalance', 'ParcelCreateForeign', 'ParcelSendForeign', 'PaymentOrders' ], PUBLIC_SERVICE=>[ 'ListCities', 'ListPoints', 'ListZips', 'ZipCheck', 'ListStatuses', 'ListStatusesFull', 'ListServices', 'PointsForParcels', 'CourierListCities', 'DeliveryCosts', 'DeliveryCostsF', 'PointsByPostCode', 'PointsDescription', 'ListPointsShort', 'ListCountry', 'ListPointsForeign' ] ];
Json
Обычно JSON не имеет избыточности, поэтому менее ресурсоемкий и более компактный. Все методы и сервисы, перечисленные в SOAP, заключены в одном источнике. Если используете JSON, то в настройках SOAP нет необходимости.
define("JSON_SERVICE","/json.php");
Запуск приложения
Откройте для изменений файл index.php
Включение файла конфигурации
include_once(dirname(__FILE__)."/configure.php");
Включение файла с классом boxberry
include_once(BOXBERRY_DIR."/boxberry.php");
Инициализация класса boxberry
$boxberry = new \boxberryApi\boxberry();
Тип передачи данных: soap/json (в нижнем регистре)
$boxberry->type = "json";
Список (массив) аргументов, ожидаемых и используемых методом
$boxberry->args = [ 'methodQuery' => 'get', 'token'=>'******', 'method'=>'ListPoints' ];
Индивидуальный токен (token) выдается каждому Клиенту индивидуально, после регистрации в системе службы доставки Boxberry и заключении договора. Передача аргументов "token" и "method" обязательны.
"methodQuery" может иметь только два значения get/post. По умолчанию сам компонент ипользует post запросы. Хочу обратить ваше внимание на то, что многие методы АПИ в своей сущности используют только get запросы.
Получение результата
Метод getData() класса boxberry возвращает масив (набор данных), полученный от АПИ Boxberry
print_r($boxberry->getData());