Prepare the Vegetables: Roughly chop all the vegetables. Deseed and chop the bell pepper. Finely chop the onion, garlic, ginger, and fresh chilli (remove seeds if you prefer less heat).
Boil the Vegetables: In a large saucepan, add approximately 1.5 litres of water, 1 tbsp garam masala, and 1 tbsp salt. Bring to a boil over high heat. Add the chopped cauliflower, bell pepper, carrots, peas, and potato. Reduce the heat to medium and simmer, stirring occasionally, for about 10 minutes until the vegetables are very tender. Drain and set aside. Alternatively, you can steam the vegetables. This recipe is a great way to use leftover cooked vegetables.
Cook the Base: Heat 2 tbsp oil in a wide non-stick pan over high heat. Add the onion, garlic, ginger, cumin seeds, and a pinch of salt. Reduce the heat to medium and cook, stirring occasionally, until the onion becomes translucent (about 5–7 minutes). Stir in the chopped tomatoes, fresh chilli, and 100ml water. Cook, stirring occasionally, for another 3 minutes.
Add the Spices: Stir in the tomato paste, red chilli powder, turmeric, the remaining 1 tbsp garam masala, and salt. Cook, stirring constantly, for about 1 minute until the mixture thickens into a chunky tomato sauce consistency.
Mash the Bhaji: Remove from heat and add the drained vegetable mixture to the pan. Mash everything together using a potato masher until well combined. Put the pan back on the heat and simmer for a few more minutes, stirring occasionally.
Toast the Bread Rolls: While the bhaji is simmering, heat a separate pan over medium heat. Slice your vegan bread rolls in half, brush with a little oil, and toast each side until golden brown.
Serve: Serve the bhaji with the toasted rolls. Garnish with finely diced red onion, lime or lemon wedges, and freshly chopped coriander.