amish / stripe-test-clock
Work with stripe test clocks in Laravel
Requires
- illuminate/support: ~9|~10
- stripe/stripe-php: ^7.39
Requires (Dev)
- orchestra/testbench: ~7
- pestphp/pest: ^1.21
- phpunit/phpunit: ~9.0
This package is auto-updated.
Last update: 2024-11-05 17:39:00 UTC
README
Work with Stripe test clocks in laravel.
Installation
Via Composer
composer require amish/stripe-test-clock
Publish config
php artisan vendor:publish --tag "stripe-test-clock.config"
Run migrations
php artisan migrate
Usage
Create a test clock:
php artisan test-clock:create "Test 1 week trial"
Assigning test clocks to your customers.
To assign a clock to a customer for testing use the StripeTestClock::stripeOptions()
method.
This will add the 'test_clock' key to your array if there is an active clock.
It will not add the key if 'enabled' is set to false in your config, or if you don't have a clock active.
use Amish\StripeTestClock\Facades\StripeTestClock; // using the StripeClient $stripe->customers->create(StripeTestClock::stripeOptions([ 'email' => 'email@example.com', //... ])); // Or using cashier $user->createAsStripeCustomer(StripeTestClock::options());
From there you can work with the clock from the stripe dashboard or using the cli.
php artisan test-clock:advance -w 1 # advance the current clock by 1 week php artisan test-clock:advance -m 1 -d 4 # advance the current clock by 1 month & 5 days php artisan test-clock:advance "2023-07-19" # advance the clock to a specific date.
If a test clock is deleted in stripe or expires you can prune using the artisan test-clock:prune
command to delete the models.
When testing locally I recommend using the stripe cli to forward webhook events to your app.
stripe listen -f http://localhost/stripe/webhook
Change log
Please see the changelog for more information on what has changed recently.
Testing
composer test
Contributing
Please see contributing.md for details and a todolist.
Security
If you discover any security related issues, please email author@email.com instead of using the issue tracker.
Credits
License
MIT. Please see the license file for more information.