PHPackages                             agenta/agentanovaposhta - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. agenta/agentanovaposhta

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

agenta/agentanovaposhta
=======================

Nova Poshta regions, cities, warehouses updater and search

048PHP

Since Sep 30Pushed 3y ago1 watchersCompare

[ Source](https://github.com/7981620/novaposhta)[ Packagist](https://packagist.org/packages/agenta/agentanovaposhta)[ RSS](/packages/agenta-agentanovaposhta/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Agent-A NovaPoshta
==================

[](#agent-a-novaposhta)

Импорт справочников Новой Почты (регионы, города, отделения), обновление справочника отделений из консоли. Компонент Livewire для выбора отделения (область, город, отделение).

Установка
---------

[](#установка)

#### Требования

[](#требования)

```
Laravel 8
PHP 8.x

```

1. Добавить через composer:

```
composer require agenta/agentanovaposhta
```

2. Публикация файлов библиотеки daaner/novaposhta:

```
php artisan vendor:publish --provider="Daaner\NovaPoshta\NovaPoshtaServiceProvider"
```

3. Публикация файла конфигурации *(config/agentanovaposhta.php)*:

```
php artisan vendor:publish --tag=config
```

4. Добавить в файл .env

```
#API-кей "Новой почты" (см. в личном кабинете)
NP_API_KEY=
#кол-во объектов на странице API (по опыту - максимум 100, иначе периодически таймаут)
AGENTA_NP_CHUNK_SIZE=100
```

*В конфиге можно настроить какие типы отделений импортировать в базу данных:*

```
'import_warehouse_type' => [$NORMAL, $SHOP, $CARGO, $POSTOMAT, $POSTOMAT_PB],
```

*и какие типы отделений доступны для выбора пользователем:*

```
'allowed_warehouse_type' => [$NORMAL, $SHOP, $CARGO, $POSTOMAT, $POSTOMAT_PB],
```

5. Запуск миграции:

```
php artisan migrate
```

6. Запустить первичный импорт данных (может занимать 10-30 минут и более):

```
#импорт областей и населенных пунктов
php artisan np:import_cities
#импорт отделений
php artisan np:update_warehouses
```

Использование
-------------

[](#использование)

#### Обновление данных

[](#обновление-данных)

"Новая Почта" рекомендует обновлять справочник отделений один раз в сутки. Для этого следует запускать команду консоли (данные будут только добавляться, без удаления уже существующих — если отделение не работающее, то модели будет установлен *active = false*):

```
php artisan np:update_warehouses
```

Также можно обновлять справочник населенных пунктов и областей (без удаления, только создание и обновление):

```
php artisan np:import_cities
```

#### Компонент Livewire

[](#компонент-livewire)

1. Опубликуйте шаблон компонента и оформите его нужными стилями:

```
php artisan vendor:publish --tag="views-agentanovaposhta"
```

2. Добавьте в свой blade-шаблон

```
       ...
        @livewireStyles

    @livewire('novaposhta-select-warehouse')
    ...
    @livewireScripts

```

компоненту можно передавать параметр 'cargo' =&gt; true для отображения только тех городов и отделений, которые являются грузовыми (для грузов свыше 30 кг), а также предыдущие выбранные значения области, города и отделения для отображения в случае перезагрузки страницы

```
@livewire('novaposhta-select-warehouse', [
    'cargo' => true,
    'selectedRegion' => old('np_region_id'),
    'selectedCity' => old('np_city_id'),
    'selectedWarehouse' => old('np_warehouse_id'),
])

```

Автор
-----

[](#автор)

- [Oleksii Berkovskii](https://github.com/agenta)

###  Health Score

16

—

LowBetter than 5% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity24

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/cd4b75c3372fa4333da41a3ce17696f9d72dbdfbbcb50c778c525d4e4b88f078?d=identicon)[7981620](/maintainers/7981620)

---

Top Contributors

[![7981620](https://avatars.githubusercontent.com/u/35023761?v=4)](https://github.com/7981620 "7981620 (8 commits)")

### Embed Badge

![Health badge](/badges/agenta-agentanovaposhta/health.svg)

```
[![Health](https://phpackages.com/badges/agenta-agentanovaposhta/health.svg)](https://phpackages.com/packages/agenta-agentanovaposhta)
```

###  Alternatives

[qinchen/web-utils

A web application common utils

111.4k](/packages/qinchen-web-utils)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
