PHPackages                             verbb/shippy - 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. verbb/shippy

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

verbb/shippy
============

A framework agnostic, multi-carrier shipping library for PHP.

1.2.16(3mo ago)1610.1k↓24.2%6[3 issues](https://github.com/verbb/shippy/issues)1MITPHPPHP ^8.0

Since May 26Pushed 3mo ago2 watchersCompare

[ Source](https://github.com/verbb/shippy)[ Packagist](https://packagist.org/packages/verbb/shippy)[ GitHub Sponsors](https://github.com/verbb)[ RSS](/packages/verbb-shippy/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (9)Versions (33)Used By (1)

[![Shipppy icon](https://camo.githubusercontent.com/f7a6d53941a99fb94af0f6772525a782a39ba3660f44d3a56b1f720cf48f73ad/68747470733a2f2f6173736574732e76657262622e696f2f706c7567696e732f7368697070792f7368697070792d69636f6e2e737667)](https://camo.githubusercontent.com/f7a6d53941a99fb94af0f6772525a782a39ba3660f44d3a56b1f720cf48f73ad/68747470733a2f2f6173736574732e76657262622e696f2f706c7567696e732f7368697070792f7368697070792d69636f6e2e737667)

Shippy
======

[](#shippy)

Shippy is a framework agnostic, multi-carrier shipping library for PHP. Its aim is to provide a consistent API around the many different shipping carriers for shipment rates, tracking, labels and more. It's free to use and doesn't require a subscription to SaaS providers.

Install
-------

[](#install)

You can install the package via composer:

```
composer require verbb/shippy
```

Usage
-----

[](#usage)

As a quick example, use the following to fetch rates from UPS and FedEx.

```
use verbb\shippy\carriers\FedEx;
use verbb\shippy\carriers\UPS;
use verbb\shippy\models\Address;
use verbb\shippy\models\Package;
use verbb\shippy\models\Shipment;

// Create a shipment to set the from/to address details
$shipment = new Shipment([
    // You can supply config arrays for quick setting.
    'from' => new Address([
        'street1' => 'One Infinite Loop',
        'city' => 'Cupertino',
        'stateProvince' => 'CA',
        'postalCode' => '95014',
        'countryCode' => 'US',
    ]),
]);

// You can use traditional setters if you prefer
$toAddress = new Address();
$toAddress->setStreet1('1600 Amphitheatre Parkway');
$toAddress->setCity('Mountain View');
$toAddress->setStateProvince('CA');
$toAddress->setPostalCode('94043');
$toAddress->setCountryCode('US');
$shipment->setTo($toAddress);

// Create a package (or more) to represent what we're sending
// You can use fluent syntax if you prefer
$package = new Package()
    ->setLength(300)
    ->setWidth(100)
    ->setHeight(80)
    ->setWeight(2000)
    ->setDimensionUnit('mm')
    ->setWeightUnit('g');

$shipment->addPackage($package);

// Finally, add the carrier(s) we wish to fetch rates for. With multiple carriers, rates will be
// returned across all, sorted by cheapest to most expensive
$shipment->addCarrier(new UPS([
    'isProduction' => false,
    'clientId' => '•••••••••••••••••••••••••••••••••••',
    'clientSecret' => '•••••••••••••••••••••••••••••••••••',
    'accountNumber' => '••••••',
]));

$shipment->addCarrier(new FedEx([
    'isProduction' => false,
    'clientId' => '•••••••••••••••••••••••••••••••••••',
    'clientSecret' => '•••••••••••••••••••••••••••••••••••',
    'accountNumber' => '••••••',
]));

// Fetch the rates and print the response
$rateResponse = $shipment->getRates();

echo '';
print_r($rateResponse);
echo '';
```

Be sure to check out the full [documentation](https://verbb.io/packages/shippy).

Supported Carriers
------------------

[](#supported-carriers)

Shippy supports the following carriers and features.

CarrierRatesTrackingLabelsAramex☑️☑️Aramex Australia☑️☑️☑️Aramex New Zealand☑️☑️☑️Australia Post☑️☑️☑️Bring☑️☑️☑️Canada Post☑️☑️☑️Colissimo☑️DHL Express☑️☑️☑️Fastway☑️☑️FedEx☑️☑️☑️FedEx Freight☑️☑️☑️Interparcel☑️☑️☑️New Zealand Post☑️☑️☑️PostNL☑️Royal Mail☑️☑️☑️Sendle☑️☑️☑️TNT Australia☑️UPS☑️☑️☑️UPS Freight☑️☑️☑️USPS☑️☑️☑️### New Carriers

[](#new-carriers)

We'd love to grow the package to support as many carriers as we can. You can either:

- Request a [new carrier support](https://github.com/verbb/shippy/issues), and we'll build it! We might need your API credentials to verify everything.
- Use the [documentation](https://verbb.io/packages/shippy) to create your own (and we can list it here as a community carrier).
- [Get in touch](mailto:support@verbb.io) to arrange priority, sponsored development.

Documentation
-------------

[](#documentation)

Visit the [Shippy](https://verbb.io/packages/shippy) documentation.

Support
-------

[](#support)

For all feature requests, bugs and questions, [create a Github issue](https://github.com/verbb/shippy/issues) here.

Shippy is actively maintained via [Postie](https://verbb.io/craft-plugins/postie), a commercial [Craft CMS](https://craftcms.com/) plugin.

Sponsor
-------

[](#sponsor)

Shippy is MIT licensed, meaning it will always be free and open source – we love free stuff! If you'd like to show your support for the package, [Sponsor](https://github.com/sponsors/verbb) development. We'd *highly* encourage this if you use this package for commercial purposes.

[ ![](https://camo.githubusercontent.com/98f2680f5948987cd8f4b418d67159eb0befb6da92060f286671b05bf39d40bd/68747470733a2f2f76657262622e696f2f6173736574732f696d672f76657262622d70696c6c2e737667)](https://verbb.io)

###  Health Score

49

—

FairBetter than 95% of packages

Maintenance75

Regular maintenance activity

Popularity35

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 92.6% 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.

###  Release Activity

Cadence

Every ~19 days

Recently: every ~37 days

Total

32

Last Release

113d ago

### Community

Maintainers

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

---

Top Contributors

[![engram-design](https://avatars.githubusercontent.com/u/1221575?v=4)](https://github.com/engram-design "engram-design (100 commits)")[![takolad](https://avatars.githubusercontent.com/u/77072244?v=4)](https://github.com/takolad "takolad (4 commits)")[![tm1000](https://avatars.githubusercontent.com/u/564256?v=4)](https://github.com/tm1000 "tm1000 (3 commits)")[![maxdmyers](https://avatars.githubusercontent.com/u/896976?v=4)](https://github.com/maxdmyers "maxdmyers (1 commits)")

---

Tags

uspsupsFedExaustralia-postauspost

### Embed Badge

![Health badge](/badges/verbb-shippy/health.svg)

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

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[craftcms/cms

Craft CMS

3.6k3.6M2.6k](/packages/craftcms-cms)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[drupal/core

Drupal is an open source content management platform powering millions of websites and applications.

19562.3M1.3k](/packages/drupal-core)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

728272.9k20](/packages/civicrm-civicrm-core)[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6939.5M343](/packages/drupal-core-recommended)

PHPackages © 2026

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