Heat vegetable oil in a large pot over medium heat. Add the chopped onion and garlic. Sauté until the onion is translucent.
Add the beef cubes to the pot and cook until they are browned on all sides.
Stir in the ground cumin, ground coriander, paprika, turmeric, black pepper, and salt. Cook for a few minutes until the spices are fragrant.
Add the chopped tomatoes to the pot. Stir and cook for about 5 minutes, allowing the tomatoes to break down and release their juices.
Pour in the beef or chicken broth and water. Stir well. Bring the mixture to a boil, then reduce the heat to low and cover the pot. Let it simmer for about 1-1.5 hours, or until the beef is tender.
Adjust seasoning if necessary. Garnish with chopped fresh cilantro or parsley before serving.
Enjoy your meal!