- Is mediaarea/kj-payment-stripe-bundle a Laravel package?
- No. It is a Symfony bundle built for the KJ PHP framework from mediaarea, not a Laravel package. It ships a Bundle subclass, a DI extension, and container service definitions, and Laravel has no bundle registration or compiler passes. Treat any Laravel usage as a custom port rather than a straightforward install.
- Can I install this Stripe bundle in a Laravel application?
- Adoption in Laravel is low feasibility. You would have to hand-port the bundle's service definitions into a Laravel service provider and pull in the sibling KJPaymentBundle abstraction the driver depends on, which makes it a two-package commitment plus manual wiring. For most Laravel apps, using stripe/stripe-php directly behind your own gateway interface is simpler and more maintainable.
- Which PHP and Symfony versions does this package support?
- Check the composer.json constraints directly, because this is an older bundle and the exact ranges matter. Expect Symfony 3 or 4 container semantics and a PHP constraint around ^5.6 or ^7.0, which conflicts with modern Laravel runtimes. Pinned stripe/stripe-php versions may also conflict with current SDK releases, so verify every constraint before attempting an install.
- How do I install and configure mediaarea/kj-payment-stripe-bundle?
- Installation follows the usual Composer flow: require the bundle along with KJPaymentBundle, register the bundle in your kernel or bundles.php, and configure your Stripe API keys. In Laravel there is no native bundle registration, so that step becomes manual service provider wiring. Confirm the exact package name and configuration keys against the repository README before starting.
- Does this bundle support Stripe PaymentIntents and SCA/3DS2?
- That is unverified and should be the first thing you check. Bundles of this vintage typically pin stripe/stripe-php v3 through v7 and use the legacy Charges API, which predates PaymentIntents and SCA/3DS2 requirements. If PaymentIntents are not implemented, you cannot safely accept card payments in regions with strong customer authentication rules. Inspect the source for PaymentIntent usage before relying on it.
- Are Stripe webhook signatures verified by this bundle?
- There is no evidence that webhook signatures are verified, so assume they are not. Stripe requires signature verification on webhook endpoints and recommends idempotency keys on capture and refund calls. If you use this bundle, add verification and idempotency handling in your own layer. Treat any unverified webhook endpoint as a production risk.
- Is mediaarea/kj-payment-stripe-bundle maintained and safe for production payments?
- It is not recommended without a thorough review. The package has 0 stars and 0 dependents, is maintained by a single organization whose core work is media metadata tooling, and shows no release cadence. Payments carry an asymmetric blast radius, so an unmaintained, PCI-adjacent integration is a liability rather than a convenience. Fork, vendor, and audit it before any production use.
- What are the alternatives to this package for Stripe payments in Laravel?
- For Laravel, the common alternatives are using stripe/stripe-php directly behind a first-party PaymentGateway interface, or Laravel Cashier if subscription billing is in scope. Both are actively maintained, documented, and idiomatic to Laravel. If you need an abstraction across multiple providers, define your own rather than adopting the KJ abstraction for a single gateway.
- Does this bundle have tests, and how should I test Stripe flows with it?
- There is no indication of a test suite, so plan to build your own coverage around the operations you actually use, such as authorization, capture, refund, and webhook handling. Use Stripe test mode and exercise failure and retry paths, including idempotency behavior. Running PHPStan or Psalm against the vendored code on your runtime is also worthwhile.
- How do I migrate off kj-payment-stripe-bundle safely?
- Treat migration as a containment and exit problem. Freeze the current commit, run composer audit and static analysis, then introduce a first-party PaymentGateway port with an adapter that delegates to the bundle. Move every call site to the port, reimplement the adapter on stripe/stripe-php v15+ in a sandbox account, dual-run test-mode parity checks, and finally swap the binding and delete the bundle.