Make the meatballs mixture by thoroughly mixing all the ingredients together. Take your time and mix for at least 5 minutes.
Let rest at room temperature for 30-60mins.
Give it another mix and form meatballs about 4cm in diameter.
Add 3-4 tbsp of flour to a large plate. Drench the meatballs and shake off excess flour.
Heat 2 tbsp olive oil to medium. Fry the meatballs in batches for 5-7 minutes, turning around to seal from all sides. Transfer to a cutting board or a large plate.
Deglaze the frying pan with chicken stock. Scrape off the brown bits from the sides of the pan and stir them in.
Add strained tomatoes, garlic and onion powder and optional spices, if using. Taste and adjust for salt.
Pop in the meatballs and cook over low heat for 5-7 minutes. Stir in fresh basil leaves for the last minute of cooking.
Generously sprinkle with grated parmesan and serve over pasta or rice.