Rinse 1.5 cups rajma (kidney beans) 2–3 times and soak in double the water for 8 hours or overnight. Soaking beans improves digestion and reduces cooking time.
Drain and transfer soaked rajma to a pressure cooker. Add 3 cups water, 2 bay leaves, 1 black cardamom, 1 cinnamon stick, and 0.5 tsp salt. Pressure cook rajma for 6–7 whistles until soft and mashable.
Open the cooker, remove whole spices, and set cooked rajma aside.
Heat oil in a pan, add 1 tsp cumin seeds, and let splutter. Add 4–5 chopped onions and sauté until golden brown to make the onion base for rajma masala.
Add 1 tbsp ginger-garlic paste and sauté until aromatic.
Add 1 tsp turmeric, 1 tsp cumin powder, 2 tsp coriander powder, and 2 tsp Kashmiri red chili powder. Stir and cook until oil separates to form the masala gravy.
Add 2 pureed tomatoes or 0.5 cup tomato puree. Cook for 5 minutes. Add boiled rajma with its water, adjust consistency, and add 1 tsp garam masala and salt. Simmer for 10–12 minutes for rich rajma curry.
Garnish with chopped green chilies and coriander leaves. Mix gently, rest for 2 minutes, and serve hot with steamed rice, jeera rice, or roti.