Skip to content

Common issues

Ales Fizesan edited this page Feb 21, 2022 · 26 revisions

Communicating with Mollie failed, Failed to connect to api.mollie.com

Please check the following conditions. You can ask your webhoster/system administrator to help with this.

  • Please check if you've inserted your API key's correctly, find them at Developers.
  • Make sure outside connections to https://api.mollie.com are not blocked, for example in a site or server firewall.
  • Make sure SSL v3 is disabled on your server, Mollie does not support it anymore.
  • Make sure your server is up-to-date and the latest security patches have been installed.
  • Contact your hoster, this might be a server configuration issue. You can send the below explanation.

A hoster might try to connect to api.mollie.com via the terminal, but that doesn't for 100% mean that the website can connect to api.mollie.com too. There is a difference between a curl request via PHP and a curl request via the terminal. The request via PHP might encounter a firewall that the request via the terminal does not.

The hoster needs to double-check that a curl request via PHP to port 443 on api.mollie.com works. Lot's of discussions online points to this being a server configuration issue.

Please contact [email protected] if this still does not fix your problem.

Don't show all credit card icons in checkout

The icons in checkout are of the format SVG. That means that they can be edited via CSS. To remove, for example, the last icon, use this CSS:

.payment_method_mollie_wc_gateway_creditcard img { clip-path: inset(0 27px 0 0); margin-right: -30px; }

Issues with Polylang or other multilanguage plugins

To use Polylang with WooCommerce and Mollie Payments for WooCommerce, it is required to also have Polylang for WooCommerce. If you are using another multilanguage plugin (such as WPML), we also strongly recommend also getting the (often commercial) version that explicitly supports WooCommerce.

These "upgrades" make important changes to allow a better integration of multilanguage plugins with WooCommerce, and your site might break without them. We have seen this multiple times.

How are payments processed

There seems to be some confusion about how payments should be processed in WooCommerce. This FAQ describes how the Mollie plugin for WooCommerce does this.

First, you should note that the plugin tries to log as much information as possible in the WooCommerce order notes for the individual order (WooCommerce, Orders, Edit order) and in the WooCommerce logs at WooCommerce > System status > Logs > mollie-payments-for-woocommerce. So, always view those if you aren't sure what's happening for a certain order or payment.

A failed or cancelled payment does not cancel the whole order immediately, because customers can try to place a new payment with another payment method (this is default WooCommerce functionality). The plugin will add a message about a cancelled payment to the WooCommerce order notes. An order will be cancelled automatically later if there is no new payment with a paid status.

Please note that failed, expired and cancelled payments are handled in the same way (as cancelled orders) by the plugin. So all payments with those statuses translate to a cancelled payment in WooCommerce, as that's the right WooCommerce status for that situation. 

It is possible that on returning to the shop from a cancelled payment, users see a message "Order complete - Thank you. Your order has been received". This might be confusing to some users, but it is correct the order was received, but not the payment. If you find the text "Order Complete - Thank you. Your order has been received. " confusing I suggest you change it.

In the case of open payments, the Mollie plugin already changes the title of the order received page to "Bestelling ontvangen, in afwachting van betaling.".

This video shows how payments can be cancelled, but the order remains "pending" so a new payment can be started immediately after the user returns to the store or from the WooCommerce Account page.

Also, for cancelled payments, review your settings at WooCommerce > Settings > Payments > Mollie > Order status after cancelled payment.

Issues on staging/test sites

There have been multiple people with issues when they copy their site to a staging or test location.

  • WooCommerce Subscriptions: all payments are on Manual Renewal, see this FAQ
  • Statuses after payment not updated because production site is set to https, staging site is not, and https>http redirect "blocks" the Mollie Webhook communication. Solution: disable https on staging site.
  • Mollie payments don't work on a localhost installation because the Webhook URL is not accepted by the Mollie API

Status not updated on GoDaddy servers

If you are on a GoDaddy server and the payment status is not updated:

  • enable WP Debug
  • Place a new order
  • Wait 5 minutes and check the debug log

Search for errors like this in the debug log:

  • Fatal error: Call to undefined method APCu_Object_Cache::incr2()
  • Fatal error: Call to undefined method Redis_Object_Cache::incr2()

If you see those errors, you are experiencing a known issue n GoDaddy servers. To fix this (via FTP) go to /wp-content/object-cache.php and rename that to /wp-content/object-cache-old.php. Also let GoDaddy know you are experiencing this issue and refer to the below link.

Source

Cancelling payments with WooCommerce Germanized

The plugin "WooCommerce Germanized" has a setting "Avoid changing the payment method after ordering by the customer" in WooCommerce > Settings > Germanized > General. This makes it impossible for users to select a new payment method after cancelling the payment. Disable that if you do want customers to be able to select another payment method.

https://monosnap.com/file/peCQDhm9Fz4bFBGg5nbKFomS9ppwf1.png

No status updates - WP-SpamShield

According to the developer of WP-SpamShield, the plugin should not block communications from Mollie. Unfortunately we have seen that this happens anyway. There are two ways in which you can "fix" this. The first solution will keep the WP-SpamShield anti-spam protection in place on your site except for communication from Mollie, the second will disable WP-SpamShield for all forms except WP-SpamShield, CF7 and GravityForms.

  • Add the Mollie's IPs to the WP-SpamShield Whitelist (Settings > WP-SpamShield > General settings).
  • Uncheck "Disable anti-spam for miscellaneous forms" in Settings > WP-SpamShield > General settings. This is what WP-SpamShield advices themselves.
Clone this wiki locally