mollie / WooCommerce

Official Mollie extension for WooCommerce
https://wordpress.org/plugins/mollie-payments-for-woocommerce/
Other
130 stars 53 forks source link

Incorrect order "Completed" status after payment #703

Closed Grezvany13 closed 2 years ago

Grezvany13 commented 2 years ago

WP Version: 6.0.1 WC Version: 6.7.0 Mollie Payments for WooCommerce: by Mollie – 7.3.0

After a client completes the order through Mollie, the order status gets updates correctly to "Pending", but a couple of minutes later it gets updates to "Shipped" and therefor is set to completed by Woocommerce.

However the order is not shipped yet and most certainly not complete. Completion is handled by an external CRM, however since the order is already set to Complete it never reaches the CRM (which pulls orders after payment, but before completion).

mollie-issue

The issue seems to be caused by the shipAndCaptureOrderAtMollie method, which should never be called. https://github.com/mollie/WooCommerce/blob/0ec01f2001f8fd80aae1e960c53155ffda96e915/src/Payment/PaymentModule.php#L374-L378

Adding add_option('mollie-payments-for-woocommerce_disableShipOrderAtMollie', '1'); doesn't seem to prevent this from happening. And since the message clearly states that Mollie changes the status of the order to "Shipped" it seems very unlikely that another plugin causes the issue. During our testing (before June 1st) with live payments we didn't see this issue and all orders were handled correctly. After that we see all orders being completed automatically due to Mollie updating the orders to shipped.

All products are physical products (simple or variable, non are downloads or virtual). And the issue occurs to all payments through Mollie, independent of the provider used.

Is this a bug, or is a(nother) setting which we're missing?

Status Report

WordPress Environment

WordPress address (URL): https:// Site address (URL): https:// WC Version: 6.7.0 REST API Version: ✔ 6.7.0 WC Blocks Version: ✔ 7.8.3 Action Scheduler Version: ✔ 3.4.0 Log Directory Writable: ✔ WP Version: 6.0.1 WP Multisite: – WP Memory Limit: 256 MB WP Debug Mode: – WP Cron: ✔ Language: nl_NL External object cache: –

Server Environment

Server Info: Apache/2.4.25 (Debian) PHP Version: 7.4.30 PHP Post Max Size: 100 MB PHP Time Limit: 300 PHP Max Input Vars: 10000 cURL Version: 7.52.1 OpenSSL/1.0.2u

SUHOSIN Installed: – MySQL Version: 5.5.5-10.1.48-MariaDB-1~stretch Max Upload Size: 100 MB Default Timezone is UTC: ✔ fsockopen/cURL: ✔ SoapClient: ✔ DOMDocument: ✔ GZip: ✔ Multibyte String: ✔ Remote Post: ✔ Remote Get: ❌ wp_remote_get() failed. Contact your hosting provider. 503

Database

WC Database Version: 6.7.0 WC Database Prefix: **** Total Database Size: 200.37MB Database Data Size: 145.80MB Database Index Size: 54.57MB

Security

Secure connection (HTTPS): ✔ Hide errors from visitors: ✔

Active Plugins (27)

Stackable - Gutenberg Blocks (Premium): by Gambit Technologies Inc – 3.4.2

Advanced Custom Fields PRO: by Elliot Condon – 5.9.5 Advanced Product Search For WooCommerce: by aThemeArt – 1.1.1 Custom Post Type UI: by WebDevStudios – 1.12.1 GTM4WP: by Thomas Geiger – 1.16.1 Filter Everything — WooCoomerce Product & WordPress Filter: by Andrii Stepasiuk – 1.6.8 Free Gifts for WooCommerce: by FantasticPlugins – 8.7 WP All Import - Rank Math SEO Add-On: by WP All Import – 1.1 Cookie and Consent Solution for the GDPR & ePrivacy: by iubenda – 3.2.0 WooCommerce Load More Products: by BeRocket – 1.1.9.5 Loco Translate: by Tim Whitlock – 2.6.2 Mollie Payments for WooCommerce: by Mollie – 7.3.0 Sendcloud | Smart Shipping Service: by Sendcloud B.V. – 2.2.5 Rank Math SEO PRO: by Rank Math – 3.0.18.1 Rank Math SEO: by Rank Math – 1.0.95.1 Simple Sitemap: by David Gwyer – 3.5.7 TI WooCommerce Wishlist: by TemplateInvaders – 1.47.0 WooCommerce NL Postcode Checker: by WP Overnight – 2.8.4 WooCommerce Back In Stock Notifications: by WooCommerce – 1.3.2 WooCommerce Brands: by WooCommerce – 1.6.29 (update to version 1.6.35 is available) WooCommerce Google Product Feed: by Ademti Software Ltd. – 10.7.3 (update to version 10.7.4 is available) WooCommerce: by Automattic – 6.7.0 (update to version 6.8.2 is available) WooThumbs for WooCommerce by Iconic: by Iconic – 4.12.0 WP All Import Pro: by Soflyy – 4.7.2 WP Rocket: by WP Media – 3.11.5 WP Sync DB: by Sean Lang – 1.5 WPForms: by WPForms – 1.7.5.5

Dropin Plugins (1)

advanced-cache.php: advanced-cache.php

Settings

API Enabled: ✔ Force SSL: – Currency: EUR (€) Currency Position: left_space Thousand Separator: . Decimal Separator: , Number of Decimals: 2 Taxonomies: Product Types: external (external) grouped (grouped) simple (simple) variable (variable)

Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog) exclude-from-search (exclude-from-search) featured (featured) outofstock (outofstock) rated-1 (rated-1) rated-2 (rated-2) rated-3 (rated-3) rated-4 (rated-4) rated-5 (rated-5)

Connected to WooCommerce.com: ✔ Enforce Approved Product Download Directories: –

WC Pages

Shop base: #68 - / Cart: #7 - /winkelmand/ Checkout: #8 - /afrekenen/ My account: #9 - /mijn-account/ Terms and conditions: #133 - /algemene-voowaarden/

Theme

Name: bootScore Child Version: 5.1.3.1 Author URL: https://bootscore.me Child Theme: ✔ Parent Theme Name: bootScore Parent Theme Version: 5.1.3.1 Parent Theme Author URL: https://bootscore.me WooCommerce Support: ✔

Back In Stock

Database Version: 1.3.2 Loopback Test: ✔

Daily Cron: ✔ Next scheduled: 2022-08-25 03:57:58 +02:00 Options: ✔ Notes: 73 Onboarding: completed

Status report information

Generated at: 2022-08-24 15:37:03 +02:00

InpsydeNiklas commented 2 years ago

And since the message clearly states that Mollie changes the status of the order to "Shipped" it seems very unlikely that another plugin causes the issue.

shipAndCaptureOrderAtMollie is only called after the WooCommerce order is set to the status Completed. So it's more likely there is an external factor setting the order status to Completed which then triggers it. When in doubt, please reach out to the support from here: https://mollie.inpsyde.com/docs/request-support/ Thanks!