- How do I install treestoneit/laravel-converge-api?
- Install it with Composer by running composer require treestoneit/laravel-converge-api from your Laravel project root. The package follows the conventional Laravel package shape, so it ships a service provider, a publishable config file, and a facade. After installing, publish the configuration with the vendor:publish command and the package's config tag, then supply your Converge merchant ID, user ID, PIN, and endpoint. A competent Laravel developer should have authorization, capture, refund, and void flows working against a Converge demo account in a few days.
- Which Laravel versions does laravel-converge-api support?
- Version 2.2.2 of the package added compatibility with Laravel 12, which was the sole change in that release. The bump was a patch update from 2.2.1 and appears to be a widened illuminate and orchestra/testbench constraint rather than a behavioral change. If you are on Laravel 10 or 11 there is no urgency to upgrade, but there is also no reason to avoid it. Confirm the exact supported Laravel and PHP version pairs by checking the package's composer.json and CI test matrix, since a thin test matrix across versions has been flagged as a risk.
- How do I configure my Converge merchant ID, user ID, and PIN?
- Credentials are supplied through the package's publishable configuration file, which is the standard Laravel pattern for this wrapper. You provide the Converge merchant ID, user ID, PIN, and the endpoint selection for demo versus production. Keep these values in your .env file rather than committing them, since they are live payment credentials. After publishing the config, inject or resolve the client through the facade or container binding and start issuing requests.
- How do I switch between the Converge demo and production endpoints?
- Endpoint selection is handled explicitly through package configuration rather than being inferred, so you choose demo or production per environment. The recommended approach is to drive that value from an environment variable so staging and local environments always point at the demo gateway. Verify the setting before deploying to production, because an incorrect endpoint will cause authentication or transaction failures against the wrong host. The technical assessment specifically calls out explicit demo versus production selection as a check to confirm before merge.
- Can I run authorizations, captures, refunds, and voids with this package?
- Yes. The package is described as simplifying card payments, authorizations, captures, refunds, voids, and transaction reporting through a clean, expressive interface. That is the standard auth-and-capture lifecycle most Laravel applications need for card-not-present payments. Partial captures and partial refunds are less certain and were listed as open questions in the technical evaluation, so verify those behaviors against the source or the demo account before relying on them. Batch and settlement reporting coverage should be confirmed the same way.
- Does using laravel-converge-api keep my application PCI DSS compliant?
- Compliance depends on your integration pattern, not on the package itself. If you post raw card data through your own application to Converge, your application remains in PCI DSS scope under SAQ D regardless of which wrapper you use. Converge supports hosted payment pages and tokenization, and choosing one of those materially reduces your scope. Decide that architecture before you integrate, because retrofitting tokenization after raw card data is already flowing is significantly more work.
- How does the package surface Converge decline reasons and response codes?
- This is one of the key unknowns flagged in the technical evaluation: it is not documented whether Converge response codes are exposed as typed exceptions, result objects, or raw XML. The concern is that a thin wrapper may collapse distinct decline reasons into generic exceptions, which makes it hard to show meaningful messages or route retries intelligently. Inspect the source or run a set of test declines against the demo account to see exactly what you get back. Build your error handling around whatever contract you confirm, and wrap the package so a future change is contained.
- Does laravel-converge-api support 3D Secure 2 and hosted payment pages?
- 3D Secure support and hosted payment page support are both listed as open questions in the technical assessment rather than confirmed features. The package is described as a wrapper around Converge's legacy XML-over-HTTPS gateway, and the documented feature set centers on card payments, authorizations, captures, refunds, voids, and reporting. If strong customer authentication is a requirement for your region or card mix, confirm 3DS2 support before committing. If it is missing, you may need to call Converge directly for that step or choose a different integration path.
- How do I test Converge payments without using live cards?
- Point your configuration at the Converge demo endpoint rather than production, which is an explicit config setting in this package. The demo account lets you exercise authorization, capture, refund, and void flows without moving real money. Write feature tests around your own service layer rather than the package internals so that HTTP calls can be faked and your assertions stay stable. Also test the failure paths, such as declines and timeouts, since those reveal how response codes and exceptions are actually surfaced.
- Is laravel-converge-api actively maintained, and what are the risks?
- The maintainer footprint is very small, consisting of one organization plus a first-time contributor who added Laravel 12 support in version 2.2.2. The technical assessment rates code risk as moderate-low but supply chain risk as moderate, given the payment-critical path and single-maintainer bus factor. Practical mitigations are to pin your lockfile, fork and patch if needed, and keep a contingency plan for adopting the Converge API directly. Also confirm the license and review the commit history for security-relevant fixes before you depend on it in production.