Handling payment status
Every possible payment status
Depending on what happens payments go through a number of statuses. For most status changes we will call your webhook. Below an overview of all possible statuses a payment can have.
| Status | Description | Webhook |
|---|---|---|
open | The payment has been created and can still be completed by your customer. | No |
canceled | Your customer has canceled the payment. This is a definitive status. | Yes |
pending | This is a temporary status that can occur when the actual payment process has been started, but it’s not complete yet. Nothing really needs to happen on your end when this status occurs. | No |
authorized | If the payment method supports captures, the payment will have this status for as long as new captures can be created. See place a hold for a payment for more details. | Yes |
expired | The payment has expired, e.g. your customer has abandoned the payment. This is a definitive status. Some payment methods like SEPA Bank Transfer have a long expiration window. See below for more details when a payment expires. | Yes |
failed | The payment has failed. This is a definitive status. | Yes |
paid | Your customer successfully completed the payment. This is a definitive status. | Yes |
How does one status lead to another?
The below diagram shows when to expect which status.

When does a payment expire?
When your customer doesn’t make an actual payment, the payment will, at some point, expire. After a specific expiry time, an open payment will become expired. This could happen when a customer decides not to make a payment after all and abandons it. The expiry time is different for each payment method.
Expiry times per payment method
| Payment methods | Expiry time |
|---|---|
ideal, paysafecard | 15 minutes |
creditcard | 30 minutes |
mybank, twint | 45 minutes |
bancontact, belfius, kbc, eps, przelewy24 | 1 hour |
vouchers | 2 hours |
klarna, in3 | 48 hours |
paypal | 6 hours |
banktransfer* | 12(+2) days |
(*) Payments made by bank transfer are done manually by your customer. Some days can pass before it becomes clear the payment has been paid. That’s why the payment method banktransfer will by default, not expire until 12 days have passed. One or two days can be added when the 12th day is a Saturday or Sunday.
It is not a good idea to predict payment expiry. Best wait until your webhook is called and fetch the status as usual. This is the most reliable way to keep your system in sync with Mollie, also in the case of expiring payments.
Redirect back to hosted checkout page after failed or canceled attempt
When you create a payment with a single method, your customer will be redirected to your website when the payment is canceled or failed. For all other cases, your customer will be redirected back to Mollie Checkout where they can try again. This also means that the payment will remain in the open state even if an earlier attempt was canceled or failed. This is default behaviour that can not be changed.
Updated about 20 hours ago