Skip to content

A Laravel package for working with Stripe test clocks.

License

Notifications You must be signed in to change notification settings

amishdev/stripe-test-clock

Repository files navigation

StripeTestClock

Latest Version on Packagist Total Downloads Build Status StyleCI

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 protected]',
    //...
]));

// 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 [email protected] instead of using the issue tracker.

Credits

License

MIT. Please see the license file for more information.

About

A Laravel package for working with Stripe test clocks.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages