PHPackages                             trexology/laravel-order - 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. trexology/laravel-order

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

trexology/laravel-order
=======================

Order for Laravel Application.

v2.0.3(9y ago)91212[2 issues](https://github.com/Trexology/laravel-order/issues)[1 PRs](https://github.com/Trexology/laravel-order/pulls)MITPHP

Since Dec 2Pushed 5y ago2 watchersCompare

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

READMEChangelog (9)Dependencies (6)Versions (10)Used By (0)

[![Latest Stable Version](https://camo.githubusercontent.com/435e1fc610d4005a53271f29cc418c5385e10658319b4d251018b3e898e6a155/68747470733a2f2f706f7365722e707567782e6f72672f747265786f6c6f67792f6c61726176656c2d6f726465722f762f737461626c65)](https://packagist.org/packages/trexology/laravel-order) [![Total Downloads](https://camo.githubusercontent.com/14a5cbc651339dd1e8f4d6be40cfde497ffd5e0d7d2a7444a4a17d00f477b667/68747470733a2f2f706f7365722e707567782e6f72672f747265786f6c6f67792f6c61726176656c2d6f726465722f646f776e6c6f616473)](https://packagist.org/packages/trexology/laravel-order) [![Latest Unstable Version](https://camo.githubusercontent.com/f002611c5b2de13e7ff46b942add4abe1361b54da3a5bd8d97a39223a1834f8f/68747470733a2f2f706f7365722e707567782e6f72672f747265786f6c6f67792f6c61726176656c2d6f726465722f762f756e737461626c65)](https://packagist.org/packages/trexology/laravel-order) [![License](https://camo.githubusercontent.com/3726cde45ef90a47a84d8507525db61314244b03f335bf8d850e1104ddd9e421/68747470733a2f2f706f7365722e707567782e6f72672f747265786f6c6f67792f6c61726176656c2d6f726465722f6c6963656e7365)](https://packagist.org/packages/trexology/laravel-order)

laravel-order
=============

[](#laravel-order)

Basic Ordering Package for Laravel 5+

Installation
============

[](#installation)

```
composer require trexology/laravel-order:2.*

```

After installation，go to `config/app.php` under `providers` section to add the following:

```
Trexology\LaravelOrder\LaravelOrderServiceProvider::class

```

and under "aliases" add:

```
'Order'     => Trexology\LaravelOrder\Facades\OrderFacade::class

```

publish the migration and config files with the commands:

```
php artisan vendor:publish

```

Edit additional settings at `config/order.php`

```
    return [

        /*
        |--------------------------------------------------------------------------
        | Order Status Name
        |--------------------------------------------------------------------------
        | Customize the status name recorded
        |
        */

        'init' => "init",
        'complete' => "complete",

        'ignoredFields' => []

    ];
```

Upgrade Guide from 1.\*
=======================

[](#upgrade-guide-from-1)

• This package uses [VentureCraft/revisionable](https://github.com/VentureCraft/revisionable/) to track order changes

• Remove the old migration file '2015\_12\_02\_150448\_create\_orderLogs\_table.php'

• Column `line_item_id` in `Orderitems` table has been changed from integer to string for greater flexibility (version 1 user have to change the column type manually)

Usage
=====

[](#usage)

Create a new order
------------------

[](#create-a-new-order)

`Order Order::order(int $user_id, array $data = null, bool $draft = FALSE)`

```
    $data = [
        //Custom fields
        'cust_first_name' => $cust->first_name,
        'cust_last_name' => $cust->last_name
    ];

    $order = Order::order($cust->id, $data);
```

Add item to Order
-----------------

[](#add-item-to-order)

`Order Order::addItem(Order $order, Model $object, double $price, int $quantity, array $data = null, double $vat = 0);`

```
    $data = [
      'description' => "My item descriptions",
      'currency' => "SGD"
    ];
    $order = Order::addItem($order, $object, 25.5, 2, $data, 7);
```

Add item to Order (Non Eloquent Style)
--------------------------------------

[](#add-item-to-order-non-eloquent-style)

`Order Order::addItemManual(Order $order, string $object_id, string $object_type, double $price, int $quantity, array $data = null, double $vat = 0)`

```
    $data = [
      'description' => "My item descriptions",
      'currency' => "SGD"
    ];
    $order = Order::addItem($order, 22, "App\Model\Object", 25.5, 2, $data, 7);
```

Batch Adding item to Order
--------------------------

[](#batch-adding-item-to-order)

`Order Order::batchAddItems(Order $order, array $order_Items)`

```
    $order_Items = [
        [
            "description" => "Some Description",
            "currency" => "USD",
            "line_item_id" => 1,
            "line_item_type" => "App\\Models\\Package",
            "price" => 1802,
            "quantity" => 1,
            "vat" => 0,
        ],
        [
            "description" => "Some Description",
            "currency" => "USD",
            "line_item_id" => 1,
            "line_item_type" => "App\\Models\\Package",
            "price" => 1802,
            "quantity" => 1,
            "vat" => 0,
        ]
    ];
    $order = Order::batchAddItems($order, $order_Items);
```

Get an order
------------

[](#get-an-order)

```
    Order Order::getOrder(int $order_id);
```

Get user's orders
-----------------

[](#get-users-orders)

```
    Collection Order::getUserOrders(int $user_id);
```

Update Order Status
-------------------

[](#update-order-status)

```
    boolean Order::updateStatus(int $order_id, string $status);
```

Delete an Order
---------------

[](#delete-an-order)

```
    boolean Order::deleteOrder(int $order_id);
```

Update Order quantity
---------------------

[](#update-order-quantity)

```
    OrderItem Order::updateQty(int $item_id, int qty);
```

Calculate an Order total amount
-------------------------------

[](#calculate-an-order-total-amount)

```
    float Order::total(Order $order);
```

Calculate an Order total item count
-----------------------------------

[](#calculate-an-order-total-item-count)

```
    int Order::count(Order $order);
```

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity69

Established project with proven stability

 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.

###  Release Activity

Cadence

Every ~30 days

Recently: every ~42 days

Total

9

Last Release

3620d ago

Major Versions

v1.3.3 → v2.0.02016-07-04

### Community

Maintainers

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

---

Top Contributors

[![Trexology](https://avatars.githubusercontent.com/u/3056348?v=4)](https://github.com/Trexology "Trexology (31 commits)")

---

Tags

laravelorder

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/trexology-laravel-order/health.svg)

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

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[larastan/larastan

Larastan - Discover bugs in your code without running it. A phpstan/phpstan extension for Laravel

6.4k51.0M7.7k](/packages/larastan-larastan)[laravel/ai

The official AI SDK for Laravel.

1.0k2.1M165](/packages/laravel-ai)[spatie/laravel-health

Monitor the health of a Laravel application

87411.3M154](/packages/spatie-laravel-health)[propaganistas/laravel-disposable-email

Disposable email validator

6012.9M7](/packages/propaganistas-laravel-disposable-email)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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