fetchAll( "SELECT product_id, name, price, sale_price, stock, images, category, barcode, sku FROM products WHERE is_active = 1 ORDER BY category, name" ); // Group products by category $productsByCategory = []; foreach ($products as $product) { $cat = $product['category'] ?? 'Other'; if (!isset($productsByCategory[$cat])) { $productsByCategory[$cat] = []; } $product['images'] = json_decode($product['images'] ?? '[]', true); $product['display_price'] = $product['sale_price'] ?? $product['price']; $productsByCategory[$cat][] = $product; } // Get held orders $heldOrders = $_SESSION['pos_held_orders'] ?? []; // Get tax rate from settings $taxRate = getSetting('tax_rate', 0) / 100; ?>

No products available

Add Products
0 && $product['stock'] <= 5; ?>

Current Sale

Add products to start a sale

Subtotal $0.00
Tax (%) $0.00
Total $0.00