theamostafa / laravel-wallet
This is my package laravel-wallet
1.0.0
2024-11-30 09:58 UTC
Requires
- php: 8.*
- spatie/laravel-package-tools: ^1
This package is not auto-updated.
Last update: 2025-05-03 12:09:19 UTC
README
Light package help you to integrate wallet functionality into your laravel application
Installation
You can install the package via composer:
composer require theamostafa/laravel-wallet
You can publish and run the migrations with:
php artisan vendor:publish --tag="wallet-migrations"
php artisan migrate
Usage
include HasWallet trait into your model to apply wallet functions
use Theamostafa\Wallet\Traits\HasWallet; class User extends Model { use HasWallet; }
Now we make transactions.
$user = User::first(); $user->balance; // 0 $user->deposit(10); $user->balance; // 10 $user->withdraw(1); $user->balance; // 9
You can also add metadata for transaction
$user = User::first(); $transaction = $user->withdraw( amount: 1.33, meta: [ 'description' => "Refund from order #14" ] ); $transaction->description // Refund from order #14
Fetch all model transactions.
$user = User::first(); $user->transactions()->latest()->paginate();
Testing
composer test
Credits
Features coming with version 2
- Model may be having multiple wallet
- Wallet may be acted as payment gateway and can purchase products
License
The MIT License (MIT). Please see License File for more information.