Heat the oil in a large skillet over medium heat until it shimmers and begins to gently crackle. Add the diced onion and sauté for about 5 minutes, until translucent and fragrant, with a slight golden hue.
Add the minced garlic and grated ginger to the skillet. Cook for 1 minute, stirring constantly, until the mixture becomes fragrant and slightly bubbly.
Stir in the ground cumin, turmeric, and chili powder (if using). Cook for 30 seconds, allowing the spices to toast and release their warm aroma.
Add the drained chickpeas and crushed tomatoes. Stir everything together, coating the chickpeas evenly with the spices and tomato juice. Bring the mixture to a gentle simmer and cook for about 10 minutes, until the sauce thickens slightly and deepens in color.
Pour in the coconut milk, stirring well to incorporate. Reduce the heat slightly and let the curry simmer gently for another 10 minutes, until it becomes creamy and fragrant. The sauce should coat the chickpeas smoothly.
Season with salt to taste, stirring to distribute evenly. If desired, squeeze in a splash of lemon juice for brightness and sprinkle chopped cilantro over the top for a fresh, herbal finish.
Remove the pan from heat and let the curry rest for 5 minutes to allow flavors to meld. Serve hot over rice or with crusty bread, garnished with additional cilantro if you like.