• Resolved fmh999

    (@fmh999)


    Hello,

    I have the plugin setup to authorize a payment and consequently put the new order On-Hold.

    When I eventually capture the payment in Stripe, the order status in WooCommerce remains On-Hold and does not automatically change to Processing.

    Ideally I would like for the order status to change to Processing from On-Hold.

    Is there a setting I need to change or how do I do that?

    Thank you!

Viewing 6 replies - 1 through 6 (of 6 total)
  • Plugin Author Payment Plugins

    (@mrclayton)

    Hi @fmh999

    The plugin is written to call the WC_Order::payment_complete function when the payment is captured. That function is provided by WooCommerce and it controls the order status updating to processing/completed.

    If the status isn’t updating when you capture the payment, it’s because something is preventing the status from transitioning. It wouldn’t be the Stripe plugin preventing that status transition.

    Check to see if there are any “fatal-error” logs in the WooCommerce > Status > Logs page that could be preventing that payment_complete process.

    Kind Regards,

    Thread Starter fmh999

    (@fmh999)

    I never experienced this issue when using other Stripe plugins, only while using this one and from what I see there are no fatal errors showing WC_Order.

    Furthermore all my web hooks look good so no problems there.

    Are there any other settings I need to change?

    Plugin Author Payment Plugins

    (@mrclayton)

    Furthermore all my web hooks look good so no problems there.

    Webhooks aren’t involved in the capture process so they wouldn’t be a factor.

    Here is the exact line of code where the WC_Order::payment_complete method is called after the order is captured.

    https://plugins.trac.www.ads-software.com/browser/woo-stripe-payment/tags/3.3.24/includes/abstract/abstract-wc-payment-gateway-stripe.php#L601

    That method is what controls the order status. There are filters in that method that something could be hooked in to that are affecting that order status.

    Are there any other settings I need to change?

    No, there are no settings related to that.

    I just performed a test on our development server and it worked as expected. The order’s status was updated to “Processing” once the payment was captured.

    Thread Starter fmh999

    (@fmh999)

    Hi there,

    The order status is still not changing after the payment is captured. ??

    I do not see any fatal errors with this plugin or with WooCommerce with new orders coming in and I am using the latest version of this plugin.

    Even when the payment is captured manually, the order note does not update that the payment has been captured and still says authorized.

    Other than this issue everything is flawless.

    Plugin Author Payment Plugins

    (@mrclayton)

    @fmh999 If you have a staging site, I’d recommend testing with a basic setup of WooCommerce and the Stripe plugin. The most likely cause is something conflicting in your setup, whether that be a custom code snippet, or some 3rd party plugin.

    If this was a plugin issue, there would be many reports of the order status not properly updating and the order notes not being added to the order when an authorized payment is captured.

    Check your stripe.com logs as well and see if there is anything indicating the capture request is not completing.

    Kind Regards,

    Thread Starter fmh999

    (@fmh999)

    The payment is captured through stripe.com and that works perfectly. The connection with Stripe, webhooks, etc is working perfectly too.

    However the status is not changing as it should. I do not have any custom snippets and this was working with the other stripe plugin I had (yet your plugin is overall way better, the 3D secure is perfection).

    I will try your suggestion and report back.

Viewing 6 replies - 1 through 6 (of 6 total)
  • The topic ‘Order status not changing when capturing payment’ is closed to new replies.