Soak the chickpeas overnight or for at least 4-6 hours. Tip the chickpeas into a large saucepan and pour in enough water. Bring to a boil and cook until chickpeas are soft but not too mushy. Check the doneness by pressing between fingers. Don't discard the water.
If using canned chickpeas, add the drained canned chickpeas in the pan and pour in water, cook until soft.
In a large pot heat the ghee and oil and add the onions and cook until golden (don’t brown the onions). Add the ginger and garlic paste and saute till fragrant.
Add all the spices except black pepper and cumin powder and mix well. Give a splash of water to mix it well.
Blitz the boiled potato and 1/4 cup chickpeas. set aside
Next, add the boiled chickpeas to the pot and mix well. Add the chickpea water, green cardamom, slit green chillies and chicken powder. Bring it to a boil, and lower the heat. Simmer for 15 mins.
Now add the potato and chickpea mix for a creamier, mushy texture. The gravy shouldn’t be too thick or too thin. If it's too thick, add boiled water for desired consistency.
Add the black pepper and cumin powder, mix and cook for another 5 minutes. Taste check and adjust seasoning if needed. Lastly add a pinch of baking soda, mix, cover and let simmer on low heat for 2-3 minutes.
Before serving add 2Tbsp of hot ghee/oil on the top, don’t mix. Take out in a serving bowl.
Serve with puri, naan or kulcha.