PHPackages                             sergeevpasha/laravel-dellin - 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. [API Development](/categories/api)
4. /
5. sergeevpasha/laravel-dellin

ActiveLibrary[API Development](/categories/api)

sergeevpasha/laravel-dellin
===========================

Dellin API wrapper for Laravel

v1.6.2(1y ago)21.9k↓50%3[2 PRs](https://github.com/sergeevpasha/laravel-dellin/pulls)MITPHPPHP ^8.0CI failing

Since Jul 6Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/sergeevpasha/laravel-dellin)[ Packagist](https://packagist.org/packages/sergeevpasha/laravel-dellin)[ RSS](/packages/sergeevpasha-laravel-dellin/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (8)Versions (25)Used By (0)

[![Maintainability](https://camo.githubusercontent.com/57427d023ee6ce0b044a46c4fc1a1904bfbcccb2763c3c4dfa2d2adc32466263/68747470733a2f2f6170692e636f6465636c696d6174652e636f6d2f76312f6261646765732f38633662633962333837623434646535373464342f6d61696e7461696e6162696c697479)](https://codeclimate.com/github/sergeevpasha/laravel-dellin/maintainability)[![Test Coverage](https://camo.githubusercontent.com/411f3f657bcede990b2086ab1960851b792379a77bb5e036c901a5626162d664/68747470733a2f2f6170692e636f6465636c696d6174652e636f6d2f76312f6261646765732f38633662633962333837623434646535373464342f746573745f636f766572616765)](https://codeclimate.com/github/sergeevpasha/laravel-dellin/test_coverage)[![CodeFactor](https://camo.githubusercontent.com/9cb78cb9760fda15ad089eb09a9a469dac695d345551afc9b9401cd2147134d3/68747470733a2f2f7777772e636f6465666163746f722e696f2f7265706f7369746f72792f6769746875622f7365726765657670617368612f6c61726176656c2d64656c6c696e2f6261646765)](https://www.codefactor.io/repository/github/sergeevpasha/laravel-dellin)[![Generic badge](https://camo.githubusercontent.com/178b702128001ab3379109a965c0eaffdf3daab6c1c9b442c3985506eed159e9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d253545382e302e2a2d626c75652e737667)](https://www.php.net)[![Generic badge](https://camo.githubusercontent.com/6a27459b506553a34d1dce2d8624ef51aab82ae0584891bce145cd56b118c317/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d253545382e32372d7265642e737667)](https://laravel.com)

Laravel Dellin API Wrapper
==========================

[](#laravel-dellin-api-wrapper)

Allows you to:

- Find a City by query string
- Find a Street by City ID and query string
- Find Terminals in the City by City ID
- Calculate a delivery

Pre-requirements
----------------

[](#pre-requirements)

You need to get Dellin API key, login and password. Key can be obtained at

Installation
------------

[](#installation)

```
composer require sergeevpasha/laravel-dellin
```

Configuration
-------------

[](#configuration)

This package has a few configuration values:

```
'key'        => env('DELLIN_KEY', null),
'login'      => env('DELLIN_LOGIN', null),
'password'   => env('DELLIN_PASSWORD', null),
'prefix'     => 'dellin',
'middleware' => ['web']
```

If you only need to use DellinClient, you may completely skip this configuration. Otherwise, you can use default options and specify some data in .env file:

- DELLIN\_KEY
- DELLIN\_LOGIN
- DELLIN\_PASSWORD

To make full use of predefined routes, you will need to publish config:

```
php artisan vendor:publish --provider="SergeevPasha\Dellin\Providers\DellinServiceProvider" --tag="config"
```

Now you can change routes prefix and middleware to whatever you need

### Use Case #1

[](#use-case-1)

After installing you may just import the client

```
use SergeevPasha\Dellin\Libraries\DellinClient;
```

Firstly let's initialize our client

```
$client = new DellinClient('key');
/*
    You may also authorize your user and get a session ID.
    You may use it in getPrice() method to adjust prices (Authorized users have lower prices)
*/
$session = client->authorize('login', 'password);
```

Now we can use these methods:

```
$client->findCity(string $query)
$client->findCityStreet(int $city, string $query)
$client->getCityTerminals(int $city, bool $arrival = true)
/* This one requires a Delivery Object, see next to see how to build it */
$client->getPrice(Delivery $delivery)
```

Delivery Object
---------------

[](#delivery-object)

To build a Delivery object you will need to pass an array to fromArray() method just like that:

```
Delivery::fromArray([
    'session_id'             => '12345', // User Session ID, Not required
    'delivery_type'          => '1', // Delivery Type, see available Delivery Types below
    'arrival_shipping_type'  => '1', // Shipping Type, see available Shipping Types below
    /* Only one of the following is required */
    'arrival_terminal_id'    => '123'
    'arrival_address_id'     => '123'
    'arrival_street_code'    => '123'
    'arrival_city_code'      => '123'
    /* --- */
    /* Next lines are NOT required */
    'arrival_worktime_start' => '12:30', // Time format HH:MM
    'arrival_worktime_end'   => '13:00',
    'arrival_break_start'    => '15:30',
    'arrival_break_end'      => '16:00',
    'arrival_exact_time'     => '1', // Boolean flag to show that there should be an exact time pickup a cargo
    'arrival_freight_lift'   => '1', // Boolean flag, specify if there is a lift on arrival location
    'arrival_to_floor'       => '10', // Floor level to deliver
    'arrival_carry'          => '100', // Meters to deliver
    'arrival_requirements'   => [
        '0x92fce2284f000b0241dad7c2e88b1655',
    ], // You can get these codes from getSpecialRequirements() method
    'derival_produce_date'   => '2020-10-10' // Date, when this order should be done (YYYY-MM-DD)
    /* Below are the same specs, but for the derival */
    'derival_shipping_type'  => '1', // Shipping Type, see available Shipping Types below
    'derival_terminal_id'    => '123'
    'derival_address_id'     => '123'
    'derival_street_code'    => '123'
    'derival_city_code'      => '123'
    'derival_worktime_start' => '12:30', // Time format HH:MM
    'derival_worktime_end'   => '13:00',
    'derival_break_start'    => '15:30',
    'derival_break_end'      => '16:00',
    'derival_exact_time'     => '1', // Boolean flag to show that there should be an exact time pickup a cargo
    'derival_freight_lift'   => '1', // Boolean flag, specify if there is a lift on arrival location
    'derival_to_floor'       => '10', // Floor level to deliver
    'derival_carry'          => '100', // Meters to deliver
    'derival_requirements'   => [
        '0x92fce2284f000b0241dad7c2e88b1655',
    ]
    'packages'               => [
        '0x838fc70baeb49b564426b45b1d216c15'
    ], // You can get these codes from getAvailablePackages() method
    'ac_docs_send'           => '1', // Boolean flag to send accompanying documents
    'ac_docs_return'         => '1', // Boolean flag to return accompanying documents
    'requester_role'         => '1', // Requester Role, see available Requester Roles below
    'requester_uid'          => 'xxxx-xxxx' // Who is ordering delivery. You can get this UID from getCounterparties() method
    'cargo_quantity'         => '1', // Amount of packages to ship
    'cargo_length'           => '10', // Max package Length in Meters
    'cargo_height'           => '10', // Max package Height in Meters
    'cargo_width'            => '10', // Max package Width in Meters
    'cargo_weight'           => '10', // Weight in KG
    'cargo_total_volume'     => '0.05, // Volume in M3
    'cargo_total_weight'     => '10', // Total Weight in KG
    /* Next lines are NOT required */
    'cargo_oversized_weight' => '10', // Total Weight of oversized packages
    'cargo_oversized_volume' => '10', // Total Volume of oversized packages
    /* Only one is required */
    'cargo_freight_uid'      => 'xxxx-xxx', // Freight UID
    'cargo_freight_name'     => 'mybook', // Freight Name
    /* --- */
    'cargo_hazard_class'     => '1.1' // Cargo hazard level. Default and recommended is 0, unsless you know what you are doing
    'insurance_value'        => '100000', // Insurance value
    'insurance_term'         => '1', // Boolean flag, that specifies that you need to insure delivery time too
    'payment_city'           => '7700000000000000000000000' // KLADR Code of payment city
    'payment_type'           => '1', // Payment type, see below
])
```

Available Delivery Types
------------------------

[](#available-delivery-types)

```
    AUTO = 0
    EXPRESS = 1
    LETTER = 2
    AVIA = 3
    SMALL = 4
```

Available Payment Types
-----------------------

[](#available-payment-types)

```
    CASH = 0
    NONCASH = 1
```

Available Requester Roles
-------------------------

[](#available-requester-roles)

```
    SENDER = 0
    RECEIVER = 1
    PAYER = 2
    THIRD = 3
```

Available Shipping Types
------------------------

[](#available-shipping-types)

```
    ADDRESS = 0
    TERMINAL = 1
```

### Use Case #2

[](#use-case-2)

There are some predefined routes, that will be merged with your routes as well. You may check it by using `php artisan routes:list`It actually exposes the same methods to the routes, so it should be pretty clear on how to use it. For more information on how to use it, please check out `src/` folder.

###  Health Score

46

—

FairBetter than 93% of packages

Maintenance63

Regular maintenance activity

Popularity24

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

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.

###  Release Activity

Cadence

Every ~76 days

Recently: every ~90 days

Total

22

Last Release

523d ago

PHP version history (3 changes)v1.0.0PHP ^7.4

v1.3.0PHP ^8.0

v1.5.1PHP ^7.4 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/978bd841bc42fd031fb568f25fd9d48f9a565770818a646c73f3801263bb7e21?d=identicon)[sergeevpasha](/maintainers/sergeevpasha)

---

Top Contributors

[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (29 commits)")[![sergeevpasha](https://avatars.githubusercontent.com/u/30777415?v=4)](https://github.com/sergeevpasha "sergeevpasha (23 commits)")[![smotim](https://avatars.githubusercontent.com/u/57951811?v=4)](https://github.com/smotim "smotim (9 commits)")[![adder013](https://avatars.githubusercontent.com/u/48510903?v=4)](https://github.com/adder013 "adder013 (1 commits)")[![Reltig](https://avatars.githubusercontent.com/u/44341164?v=4)](https://github.com/Reltig "Reltig (1 commits)")

---

Tags

laraveldellin

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/sergeevpasha-laravel-dellin/health.svg)

```
[![Health](https://phpackages.com/badges/sergeevpasha-laravel-dellin/health.svg)](https://phpackages.com/packages/sergeevpasha-laravel-dellin)
```

###  Alternatives

[openai-php/laravel

OpenAI PHP for Laravel is a supercharged PHP API client that allows you to interact with the Open AI API

3.7k7.6M74](/packages/openai-php-laravel)[statamic/cms

The Statamic CMS Core Package

4.8k3.2M720](/packages/statamic-cms)[nickurt/laravel-postcodeapi

Universal PostcodeApi for Laravel 11.x/12.x/13.x

97221.2k](/packages/nickurt-laravel-postcodeapi)[mozex/anthropic-laravel

Anthropic PHP for Laravel is a supercharged PHP API client that allows you to interact with the Anthropic API

71226.4k1](/packages/mozex-anthropic-laravel)[scriptdevelop/whatsapp-manager

Paquete para manejo de WhatsApp Business API en Laravel

762.6k](/packages/scriptdevelop-whatsapp-manager)[spinen/laravel-clickup

SPINEN's Laravel Package for ClickUp.

282.2k](/packages/spinen-laravel-clickup)

PHPackages © 2026

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