Custom Order Status in WooCommerce — a practical guide to WooCommerce custom order status with clear examples you can reuse in real projects.
WooCommerce Plugin Development Series (32/101). Prefer one article? Read the complete WooCommerce plugin development tutorial.
Short description
Register the status and optionally include it in reports/admin order actions.
Register status
add_action('init', function () {
register_post_status('wc-awaiting-shipment', [
'label' => 'Awaiting shipment',
'public' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop('Awaiting shipment (%s)', 'Awaiting shipment (%s)'),
]);
});