In a large wok or saucepan, heat the oil over medium heat. When a drop of water sizzles upon hitting the pan, reduce the heat to medium-low and add the cumin seeds. Stir and toast the seeds for a minute or two until golden and fragrant, watching carefully to avoid burning.
Raise the heat to medium and stir in the onion, garlic, ginger, and serrano. Cook for a few minutes or so, then stir in the garam masala, coriander, turmeric, salt, and cayenne (if using), and cook for 2 minutes more.
Add the whole peeled tomatoes and their juices and break them apart with a wooden spoon (skip if using diced tomatoes). You can leave some chunks of tomato for texture.
Raise the heat to medium-high and add the chickpeas. Bring the mixture to a simmer and cook for 10 minutes or longer to allow the flavors to develop.
Serve over cooked basmati rice, if desired, and garnish with a squeeze of fresh lemon juice and some chopped cilantro just before serving.