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

Ogone Bundle Laravel Package

snowcap/ogone-bundle

Snowcap Ogone Bundle integrates the Ogone (Ingenico) payment gateway into Symfony applications, handling payment requests, redirects, and transaction feedback with configurable credentials so you can accept online payments quickly.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit — Poor for the stated target stack. This is a Symfony2 bundle, not a Laravel package. It integrates through mechanisms Laravel does not have: AppKernel registration, a DI Extension with a Configuration tree, tagged services, and Symfony's EventDispatcher/HTTP kernel. A Laravel application would need a ServiceProvider wrapper at minimum, and the underlying bundle wiring would have to be stripped out. The only genuinely reusable asset is the protocol logic: building the hosted-payment-page form fields, computing the SHA signature over the field set, and parsing/validating the gateway's response.

Integration feasibility — Feasible but not as an install-and-go dependency. The domain surface is small and well understood (redirect form construction, signature generation, response verification, optional feedback/webhook handling). A fork that extracts those classes into a framework-agnostic library and wraps it in a Laravel provider is roughly a one-to-two week effort including contract tests against a sandbox. The problem is that this effort buys a 2015-era protocol implementation that then has to be modernized anyway, which puts the port and the rewrite in the same cost bracket.

Technical risk — High, concentrated in three areas:

  • Runtime currency. Released December 2015, targeting PHP 5.x/Symfony 2.x. Expect incompatibilities on PHP 8.x (dynamic properties, removed functions, old PHPUnit/autoloading assumptions). There is no evidence of maintenance since release.
  • Protocol and compliance currency. Ogone was rebranded to Ingenico ePayments and then Worldline. Signature handling moved from SHA-1 toward SHA-256 variants, and EU card payments have required SCA/3DS2 since 2019–2021. A wrapper of this vintage almost certainly lacks 3DS2 challenge flow support, which is a hard compliance blocker rather than a nice-to-have.
  • Abandonment surface. 4 stars, 0 dependents, no release in ~9 years. No CVE response, no gateway API change tracking. In a cardholder-data-adjacent path this shifts the entire security and correctness burden onto the adopting team.

Key questions

  1. Which Worldline/Ingenico product and API version is actually contracted — hosted checkout page, DirectLink, or a REST API? The answer may make this bundle irrelevant regardless of porting effort.
  2. Does the business require 3DS2/SCA, and what exemption strategy is agreed with the acquirer?
  3. Are tokenization, recurring/mitigation, refunds, or partial captures in scope? Each expands the surface beyond what this bundle likely covers.
  4. Who owns the fork long-term, and is there a named maintainer with payments experience?
  5. Has compliance/legal reviewed running unpatched third-party code in the payment path?
  6. What is the Laravel and PHP version of the target application, and is there an existing payments abstraction to slot behind?

Integration Approach

Stack fit — Effectively zero out of the box. Treat the repository as a reference implementation and specification of the legacy flow, not as a dependency. Two viable paths:

  • Port: fork, remove Symfony coupling, extract a Gateway interface with signRequest(), buildRedirectPayload(), verifyResponse(), and wrap it in a Laravel ServiceProvider bound to a config file.
  • Replace: integrate Worldline's current official SDK or HTTP API directly behind the same interface. Higher upfront certainty, lower lifetime cost.

The interface-first framing matters: it lets you swap providers later without touching checkout code, which is the durable decision here.

Migration path — If the organization already runs this bundle on Symfony2, freeze the current implementation, extract the protocol layer into a framework-agnostic package with sandbox contract tests, and only then wrap it for Laravel. If this is greenfield, do not port; build against current Worldline documentation and use the bundle solely to understand field names and signature composition.

Compatibility — Assume no Laravel 9/10/11 support and no PHP 8.x support until proven otherwise. A compatibility matrix covering PHP version, Laravel version, and gateway API version should be a gating artifact before any code is written.

Sequencing

  1. Confirm the commercial and compliance decision with the payments owner (product/API, SCA posture, scope).
  2. Spike against the Worldline sandbox using a maintained client; timebox to a few days.
  3. Decide port vs. replace on the spike results, not on the bundle's existence.
  4. If porting, isolate the protocol layer with contract tests against the sandbox, covering signature edge cases and failure responses.
  5. Implement hosted redirect first — it minimizes PCI scope — before considering any direct/server-to-server flow.
  6. Add idempotency keys, response signature validation, and structured logging that never captures PAN or full gateway payloads.
  7. Run parallel sandbox testing with back-to-back transaction comparisons, then staged rollout behind a feature flag with a kill switch and the incumbent provider retained as fallback.

Recommendation — Do not adopt as a dependency. Recommend a timeboxed spike on a maintained Worldline integration, with the bundle used as documentation only.

Operational Impact

Maintenance — The package arrives already orphaned. Adopting it means accepting full ownership: PHP/framework upgrades, security patching, and gateway API deprecation tracking. Steady-state cost is modest if nothing changes (a few days per quarter), but it is unbounded in the event of a gateway API change or a security finding — precisely the events that matter most in payments.

Support — No vendor, no active maintainer, no community to escalate to. The escalation path is entirely internal, and the effective support contract is the employment of whoever performs the port. That creates a single-person knowledge concentration risk on a revenue-critical path.

Scaling — Not a real concern. The wrapper is stateless request-signing and response-parsing code invoked once per checkout; throughput limits live at the gateway, not here. Scaling attention belongs on retry behavior, webhook/feedback processing concurrency, and gateway-side rate limits, none of which this package meaningfully influences.

Failure modes — The ones to design against:

  • Signature mismatch from algorithm drift, passphrase rotation, field ordering, or character encoding — surfaces as blanket transaction rejections.
  • Accepting a response without verifying its signature, which is the highest-severity defect class in this domain and easy to inherit from unmaintained code.
  • Double charges on retry in the absence of idempotency handling.
  • Missing SCA/3DS2 causing declines or compliance findings on EU-issued cards.
  • Runtime fatals on PHP 8 after a routine platform upgrade.
  • Cardholder data leaking into application logs, silently pulling the whole application into PCI scope.

Ramp-up — Low to read and understand (the flow is well-trodden), moderate to port (requires brief Symfony DI familiarity), and high in ongoing ownership burden. The learning curve is not the constraint; the absence of a maintenance backstop is. For a package scoring 0.33 with no dependents and a nine-year-old release, the expected value of adoption is negative relative to building a thin, owned integration against a currently supported gateway client.

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.
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
adachsoft/php-code-style