// Remove ALL private/system notes BEFORE Lightspeed syncs add_filter('woocommerce_new_order_note_data', function($data) { // Kill WooPayments / fee / stock / system notes $blocked_keywords = [ 'Fee details', 'Base fee', 'Net payout', 'WooPayments', 'Stock levels reduced', 'payment was successfully charged', 'Payment via Card', 'Stock hold' ]; foreach ($blocked_keywords as $keyword) { if (stripos($data['comment_content'], $keyword) !== false) { return false; // STOP note from being created } } return $data; }, 1); // Add CLEAN delivery info note (what Lightspeed WILL import) add_action('woocommerce_checkout_update_order_meta', function($order_id) { $date = get_post_meta($order_id, '_delivery_date', true); $time = get_post_meta($order_id, '_time_slot', true); if ($date || $time) { $note = "DELIVERY INFO:\n"; if ($date) { $note .= "Date: " . $date . "\n"; } if ($time) { $note .= "Time: " . $time; } $order = wc_get_order($order_id); $order->add_order_note($note, false); // FALSE = customer-visible note (important!) } }, 5);