Skip to content

Manage ecommerce vouchers. Associates vouchers with any eloquent models and allow multiple models to redeem vouchers.

License

Notifications You must be signed in to change notification settings

augustusnaz/laravel-vouchers

Repository files navigation

Laravel Vouchers

An ecommerce voucher generator. It associates vouchers with one or more eloquent model and allows multiple models to own/redeem vouchers.

✔️ Requirements

  • Laravel ^8
  • PHP ^8.1

Documentation

All documentation is available at the documentation site.

💚 Unique Features

  • Associate one voucher with one or more items
  • Flexible redeemer models: vouchers can be redeemed by any model. User, Admin, Guest models.
  • 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_models and deny_models attributes mentioned above are actually saved as can_redeem and cannot_redeem internally. They are mutated on boot creating or updating.
  • If you manage your resources with Nova, Nova Multiselect can be used directly with the can_redeem and cannot_redeem attributes. Example code here.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

Manage ecommerce vouchers. Associates vouchers with any eloquent models and allow multiple models to redeem vouchers.

Resources

License

Stars

Watchers

Forks

Packages

No packages published