mollie/mollie-api-php
Mollie API client for PHP: accept iDEAL, Apple Pay, credit card, SEPA, PayPal, Klarna and more with a clean, well-tested library. Create payments, handle refunds, subscriptions, customers, and webhooks through a simple, intuitive API.
This release aligns the v2 Checkout Sessions integration with the current API specification.
clientAccessToken, customer and payment details, profile ID, and lifecycle timestamps.STATUS_OPEN, STATUS_EXPIRED, isOpen(), and isExpired() while retaining legacy fields and helpers for compatibility.requiredCustomerDetails option remains in private beta.See #939 and the full comparison.
v3.15.0 brings rate-limit visibility and opt-in HTTP 429 retries to the PHP 7.4-compatible v3 line. Existing clients keep their current retry behavior unless they select the new strategy.
Response::header() and headers() expose response headers. Response::rateLimit() parses Mollie's RateLimit and RateLimit-Policy headers into a RateLimit object with the policy, remaining requests, restore time, burst, quota, and window. Missing or malformed rate-limit headers return null.TooManyRequestsException::getRetryAfterSeconds() exposes Retry-After as a delay in seconds, accepting both integer seconds and HTTP-date values.ExponentialRetryStrategy can retry temporary network failures and HTTP 429 responses. It supports exponential backoff, optional jitter, and a maximum delay budget. A 429 whose Retry-After exceeds that budget is thrown rather than delayed.ConditionalRetryStrategyContract lets custom strategies decide which exceptions to retry and use the triggering exception when calculating a delay.LinearRetryStrategy remains the default and continues to retry temporary network failures as before. The original RetryStrategyContract is unchanged, so existing custom strategies require no migration. The new behavior is opt-in:
use Mollie\Api\Http\ExponentialRetryStrategy;
$client->setRetryStrategy(new ExponentialRetryStrategy());
See the retry guide for configuration and custom strategy examples, or compare v3.14.0 with v3.15.0 for all changes.
RateLimit value object and Response::rateLimit() accessor for RateLimit and RateLimit-Policy response headers.middleware()->onResolved(), a post-hydration middleware phase for transforms that need the hydrated resource or collection rather than the raw response.Mollie\Api\Utils\Utility::isTrue(), the shared boolean coercion used for API-facing scalar values such as testmode arriving from a query string or payload.ExponentialRetryStrategy skips 429 retries when Retry-After exceeds maxDelayMs and adds bounded, additive jitter when honoring the header.ExponentialRetryStrategy applies the maxDelayMs cap before exponential full jitter, avoiding a probability spike at the cap.onResponse() callbacks now always receive the raw Response, regardless of priority. Move transforms that expect a hydrated resource or collection to onResolved(). See UPGRADING.md section 3.7.$endpoints property must override the protected ENDPOINTS constant instead. See UPGRADING.md section 3.6.0, "0" and 0.0 are no longer dropped.ResourceRegistry keeps its class and type indexes consistent, and paginated query factories build their query from one authoritative input map.Mollie\Api\Http\Middleware\ResetIdempotencyKey. It cleared the connector key from the response phase, which never runs when a request throws. Clearing now happens during request assembly, so no replacement is needed. setIdempotencyKey() and resetIdempotencyKey() are unchanged.composer format to apply and composer check:format to verify. The rule set is unchanged, so no reformatting is required on in-flight branches.bin/release publishes only from an already-merged remote state and honors the operator's tag signing configuration.published, so pre-releases are no longer skipped.Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.13.1...v3.13.2
First beta of v4.0.0 — the PHP 8.2+ modernization (#901).
Highlights:
src/Types/ constants are now string-backed enums (PaymentStatus::Paid)Money, Address, OrderLine, …)MollieApiClient::send() — your IDE infers the resource from the request classMoney::of() fluent builder, typed MockResponse factoriesExponentialRetryStrategy with jitter and HTTP 429 / Retry-After supportThis is a pre-release for early adopters; expect breaking changes until 4.0.0 stable. Full details in the changelog and the upgrade guide.
Install:
composer require mollie/mollie-api-php:^4.0@beta
Feedback welcome on #901.
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.13.0...v3.13.1
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.12.0...v3.13.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.11.0...v3.12.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.10.0...v3.11.0
googlepay type to wallet constants by @NormanAlbert91 in https://github.com/mollie/mollie-api-php/pull/869Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.9.0...v3.10.0
setAccessible() by @derrabus in https://github.com/mollie/mollie-api-php/pull/852Capability::$requirements structure by @derrabus in https://github.com/mollie/mollie-api-php/pull/853Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.8.0...v3.9.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.7.0...v3.8.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.6.0...v3.7.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.5.0...v3.6.0
MockEvent to easily test event handlingStr utility classclassBasename to UtilityWebhookEntity to serve as Container for Resource data received through webhooks (-> can be transformed into BaseResource)WebhookEventMapperFull Changelog: https://github.com/mollie/mollie-api-php/compare/v3.4.0...v3.5.0
This release introduces support for the brand new Delayed Routing API.
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.3.3...v3.4.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.3.2...v3.3.3
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.3.1...v3.3.2
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.3.0...v3.3.1
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.1.5...v3.2.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.1.4...v3.1.5
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.1.3...v3.1.4
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.1.2...v3.1.3
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.1.1...v3.1.2
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.1.0...v3.1.1
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.6...v3.1.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.5...v3.0.6
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v2.79.0...v2.79.1
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.4...v3.0.5
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.3...v3.0.4
MockResponse serializable$metadata handling to upgrade guideFull Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.2...v3.0.3
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.1...v3.0.2
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.0...v3.0.1
🎉 Introducing version 3 of mollie-api-php. Enjoy!
Upgrading from version 2? Check out the upgrade guide here.
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v2.78.0...v3.0.0
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.0-beta.10...v3.0.0-beta.11
Full Changelog: https://github.com/mollie/mollie-api-php/compare/v3.0.0-beta.9...v3.0.0-beta.10
How can I help you explore Laravel packages today?