mercadopago/sdk
Official Mercado Pago SDK for PHP. Add payments, checkout, subscriptions, and refunds to your Laravel or PHP app through a consistent API for managing preferences, customers, payments, and webhooks, making it easy to accept and process payments across Latin America.
Architecture fit: Poor for new Laravel services. The package is a deprecated SDK around MercadoPago APIs, so adopting it couples the payment domain to an abandoned transport layer. It is acceptable only as an anti-corruption adapter in a legacy PHP/Laravel app already using it, with a planned exit. Integration feasibility: Composer installation and basic payment calls may still work in older PHP runtimes, but feasibility for current Laravel and PHP 8.x must be proven in sandbox. Verify PHP constraints, Guzzle/PSR compatibility, Laravel auto-discovery, webhook handling, and whether the targeted MercadoPago endpoints remain supported. Technical risk: High. Last release was 2019 and the repository is explicitly deprecated; there are no security patches, API version guarantees, or vendor support. Low community signal in the dataset increases uncertainty. Risks include breaking MercadoPago API changes, obsolete auth patterns, TLS/runtime issues, and unclear PCI/security exposure. The MIT license is permissive but does not mitigate abandonment. Key questions: Which MercadoPago flows are required: Checkout Pro, Checkout API, subscriptions, marketplace split, refunds, chargebacks? What PHP/Laravel versions are in scope? Does this affect PCI scope? Who owns credentials and webhook secrets? What is the migration target: current official SDK or direct REST? Are there existing production transactions and reconciliation requirements? What latency, idempotency, retry, and SLA expectations apply? Can the SDK be isolated and sandbox-tested before commitment?
Stack fit: Weak for greenfield Laravel. Strongest fit only in legacy applications with existing MercadoPago integrations and constrained upgrade windows. Wrap it behind a domain-owned payment gateway interface; do not leak SDK models or exceptions into controllers, jobs, or domain services. Migration path: Treat this as a temporary bridge. Spike in sandbox, confirm required flows, then replace with the current official MercadoPago SDK or a direct HTTPS REST client. If temporarily blocked, fork or vendor the package under an internal namespace with pinned dependencies, but budget explicit ownership. Compatibility: Validate PHP version constraints, Composer conflicts, Laravel service-provider/config publishing, HTTP client behavior, proxy/TLS settings, and webhook payload compatibility. Confirm test/live credential separation and callback URL handling per environment. Sequencing: Inventory current payment flows and API calls; prove auth, payment creation, webhook, refund, and error paths in sandbox; introduce an adapter and contract tests; migrate one low-risk flow; run old/new paths in parallel where reconciliation allows; cut over with rollback; decommission the deprecated SDK and rotate credentials.
Maintenance: High. A deprecated package with no upstream fixes means every PHP/Laravel upgrade and MercadoPago API change becomes an internal ownership problem. Requires dependency pinning, vulnerability scanning, and a named owner. Support: No vendor support for the SDK itself. MercadoPago may support API/account issues, but not this package. Internal runbooks and escalation paths are mandatory. Scaling: The SDK is not the scaling bottleneck; API rate limits, timeouts, retries, queueing, and idempotency are. Run payment calls in workers with bounded concurrency and backoff; avoid blocking user requests on long external calls. Failure modes: API deprecation or schema changes, auth/token expiry, webhook signature/replay failures, duplicate charges from retries, timeout or ambiguous payment states, TLS/certificate issues, PHP runtime deprecations, and credential leakage. Add structured logging, metrics, alerting, dead-letter queues, reconciliation jobs, and manual review for stuck payments. Ramp-up: Moderate for engineers familiar with payments; higher for others because documentation is stale and behavior must be discovered from code and sandbox tests. Plan for pairing, contract tests, and a short proof-of-concept before committing. TPM recommendation: do not adopt for new work; use only as a time-boxed legacy adapter with an explicit migration deadline and rollback plan.
How can I help you explore Laravel packages today?