In a medium bowl, combine the beef, onion, garlic, ginger, cumin, coriander and salt to make the meatball mixture. Shape into 1 1/2-inch balls.
Set a shallow pot over medium-high heat, add a drizzle of oil and sauté the onion for a few minutes, until soft.
Add the garlic and ginger and cook for another minute. Add the chili powder, cumin, garam masala and turmeric and cook for another minute.
Stir in the tomatoes, about half a can full of water, and cream and bring to a simmer.
Gently drop the meatballs into the sauce, cover and cook for 10-15 minutes, or until the meatballs are cooked through.
Remove the lid and simmer until the sauce thickens slightly.
Serve with steamed rice or naan.