woocommerce_valid_order_statuses_for_payment filter-hookWC 1.0

Checks if an order needs payment, based on status and order total.

Usage

add_filter( 'woocommerce_valid_order_statuses_for_payment', 'wp_kama_woocommerce_valid_order_statuses_for_payment_filter', 10, 2 );

/**
 * Function for `woocommerce_valid_order_statuses_for_payment` filter-hook.
 * 
 * @param  $array 
 * @param  $that  
 *
 * @return 
 */
function wp_kama_woocommerce_valid_order_statuses_for_payment_filter( $array, $that ){

	// filter...
	return $array;
}
$array
-
$that
-

Where the hook is called

WC_Order::needs_payment()
woocommerce_valid_order_statuses_for_payment
WC_Order::status_transition()
woocommerce_valid_order_statuses_for_payment
woocommerce/includes/class-wc-order.php 1724
$valid_order_statuses = apply_filters( 'woocommerce_valid_order_statuses_for_payment', array( 'pending', 'failed' ), $this );
woocommerce/includes/class-wc-order.php 425
in_array( $status_transition['from'], apply_filters( 'woocommerce_valid_order_statuses_for_payment', array( 'pending', 'failed' ), $this ), true )

Where the hook is used in WooCommerce

woocommerce/src/Blocks/Domain/Services/DraftOrders.php 43
add_filter( 'woocommerce_valid_order_statuses_for_payment', [ $this, 'append_draft_order_post_status' ] );