Thinly slice the two large onions and place them into a bowl. Sprinkle 1 teaspoon of salt over the slices and toss well with your hands so every piece gets coated. Let the onions sit for 8–10 minutes to release moisture. After resting, squeeze the onions firmly using your hands, a clean kitchen towel, or a fine mesh strainer to remove as much excess liquid as possible. This step is essential for crispy bhajias.
In a separate mixing bowl, whisk together the almond flour, coconut flour, grated Parmesan, xanthan gum, ground coriander, cumin, a pinch of cayenne, and 1 teaspoon of salt. Make sure the spices and flours are evenly combined so every bhajia has consistent flavor.
Add the beaten egg to the dry mixture and stir until a coarse, crumbly batter forms. The mixture should clump together when pressed between your fingers. If it feels too dry or doesn’t stick to itself, add 1–2 teaspoons of water and mix again until it becomes tacky and holds together.
Add the squeezed onions and chopped cilantro into the batter. Use your hands or a spatula to fold the mixture gently, ensuring every onion strand gets a light, even coating. The mixture should feel sticky enough to hold small scoops together without falling apart.
Heat your oil in a deep skillet or frying pan to 350–360°F (175–183°C). To test the oil, drop in a tiny piece of batter—if it sizzles and rises slowly to the top, the oil is ready. Scoop small spoonfuls of the mixture and carefully slide them into the hot oil. Fry each bhajia for 3–4 minutes per side, flipping once, until they turn golden brown and crisp.
Remove the bhajias with a slotted spoon and place them on a paper towel–lined plate or cooling rack to drain excess oil and maintain their crunch.
Serve the keto onion bhajias hot with keto raita, lemon wedges, or your favorite sugar-free chutney. Enjoy the crispy, spiced goodness!