To make the meatballs, spray a non-stick frying pan with cooking spray and place over medium heat.
Cook the chopped onion for 2-3 minutes until softened. Set aside to cool.
Place the beef mince, cooled onion, and parsley in a bowl and season well.
Mix well and shape into 24 meatballs, about 2"/4cm.
Spray the frying pan again with cooking spray and place over medium heat.
Cook the meatballs for 6-8 minutes or until browned all over. Remove from the pan and set aside.
To make the soup, place the cannellini beans and 250ml of stock into a food processor and blitz until smooth. Set aside.
Spray a large, lidded saucepan with cooking spray and place over medium heat.
Add the onion, garlic, chili, and carrot, and cook for 4-5 minutes.
Cover, reduce the heat to low, and cook for a further 5 minutes.
Add the tomato purée, cannellini bean purée, and the remaining stock.
Bring to a simmer and cook for 10 minutes.
Stir in the pasta and cook for 8-10 minutes or until the pasta is tender.
Add the meatballs and cook for 2-3 minutes to heat them through.
Divide soup between 4 warmed bowls and top with freshly ground black pepper, torn basil leaves, and half a tablespoon of Parmesan per person.