ezsystems/payment-core-bundle
JMSPaymentCoreBundle provides a unified Symfony API for integrating multiple payment backends. It handles payment and transaction persistence, retries, sensitive-data encryption, and supports many providers out of the box.
Only consider it as:
Look elsewhere (or build) when:
To executives: This package is not a candidate for adoption. It's an abandoned (archived), effectively unused Symfony library. Its value to us is as a design reference for how to structure a payment layer that supports multiple providers without rewriting checkout each time a vendor changes. Recommendation: no budget allocation, no dependency; use its feature list to shape our own payments architecture and evaluate maintained alternatives.
To engineering: Treat JMSPaymentCoreBundle as a pattern library, not a dependency. Its domain model — unified payment API, persisted payments/transactions, retry handling, encryption of sensitive fields, pluggable backends — is a good mental template. For our Laravel stack, we should not port it; instead evaluate Omnipay, Laravel Cashier, or a thin in-house adapter around a primary gateway, keeping the provider boundary explicit so we retain the "integrate once, swap providers" benefit the bundle was aiming for. Note the framework mismatch (Symfony vs. Laravel) and the maintenance risk of archived code handling payment data.
How can I help you explore Laravel packages today?