Управление отправками NovaPoshta (novaposhta.ua) с помощью фреймворка Laravel 7 и старше (Laravel).
Удобный пакет для отправки и проверки ТТН через сервис NovaPoshta.ua
ВНИМАНИЕ
// Не доделал и не оттестил все модели
// используйте ветку `dev-master`
// В ней все самое последнее. Документацию стараюсь не затягивать
Минимальная версия Laravel 7.0
, для более низкой версии нужно использовать guzzle/guzzle
Работает на Laravel 10 и PHP 8.3 (Laravel 11 не проверялся, но должно)
Установите пакет через композер.
composer require daaner/novaposhta
Если вы НЕ используете autodiscover - добавьте сервис провайдер в конфигурационный файл config/app.php
.
Daaner\NovaPoshta\NovaPoshtaServiceProvider::class,
Добавьте фасад NovaPoshta
в массив в config/app.php
:
'NovaPoshta' => Daaner\NovaPoshta\Facades\NovaPoshta::class,
Выполните публикацию конфига и локализационных файлов командой:
php artisan vendor:publish --provider="Daaner\NovaPoshta\NovaPoshtaServiceProvider"
После публикации ресурсов поправьте файл config/novaposhta.php
и заполните .env
новыми полями.
- Создайте аккаунт на сайте novaposhta.ua
- Скопируйте
Ключ API
в настройках безопасности в разделеМои ключи API
и добавьте в соответствующий параметр вconfig/novaposhta.php
либо в .env файл point
поддерживается толькоjson
(вряд ли добавитсяxml
)dev
режим отладки запросов. Включает в лог каждый запрос на API Новой Почты (не оставляйте на продакшене) и в массиве ответа данные с ключемdev
без преобразования, а та как возвращает Новая Почта- читайте документацию и пользуйтесь
setAPI($apiKey)
- установка API ключа, отличного от значения по умолчанию
$cp = new Counterparty;
$cp->setAPI('391e241b2c********************e7');
getResponse($model, $calledMethod, $methodProperties, $auth = true)
- кастомная отправка данных, если добавятся новые методы
use NovaPoshta;
$model = 'TrackingDocument'; //нужная модель
$calledMethod = 'getStatusDocuments'; //нужный метод
$methodProperties = [
//данные по документации
];
$np = new NovaPoshta;
$data = $np->getResponse($model, $calledMethod, $methodProperties, $auth = true);
dd($data);
Хелперы вызываются до главного метода обращения:
$foo = new Common;
$list = $foo->getPaymentForms();
$bar = new Address;
$bar->setLimit(5)->setPage(2);
$cities = $bar->getCities();
dd($cities);
Очень много моделей имеют в ответе дубляж на русском. В некоторых справочниках нет русской локализации.
setLimit(100)
- лимит запроса записейsetPage(3)
- пагинация при лимите
- Получение данных по бонусной карте
- Обновить описание реестра
- Краткий список накладных реестра
- Получение данных об Контрагенте по номеру телефона
- Получение данных по картам оплаты, подключенным к системе
- Получение списка доступных API ключей
- Продление действия API ключа
- Получение списка доверенных устройств
- Удаление доверенного устройства
- Получение данных о входящих посылках
- Получение активных промокодов прикрепленных к телефону контрагента
- Список данных по бонусной программе контрагента
- Список материальных ценностей доступных для заказа
- Список заказанных материальных ценностей
- Получение списка ордеров для заказа авто
- Создание API ключа
- Удаление API ключа
- Замена/снятие наложного платежа
Официальная документация API Новой почты Документация по пакету
- Онлайн поиск в справочнике населенных пунктов
- Онлайн поиск улиц в справочнике населенных пунктов
- Создать адрес контрагента (отправитель/получатель)
- Редактировать адрес контрагента (отправитель/получатель)
- Удалить адрес контрагента (отправитель/получатель)
- Справочник городов компании
- Справочник населенных пунктов Украины
- Справочник географических областей Украины
- Справочник отделений и типов отделений
- Справочник улиц компании
- Создать адрес контрагента (отправитель/получатель)
- Редактировать адрес контрагента (отправитель/получатель)
- Удалить адрес контрагента (отправитель/получатель)
- Создать Контрагента
- Создать контактное лицо Контрагента
- Создать Контрагента с типом (юридическое лицо) организация
- Создать Контрагента с типом третьего лица
- Загрузить список адресов Контрагентов
- Загрузить параметры Контрагента
- Загрузить список контактных лиц Контрагента
- Загрузить список контрагентов
- Обновить данные Контрагента
- Обновить данные контактного лица Контрагента
- Удалить Контрагента получателя
- Удалить Контактное лицо Контрагента
- Маркировки - печатная форма
- Реестры - печатная форма
- Экспресс-накладная - печатные формы
- Добавить экспресс-накладные в реестр
- Загрузить информацию по одному реестру
- Загрузить список реестров
- Обновить описание реестра
- Краткий список накладных реестра
- Удалить (расформировать) реестр отправлений
- Удалить экспресс-накладные из реестра
- Виды временных интервалов
- Виды груза
- Виды обратной доставки груза
- Виды паллет
- Виды плательщиков
- Виды плательщиков обратной доставки
- Виды упаковки
- Виды шин и дисков
- Описания груза
- Перечень ошибок
- Технологии доставки
- Типы контрагентов
- Формы оплаты
- Формы собственности
Возможность самостоятельного оформления Клиентом услуги «Возврат отправления» при использовании API. Услуга доступна только для клиентов отправителей.
- Проверка возможности создания заявки на возврат
- Получение списка причин возврата
- Получение списка подтипов причины возврата
- Создание заявки на возврат
- Получение списка заявок на возврат
- Удаление заявки на возврат
- Проверка возможности создания заявки по изменению данных
- Создание заявки по изменению данных (Частично)
- Удаление заявки
- Получение списка заявок
Возможность самостоятельного оформления Клиентом услуги «Переадресация» при использовании API. Услуга доступна для клиентов отправителей и получателей.
- Проверка возможности создания заявки на переадресацию отправления
- Создание заявки переадресация отправления (отделение/адрес)
- Удаление заявки
- Получение списка заявок
- Рассчитать стоимость услуг
- Прогноз даты доставки груза
- Создать экспресс-накладную
- Создать экспресс-накладную на адрес
- Создать экспресс-накладную на отделение
- Создать экспресс-накладную на почтомат "Нова пошта"
- Создать экспресс-накладную с обратной доставкой
- Редактировать экспресс-накладную (НЕ ТЕСТИРОВАЛОСЬ)
- Получение полной инфо об ЭН
- Получить список ЭН
- Удалить экспресс-накладные
- Формирование запроса для получения полного отчета по накладным
- Формирование запросов на создание ЭН с дополнительными услугами
- Формирование запросов на создание ЭН с различными видами груза
- Создание Контрагента с типом юрлицо или третье лицо
- не добавлена возможность указывать
CityRef
- не добавлена возможность указывать
Please see CHANGELOG for more information on what has changed recently.
Всегда рад поддержке, указаниям на ошибки и ПР!
Please see CONTRIBUTING for details.
The MIT License (MIT). Please see License File for more information.