PHPackages                             bozboz/shipping - 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. bozboz/shipping

AbandonedLibrary

bozboz/shipping
===============

v1.0.2(7y ago)02351PHP

Since Aug 17Pushed 4y ago3 watchersCompare

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

READMEChangelogDependencies (2)Versions (4)Used By (1)

Shipping package
================

[](#shipping-package)

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

[](#installation)

See

Usage
-----

[](#usage)

Shipping is comprised of 3 different models:

- Bands
- Methods
- Costs

### Bands

[](#bands)

A shipping band is a group of shipping methods. Each orderable model should be related to one band. If the orderable model doesn't have a shipping band then it will be considered as not requiring shipping.

Most sites will probably only require one shipping band but an example of where you might need more would be if a site had products that shipped from different places or countries meaning that the costs would be different since they would have different distances to ship.

### Methods

[](#methods)

A shipping method is a group of costs that belongs to particular shipping band. Whether or not a method is valid for a particular order is determined by whether or not any of it's costs are valid. Multiple methods may be valid for an order but the front end use must select only one, e.g. Next day express, 1st class, 5-6 day economy, etc...

### Costs

[](#costs)

The shipping costs are what determine the actual price of the shipping and are selected based on the weight of the items in the basket and the country/region of the shipping address. Only one cost per method can be valid at a time.

### Shippable interface

[](#shippable-interface)

In order to allow shipping on a product it must implement the Shippable interface. The `ShippableTrait` provides the default implementation of the interface.

### Mailman

[](#mailman)

The Mailman class should be used to determine what shipping methods are available for a given order and adding the shipping cost to the order.

See BentonGroup for an example implementation of this:

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity64

Established project with proven stability

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

Total

3

Last Release

2823d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3c709396f3a6a7048c1c89615c6fce3f8301bd5715c641bf07b48268187727a3?d=identicon)[bozboz](/maintainers/bozboz)

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/bozboz-shipping/health.svg)

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

PHPackages © 2026

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