Auto-Complete Bank Transfer Orders

Automatically sets new bank transfer (bacs) orders to 'Completed' status upon checkout.

PHP
/**
 * Snippet Name:     Auto-Complete Bank Transfer Orders
 * Snippet Author:   coding-bunny.com
 * Description:      Automatically sets new bank transfer (bacs) orders to 'Completed' status upon checkout.
 */

add_action( 'woocommerce_checkout_order_processed', function( $order_id, $posted_data, $order ) {
    if ( ! $order ) {
        $order = wc_get_order( $order_id );
    }
    if ( $order && $order->get_payment_method() === 'bacs' ) {
        $order->update_status( 'completed', 'Order automatically set to Completed upon creation (payment: Bank Transfer).' );
    }
}, 10, 3 );

How To Implement This Solution?

Leave a Reply