Heat the cooking oil in a pan or skillet over medium heat. Once the oil is hot, add the sliced onions and saute gently, stirring often, until they turn light golden brown.
Add the sliced green chilies along with the minced ginger and garlic. Saute for about 2 minutes, stirring gently, until the raw smell fades and the aroma becomes fragrant.
Now add the chicken liver and gizzard to the pan. Stir well and cook on medium heat for about 2 minutes. You will notice the meat starting to change color slightly, which is exactly what you want at this stage.
Add the chopped tomatoes, followed by the turmeric powder, cumin powder, black pepper powder, paprika, and salt to taste. There is no need to add water at this point because the tomatoes will release enough moisture to form the base of the curry.
Cover the pan with a lid and cook on low heat for about 20 minutes. Stir occasionally so nothing sticks to the bottom. Cook until the gizzards are tender and the oil starts to separate from the gravy.
If you prefer a thicker gravy, you can add some water at this stage. I usually add about 1/2 cup. Using hot water helps maintain the cooking temperature and saves time.
Once the curry reaches your desired consistency, turn off the heat. If you like, add ½ tablespoon garam masala powder. Garnish with fresh cilantro, parsley, or basil.
Serve hot with flatbread, rice, or any simple side you enjoy, and share it with family or friends.