Make the order status completed after booking

Continuing the discussion from Package order gets processing status:
Hi I have the same problem and I already made it Virtual and it is still processing

Actually, I found the problem. Because the payment was with cash upon arrival, and WooCommerce is set that if you don’t pay right away, it remains “processing”.

I’m wondering when it’s set with direct payment, and the rest of the money you pay upon arrival to the apartment, is it possible to make it be “confirmed” and not “processing” right after one makes the direct payment? It shouldn’t be “processing” until the booking date arrives?

Please share more details about the issue, I guess I misunderstood the topic - is it related to Paid Listings or Marketplace? If you mean Marketplace & Bookings, orders get Completed status only if there’s a Processing status and today’s date is past the booking end date.

I mean MarketPlace and Bookings.
Is it possible to make it completed status right after the payment and it shouldn’t be processing until the booking end date?
Basically is it possible to make it complete it right after the payment?


Please try this PHP snippet:

	function( $status ) {
		return 'completed';

But please note that after using this snippet, vendors can make payouts before starting booking (there may be a risk of fraud).


Thanks for the snippet. It works and it makes the order completed right after payment. (see the screenshot below.)

But as you can see on this screenshot, when you go to the WooCommerce orders page, it’s still processing.

Is there any solution for this?

The booking status is changed to Confirmed even if the linked order is Processing (both Processing and Completed order statuses mean that its paid). Please make sure that you added the above snippet correctly and that the payment gateway you’re using is set up correctly (it should notify your site via the API about successful payments, then orders will get Completed status with the above snippet).

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.