Part of the Commerce ecosystem · 490 projects
Commerce Mollie Notify extends Commerce Mollie so that webhook calls which do not fit the current payment state are handled instead of crashing.
The problem
Mollie calls the payment webhook not only when a payment is paid, but also after refunds, chargebacks and as retries. The remote status stays paid in these cases. Commerce Mollie applies its state transitions unconditionally, so when the local payment is already completed, the webhook fails with:
InvalidArgumentException: The transition "authorize_capture" is currently not allowed. (Current state: "completed").
Mollie receives a 500 response and keeps retrying. A typical trigger is a refund made directly in PayPal for a payment that was processed through Mollie. The same happens for payment methods with an intermediate state (open, then paid), where the payment remains stuck in authorization.
What this module does
- Swaps the class of the Mollie payment gateway plugin via
hook_commerce_payment_gateway_info_alter(). No patch, existing gateway configurations keep working. - Webhooks that match the local state are passed to Commerce Mollie unchanged.
- All other webhooks are logged (channel
commerce_mollie_notify) with local and remote amounts, refunds and chargebacks, and acknowledged with HTTP 200, so Mollie stops retrying. Personal payment details are not logged.
Planned
- An event (
MollieNotificationMismatchEvent) carrying the payment, order, remote payment, a classified case (refund, partial refund, chargeback, authorized then paid, duplicate, state conflict) and the refunded delta. Shop owners attach their own logic as event subscribers. - Optional standard actions, each switchable in a settings form: record the refund on the payment, capture authorized payments, add an order log entry, send an e-mail notification, cancel fully refunded orders (off by default).
- Idempotent handling of repeated and concurrent webhooks.
- A submodule integrating the event with ECA.
Requirements
- Commerce (commerce_payment)
- Commerce Mollie 8.x-1.x
Related issues
If Commerce Mollie adds a guard against invalid transitions, this module still applies: it intercepts before the parent and keeps the information that a refund or chargeback happened.
Ask your assistant about Commerce Mollie Notify
Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works
Depends on
Dependencies of the latest stable release
No dependencies recorded for this project.
Required by
Tracked projects that depend on this one
No tracked projects depend on this one yet.
More in the Commerce ecosystem
Most installed first
Activity
Releases
| Version | Type | Core | PHP | Release date | |
|---|---|---|---|---|---|
| 1.0.x-dev | Dev | 10–11 | Oct 29, 2026 |