Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Stripe Laravel

Stripe Laravel Laravel Package

cartalyst/stripe-laravel

Laravel integration for the Stripe PHP SDK, providing a service provider, configuration file, and a Stripe facade for convenient access to Stripe's API—customers, charges, subscriptions, webhooks, and more—from within your Laravel application.

View on GitHub
Deep Wiki
Context7

Laravel 8 integration for the Cartalyst Stripe package.

Frequently asked questions about Stripe Laravel
How do I install cartalyst/stripe-laravel in a Laravel application?
Require the package with Composer, then publish the bundled configuration file using the vendor:publish Artisan command. Laravel's package auto-discovery registers the service provider and the Stripe facade, so no manual registration is normally needed. Add your Stripe keys to your environment file or secrets manager, then call Stripe:: methods anywhere in your app. Always confirm the exact Laravel and PHP constraints against the resolved composer.json rather than the README.
Does cartalyst/stripe-laravel support Laravel 12?
Yes. Version 17.0.0, released 2025-02-28, targets Laravel 12, even though the top-level documentation still references Laravel 8. That documentation drift means you should treat the resolved composer.json and the changelog as the source of truth for the supported framework matrix. If you are on Laravel 11 or older, verify compatibility explicitly before adopting, since the current line is not guaranteed to support earlier majors.
How do I configure Stripe API keys with this package?
The package uses a publishable config file plus environment-driven credentials, so keys live in your .env file or a secrets manager rather than in committed configuration. Set your publishable and secret keys once and every Stripe:: call picks them up. Never commit the published config with real keys, and confirm your deployment pipeline injects secrets at runtime. The package also supports multiple connections, so you can scope different credentials per account.
Can I mock the Stripe facade in Laravel tests?
Yes. Because the package is a thin adapter that resolves the Stripe client through Laravel's service container, you can swap or fake the client in tests instead of hitting the live API. Injecting the client via dependency injection is generally more testable than calling the Stripe facade statically. Combine that with Stripe's own test keys and fixtures for realistic coverage. There is no bundled mocking layer, so expect to write your own fakes or use the upstream SDK's testing facilities.
What Stripe APIs can I access through the package?
The facade passes straight through to the full Stripe PHP SDK, so customers, charges, subscriptions, invoices, refunds, payment intents, and webhook endpoints are all reachable. The wrapper adds no capability ceiling because it does not restrict the underlying client. Anything you can do with stripe/stripe-php directly, you can do through this package. That also means the API surface you get is governed by whichever stripe-php major you have installed.
Does the package handle subscriptions, dunning, or webhooks for me?
No. It contains essentially no payment logic of its own: no subscription lifecycle, no proration, no dunning, and no webhook plumbing. It provides a service provider, a facade, and configuration wiring, and then gets out of the way. You are responsible for creating subscriptions, verifying webhook signatures, and handling failed payments. If you want those behaviors handled for you, an opinionated billing package is the better fit.
How does cartalyst/stripe-laravel compare to Laravel Cashier?
They solve different problems. Cashier owns the billing lifecycle and gives you opinionated subscription management, while this package is commodity glue that exposes the raw Stripe SDK. Choose Cashier when you want handled subscription flows and choose this when you want direct SDK access with minimal abstraction. The upside of the thinner approach is low lock-in, since removal is a mechanical refactor to instantiating StripeClient directly and replacing facade calls.
Does it support multiple Stripe accounts or connections?
Yes, the current line supports multi-account and multi-connection setups, so you can hold credentials for separate Stripe accounts and select the appropriate one per operation. This is useful for marketplaces, regional entities, or separating test and live environments. Configuration is centralized in the published config file, so each connection is defined once and reused. Check the config file for the exact connection keys supported in your installed version.
Is cartalyst/stripe-laravel actively maintained?
It is released actively enough to ship v17 for Laravel 12 in February 2025, which shows the framework cadence is being tracked. Adoption signals are modest, though: roughly 337 stars and no listed dependents for a package sitting on the payment path. Maintainer count, issue responsiveness, and a security disclosure policy are not documented, so confirm those before adopting. You also inherit two upstream clocks, Laravel majors and stripe-php majors plus Stripe's dated API versions.
Is using cartalyst/stripe-laravel PCI compliant?
The package does not change your PCI scope by itself, but how you use it does. Server-side-only calls to the Stripe API keep you in SAQ-A territory, while accepting raw card data or creating tokens server-side expands scope materially. Treat that as a policy guardrail enforced in code review, not a package feature. Also pin or explicitly document the Stripe API version you target, because failures here surface as failed charges rather than stack traces.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo