Download the PHP package aiarmada/inventory without Composer
On this page you can find all versions of the php package aiarmada/inventory. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download aiarmada/inventory
More information about aiarmada/inventory
Files in aiarmada/inventory
Package inventory
Short Description Multi-location inventory and warehouse management system for Laravel with allocation strategies, cart integration, and movement tracking
License MIT
Homepage https://github.com/aiarmada/commerce
Informations about the package inventory
Laravel Inventory
A comprehensive multi-location inventory and warehouse management package for Laravel with allocation strategies, cart integration, and full movement tracking.
Features
- Multi-Location Support - Manage inventory across warehouses, stores, and fulfillment centers
- Allocation Strategies - Priority-based, FIFO, least-stock, or single-location allocation
- Split Allocation - Automatically split orders across multiple locations
- Cart Integration - Seamless integration with
aiarmada/cartpackage - Movement Tracking - Full audit trail of all inventory movements
- Reservation System - Prevent overselling during checkout
- Per-Product Strategy - Override global allocation strategy per product
- Event-Driven - Dispatch events for low inventory, allocation, and more
- UUID Support - First-class UUID support for all models
Installation
The package auto-discovers and registers itself. Run migrations:
Optionally publish the configuration:
Quick Start
1. Add Trait to Your Model
2. Manage Inventory
3. Use Facades
Allocation Strategies
The package supports multiple allocation strategies:
| Strategy | Description |
|---|---|
priority |
Allocate from highest-priority location first (default) |
fifo |
Allocate from location with oldest stock |
least_stock |
Allocate to balance inventory across locations |
single_location |
Must fulfill from one location or fail |
Global Strategy
Set in config or environment:
Per-Product Strategy
Override on individual products:
Or set directly on inventory levels:
Split Allocation
When enabled (default), allocations can span multiple locations:
Disable split allocation to require single-location fulfillment:
Cart Integration
When installed with aiarmada/cart, the package automatically:
- Extends
CartManagerwith inventory methods - Releases allocations when carts are cleared
- Commits inventory on payment success
Events
| Event | Description |
|---|---|
InventoryReceived |
Stock received at location |
InventoryShipped |
Stock shipped from location |
InventoryTransferred |
Stock moved between locations |
InventoryAdjusted |
Stock level manually adjusted |
InventoryAllocated |
Stock allocated to cart |
InventoryReleased |
Allocation released |
LowInventoryDetected |
Stock below reorder point |
OutOfInventory |
Available stock reached zero |
Commands
Schedule in your console kernel:
Configuration
Key options in config/inventory.php:
Documentation
- Configuration Guide
- Allocation Strategies
- Cart Integration
- Events & Listeners
- API Reference
Testing
License
MIT License. See LICENSE for details.