gordalina/easypay-php
PHP library for integrating Easypay payments into your application, with helpers for creating payment references, handling callbacks, and working with Easypay’s API in a simple, framework-agnostic way.
Architecture fit
gordalina/easypay-php is a plain PHP SDK wrapper around the easypay.pt API — not a Laravel package. There is no evidence of a service provider, facade, config publishing, or package discovery, so it will not "just work" inside Laravel's container. Architecturally it should sit as a low-level transport client behind our own PaymentGateway interface (authorize, capture, refund, status, webhook verification), bound as a singleton in a service provider we write. It must not be called directly from controllers, models, or jobs.
Integration feasibility Composer-installable and MIT-licensed, which keeps legal friction low. Feasibility hinges on facts that need verification, not assumption:
composer.json PHP constraint, PSR-4 compliance, and Guzzle/PSR-18 version pins versus our Laravel runtime.Technical risk High relative to typical dependencies. This is effectively unvetted, single-maintainer code handling payment data. Principal risks: API-version drift and abandonment; unclear callback signature verification; retry/idempotency behaviour that could produce duplicate charges; and untyped or loosely validated request/response objects. The 0.23 score aligns with "treat as vendored code to be reviewed, not a trusted library."
Key questions
Stack fit
A natural fit for a Laravel monolith or modular PHP service that already needs Portuguese payment rails. Wrap it: define an internal PaymentGateway contract, implement an EasypayGateway adapter that delegates to the SDK, register it in a service provider, and keep credentials in config/services.php sourced from the environment. Never let SDK objects leak into domain code.
Migration path Because there is no incumbent Laravel integration, the realistic path is adapter-first: build our interface and tests, then implement it with this SDK. That makes the SDK replaceable if it is abandoned or if we later migrate to easypay's current official API or another PSP. If we already have a PSP, run easypay in parallel behind a feature flag on a small traffic slice before any cutover.
Compatibility Pin an exact version, commit the lockfile, and verify PHP, Laravel, and HTTP-client constraints in CI. If the SDK's dependency pins conflict with our framework version, prefer forking and maintaining a thin internal copy over loosening our own constraints.
Sequencing
Maintenance Assume we own this code. Budget for periodic review, dependency bumps, and likely a fork if the maintainer goes quiet. Any easypay API change becomes our incident, not a vendor's.
Support No commercial support and a negligible community. Escalation is internal plus easypay's own merchant support. Document runbooks accordingly.
Scaling Payment volume for a Portuguese-market integration is unlikely to stress the SDK itself; the constraints will be network timeouts, connection pooling, and queue throughput on callbacks. Route payment calls through queued jobs with bounded retries rather than inline in request cycles.
Failure modes API deprecation or endpoint changes; timeouts and partial failures that risk duplicate charges without idempotency; dropped or replayed callbacks; refund and reconciliation mismatches; silent signature-verification gaps. Each needs an alert, a reconciliation job, and a manual fallback path.
Ramp-up Low for a mid-level PHP developer — the SDK surface is small and the adapter is a few days' work. The real cost is domain knowledge: easypay's payment methods, reference expiry, and settlement semantics. Pair the integration work with finance/ops sign-off on reconciliation before go-live.
How can I help you explore Laravel packages today?