- Can I install justlease/payum-ems-bundle in a Laravel application?
- You can add it to composer.json, but the bundle itself will not load in Laravel because it is a Symfony bundle built around a Bundle class, DI extension and compiler pass. The only reusable part is the underlying justlease/payum-ems library, which is a framework-agnostic Payum gateway factory with actions and an EMS HTTP client. For Laravel, evaluate that library directly or extract the EMS request and response handling instead of installing the bundle.
- What does justlease/payum-ems-bundle actually do?
- It is a thin Symfony DI and registration wrapper around justlease/payum-ems, providing a bundle class, a configuration tree, a compiler pass and service definitions. The real payment logic sits one layer down in the Payum gateway factory, action classes and EMS HTTP client. It adds Symfony-specific wiring such as gateway configuration, payment creation, callback handling and transaction status workflows for JustLease applications.
- Is justlease/payum-ems-bundle available on Packagist?
- The repository is hosted on Bitbucket and the evaluation notes it is almost certainly not publishable to Packagist. You would normally add a Composer vcs repository entry pointing at the Bitbucket URL and provide CI credentials such as a deploy key or app password. Because semver tags are not guaranteed, pin a specific commit SHA rather than relying on a branch.
- Which Symfony, PHP and Payum versions does justlease/payum-ems-bundle require?
- The bundle pins Symfony http-kernel and dependency-injection ranges plus a specific Payum major version, and Payum 1.x and 2.x wiring differ materially. The exact constraints are not stated in the overview, so read the composer.json in the Bitbucket repository before planning anything. Even if you never load the bundle, those constraints can collide with your application's lockfile because Composer resolves them regardless.
- How do I configure EMS gateway credentials with this bundle?
- The bundle supplies a Symfony Extension with a Configuration tree, so gateway credentials and options are intended to be set through Symfony bundle configuration and then injected into the Payum gateway services. The overview does not document the exact configuration keys or required EMS merchant credentials, so confirm them against the README and service definitions in the repository. For a Laravel evaluation, expect to rebuild that configuration as a config file and service provider around justlease/payum-ems.
- Does justlease/payum-ems support authorize, capture, refund, void and 3DS/SCA?
- That is not settled by the package description. The library is a Payum gateway factory with action classes and an EMS HTTP client, but the evaluation explicitly asks whether it covers authorize, capture, refund, partial refund, void, 3DS/SCA challenge, tokenised repeat charges and async notifications, or only authorize and capture. Treat feature coverage as unverified until you read the action classes and test against EMS sandbox credentials. Separately, PCI scope and PSD2/SCA plus 3DS2 coverage are unresolved go/no-go items.
- How are EMS callbacks and payment status notifications handled?
- The bundle's stated scope includes callback handling and transaction status workflows, which in Payum terms means notification actions mapping EMS responses into payment state transitions. The overview does not specify the callback route, token validation or idempotency behaviour, so verify those details in the source before designing the endpoint. In Laravel you would expose a route and controller, then hand the request to the underlying Payum gateway or your own EMS client.
- Is justlease/payum-ems-bundle maintained and safe for production?
- The evaluation describes zero stars, zero dependents and a single-vendor Bitbucket origin, so treat it as an internal integration artefact that happens to be publicly readable rather than a supported dependency. Assume no security-patch cadence and no external bug reports to surface defects you have not hit yourself. For production, pin a commit, vendor or fork it only if the licence allows, and plan to own the integration.
- How can I use the EMS Payum gateway in Laravel without the Symfony bundle?
- The viable path is to require justlease/payum-ems directly, instantiate the gateway yourself and supply Eloquent-backed implementations of Payum's Storage\StorageInterface plus a Laravel service provider. payum/payum-laravel-package exists but its maintenance cadence is stale, so verify its Laravel version coverage before committing. The alternative, and the evaluation's default recommendation unless Payum is already in your codebase, is to extract the EMS request-building and response-mapping into a small EmsClient behind an interface you control.
- What licence is justlease/payum-ems-bundle under, and can I fork it?
- No licence is visible in the information provided, which is a blocker rather than a detail. If you may not legally fork and vendor the code, using justlease/payum-ems directly or extracting and owning the EMS client logic becomes legally necessary, not merely preferable. Get written clarification from Justlease about the licence and any maintenance commitment before you build on it.