laravel-wallet maintained by theamostafa
Description
This is my package laravel-wallet
Author
Last update
2024/11/30 10:58
(dev-main)
License
Downloads
265
Tags
Laravel wallet
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.