PHPackages                             pixtechpl/inpost-laravel - 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. pixtechpl/inpost-laravel

ActiveLibrary[API Development](/categories/api)

pixtechpl/inpost-laravel
========================

InPost ShipX API client for laravel.

1.1.0(2w ago)03MITPHPPHP ^8.0

Since Jan 14Pushed 2w agoCompare

[ Source](https://github.com/pixtechpl/inpost-laravel)[ Packagist](https://packagist.org/packages/pixtechpl/inpost-laravel)[ RSS](/packages/pixtechpl-inpost-laravel/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (4)Versions (5)Used By (0)

This package is a customized fork of the original [patryk-sawicki/inpost-laravel](https://github.com/patryk-sawicki/inpost-laravel) by Patryk Sawicki.

Changes:

- Namespaces changed to `Pixtech\InPost\ShipX`
- Removed the need to manually pass `organizationId` — it can now be configured via `config/inpost.php` or the `INPOST_ORGANIZATION_ID` environment variable
- Added missing return type declarations
- Increased minimum Laravel and PHP requirements
- Adjusted validation requirements in the `Receiver` model
- Renamed config file from `inPost.php` to `inpost.php`
- Changed Laravel cache prefixes from `inPost_` to `inpost_`
- More changes may come soon (if I find something that requires it :P)

InPost ShipX API Client
=======================

[](#inpost-shipx-api-client)

InPost ShipX API client for laravel.

Requirements
------------

[](#requirements)

- PHP 8.0 or higher with json extensions.
- Laravel 12 or higher

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

[](#installation)

The recommended way to install is through [Composer](http://getcomposer.org).

```
composer require pixtechpl/inpost-laravel
```

Usage
-----

[](#usage)

Add to env:

```
INPOST_API_KEY = 'your_api_key'
INPOST_ORGANIZATION_ID = 2173
```

Import class:

```
use Pixtech\InPost\ShipX\Classes\InPost;
```

### Organizations

[](#organizations)

#### List

[](#list)

Get organizations list.

```
InPost::organizations()->list(array $options = [], bool $returnJson = false);
```

#### Get

[](#get)

Get organizations details.

```
InPost::organizations()->get(int $id, bool $returnJson = false);
```

#### Statistics

[](#statistics)

Get organizations statistics.

```
InPost::organizations()->statistics(int $id, bool $returnJson = false);
```

### Services

[](#services)

Get a list of the available services.

```
InPost::services()->list(bool $returnJson = false);
```

### Points

[](#points)

#### List

[](#list-1)

Get a list of the available points.

```
InPost::points()->list(array $options = [], bool $returnJson = false);
```

#### Get

[](#get-1)

Get a point details.

```
InPost::points()->get(string $name, bool $returnJson = false);
```

### Shipment

[](#shipment)

#### Send

[](#send)

Send a new shipment.

```
use Pixtech\InPost\ShipX\Classes\InPost;
use Pixtech\InPost\ShipX\Models\Cash as InPostCash;
use Pixtech\InPost\ShipX\Models\Dimensions as InPostDimensions;
use Pixtech\InPost\ShipX\Models\Weight as InPostWeight;
use Pixtech\InPost\ShipX\Models\Address as InPostAddress;
use Pixtech\InPost\ShipX\Models\Parcel as InPostParcel;
use Pixtech\InPost\ShipX\Models\Parcels as InPostParcels;
use Pixtech\InPost\ShipX\Models\Receiver as InPostReceiver;
use Pixtech\InPost\ShipX\Models\Sender as InPostSender;

$shipment = InPost::shipment();

/*Receiver*/
$receiverAddress = new InPostAddress('street', 'building_number', 'city', 'post_code', 'PL');
/* company name or first name & last name */
$receiver = new InPostReceiver('e-mail', 'phone', 'company name', 'first name', 'last name', $receiverAddress);
$shipment->setReceiver($receiver);

/*Sender - Optional*/
$senderAddress = new InPostAddress('street', 'building_number', 'city', 'post_code', 'PL');
$sender = new InPostSender('name', 'company name', 'first name', 'last name', 'e-mail', 'phone', $senderAddress);
$shipment->setSender($sender);

/*Parcels*/
$dimensions = new InPostDimensions(10, 10, 10, 'mm');
$weight = new InPostWeight(10, 'kg');
$firstParcel = new InPostParcel($dimensions, $weight, 'parcel 1');

/*Second parcel is optional.*/
$dimensions = new InPostDimensions(20, 20, 20, 'mm');
$weight = new InPostWeight(5, 'kg');
$secondParcel = new InPostParcel($dimensions, $weight, 'parcel 2');

$shipment->setParcels(new InPostParcels($firstParcel, $secondParcel));

/*Insurance - Optional*/
$insurance = new InPostCash(100, 'PLN');
$shipment->setInsurance($insurance);

/*Cod - Optional*/
$cod = new InPostCash(100, 'PLN');
$shipment->setCod($cod);

/*Additional Services - Optional*/
$shipment->setAdditionalServices(['sms', 'email']);

/*Reference - Optional*/
$shipment->setReference('reference');

/*Comments - Optional*/
$shipment->setComments('comments');

/*External customer id - Optional*/
$shipment->setExternalCustomerId('external customer id');

/*MPK - Optional*/
$shipment->setMpk('mpk');

/*Is return - Optional*/
$shipment->setIsReturn(false);

/*Service*/
$shipment->setService('inpost_locker_standard');

/*Custom attributes - Optional*/
$shipment->setCustomAttributes(['target_point' => 'xxx']);

/*Only choice of offer - Optional*/
$shipment->setOnlyChoiceOfOffer(true);

/*Send shipment*/
$shipment->send(bool $returnJson = false);
```

#### Cancel

[](#cancel)

Cancellation of a shipment.

```
InPost::shipment()->cancel(int $id, bool $returnJson = false);
```

#### Label

[](#label)

Get label for a shipment.

```
return InPost::shipment()->label(int $id, string $format = 'pdf', string $type = 'normal');
```

### Tracking

[](#tracking)

Get a tracking details.

```
InPost::tracking()->get(string $tracking_number, bool $returnJson = false);
```

### Statuses

[](#statuses)

Get a list of the available statuses.

```
InPost::statuses()->list(bool $returnJson = false);
```

### Dispatch orders

[](#dispatch-orders)

#### Create

[](#create)

Create a new dispatch orders.

```
use Pixtech\InPost\ShipX\Classes\InPost;
use Pixtech\InPost\ShipX\Models\Address as InPostAddress;

$dispatchOrders = InPost::dispatchOrders();

/*Set shipments*/
$dispatchOrders->setShipments(1, 2, 3, 4);

/*Set comments - Optional*/
$dispatchOrders->setComments('Test');

/*Set address*/
$dispatchOrders->setAddress(new InPostAddress('street', 'building_number', 'city', 'post_code', 'PL'));

/*Set office hours - Optional*/
$dispatchOrders->setOfficeHours('09:00 - 18:00');

/*Set name*/
$dispatchOrders->setName('Patryk Sawicki');

/*Set phone*/
$dispatchOrders->setPhone('+48793202257');

/*Set email - Optional*/
$dispatchOrders->setEmail('patryk@patryksawicki.pl');

/*Create a new dispatch orders.*/
$dispatchOrders->create(bool $returnJson = false);
```

#### Cancel

[](#cancel-1)

Cancellation of a dispatch orders

```
InPost::dispatchOrders()->cancel(int $id, bool $returnJson = false);
```

#### List

[](#list-2)

Get dispatch orders list.

```
$dispatchOrders = InPost::dispatchOrders();

$dispatchOrders->list(bool $returnJson = false);
```

#### Get

[](#get-2)

Get dispatch orders details.

```
$dispatchOrders->get(int $id, bool $returnJson = false);
```

#### Add comment

[](#add-comment)

Add comment to dispatch orders.

```
$dispatchOrders = InPost::dispatchOrders();

$dispatchOrders->addComment(int $dispatch_order_id, string $comment, bool $returnJson = false);
```

#### Update comment

[](#update-comment)

Update comment in dispatch orders.

```
$dispatchOrders = InPost::dispatchOrders();

$dispatchOrders->updateComment(int $dispatch_order_id, int $comment_id, string $comment, bool $returnJson = false);
```

#### Update comment

[](#update-comment-1)

Update comment in dispatch orders.

```
$dispatchOrders = InPost::dispatchOrders();

$dispatchOrders->removeComment(int $dispatch_order_id, int $comment_id, bool $returnJson = false);
```

###  Health Score

39

↑

LowBetter than 84% of packages

Maintenance96

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 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 ~50 days

Total

4

Last Release

20d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/82266637?v=4)[ravenekse](/maintainers/ravenekse)[@ravenekse](https://github.com/ravenekse)

---

Top Contributors

[![patryk-sawicki](https://avatars.githubusercontent.com/u/30780444?v=4)](https://github.com/patryk-sawicki "patryk-sawicki (8 commits)")[![ravenekse](https://avatars.githubusercontent.com/u/82266637?v=4)](https://github.com/ravenekse "ravenekse (8 commits)")[![mtlukaszczyk](https://avatars.githubusercontent.com/u/5895802?v=4)](https://github.com/mtlukaszczyk "mtlukaszczyk (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/pixtechpl-inpost-laravel/health.svg)

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

###  Alternatives

[statamic/cms

The Statamic CMS Core Package

4.8k3.6M985](/packages/statamic-cms)[darkaonline/l5-swagger

OpenApi or Swagger integration to Laravel

3.0k37.6M134](/packages/darkaonline-l5-swagger)[knuckleswtf/scribe

Generate API documentation for humans from your Laravel codebase.✍

2.3k14.2M63](/packages/knuckleswtf-scribe)[statamic-rad-pack/runway

Eloquently manage your database models in Statamic.

135224.7k7](/packages/statamic-rad-pack-runway)[scriptdevelop/whatsapp-manager

Paquete para manejo de WhatsApp Business API en Laravel

783.8k](/packages/scriptdevelop-whatsapp-manager)[duncanmcclean/statamic-cargo

Comprehensive e-commerce addon for Statamic. Build bespoke e-commerce sites without the complexity.

3416.9k](/packages/duncanmcclean-statamic-cargo)

PHPackages © 2026

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