laravel-vouchers maintained by moirei
Description
Manage ecommerce vouchers
Author
Last update
2026/03/21 10:49
(dev-master)
License
Downloads
2 306
Tags
Laravel Vouchers
An ecommerce voucher generator. It associates vouchers with one or more eloquent model and allows multiple models to own/redeem vouchers.
:heavy_check_mark: Requirements
- Laravel ^8
- PHP ^8.1
Documentation
All documentation is available at the documentation site.
:green_heart: Unique Features
- Associate one voucher with one or more items
- Flexible redeemer models: vouchers can be redeemed by any model.
User,Admin,Guestmodels. - Flexible voucher models: voucher can be associated with any model.
Product,Variant,Ticket, whatever else. - Use vouchers once or multiple times
- Limit access: can define model instances that are allowed or excluded from redeeming a Voucher
- Multiple limit scheme; exhaust redeems per instance, per user or per product
Example usage:
$product = Product::find(1);
$voucher = $product->createVoucher();
$user->redeem($voucher);
Installation
You can install the package via composer:
composer require moirei/laravel-vouchers
Next publish the migration with
php artisan vendor:publish --tag="vouchers-migrations"
Then run the migrations:
php artisan migrate
You can publish the config file with:
php artisan vendor:publish --tag="vouchers-config"
Notes
- The
allow_modelsanddeny_modelsattributes mentioned above are actually saved ascan_redeemandcannot_redeeminternally. They are mutated on boot creating or updating. - If you manage your resources with Nova, Nova Multiselect can be used directly with the
can_redeemandcannot_redeemattributes. Example code here.
Credits
License
The MIT License (MIT). Please see License File for more information.