Available for projects & agency overflow · Quick reply, from the person who does the work

A payment method disappears from the checkout after a PrestaShop update

A payment module that worked perfectly can stop showing to customers after a PrestaShop update, with no error appearing anywhere in the back office. Three causes come up again and again: a hook the module no longer uses since PrestaShop 1.7, country, currency or customer group restrictions that have reset, or a module automatically disabled because it’s flagged incompatible with the newly installed version.

Describe my issue Send a message

The hook changed with version 1.7

Before PrestaShop 1.7, payment modules displayed their buttons through the displayPayment hook. From 1.7 onwards, this was replaced by the paymentOptions hook, which works differently: the module has to return payment option objects rather than raw HTML displayed directly.

A module still built for the old hook can install without any error after an upgrade: PrestaShop doesn’t flag an unused hook, it simply ignores it. The module stays visible in Modules and services, active and configured, but nothing shows up in the checkout any more. This is the most common cause of a payment method vanishing after moving to 1.7 or later.

Country, currency and customer group restrictions

Every payment module has its own settings screen, with restrictions by country, currency and customer group. These let you, for example, only offer a payment method to French customers paying in euros.

After the module itself is updated, these settings can reset or fall out of sync: a country that was ticked becomes unticked, or an allowed currency range goes empty. The module stays active, but no longer matches any live order, so it never appears to the customer. This is worth checking before looking any further.

How I check, in order

  1. Is the module still active?

    I check in Modules and services that it hasn’t been automatically disabled after the update, and that it isn’t flagged as incompatible.

  2. Is the expected hook still registered?

    I check whether the module is still hooked to paymentOptions (or the older displayPayment for versions before 1.7), and whether it responds correctly to that call.

  3. Are the module’s restrictions correct?

    Allowed countries, currencies and customer groups: I check none of these lists has emptied out or wrongly excludes the order being tested.

  4. Is the module itself up to date?

    If it stays incompatible despite these checks, the update needs to come from its publisher, or the module needs adapting to the new payment mechanism.

Related pages

Describe your need in one minute

A few targeted questions so I can reply with an estimate rather than another questionnaire.

passerelle
etape
commandes
changement (facultatif)
message (facultatif)
Please provide an email or a phone number so I can get back to you.

Please provide an email or a phone number so I can get back to you.

Frequently asked questions

The module has stopped showing but I see no error: is that normal?
Yes, that’s the most common pattern. PrestaShop doesn’t raise an error when a module uses a hook the checkout no longer calls: the module stays active in appearance, but no customer ever sees it.
Do I need to reinstall the module from scratch?
Rarely. In most cases, reconfiguring the restrictions or re-enabling the module is enough. A full reinstall is only needed if the existing configuration is corrupted.
The module comes from a third-party publisher, do I have to wait for their update?
If it still uses the old displayPayment hook on a shop now running 1.7 or later, yes: only the publisher can release a compatible version, unless the module is rewritten as custom development.
How do I know if it’s a hook problem or a restriction problem?
If the module doesn’t appear for any customer, regardless of their order, it’s almost always the hook. If it only fails for certain profiles or countries, check the restrictions first.
Should I expect this to happen again with every new PrestaShop version?
Not necessarily, but every major version upgrade is worth rechecking payment modules against before going live, especially any that haven’t been updated in a while.