Put two tablespoons of the oil in a large pot over low-medium heat.
Sautee the onion, carrot, and celery for approximately 5-8 minutes, stirring often. It is ready when it is softened and very aromatic & smells sweet. Add the garlic. Stir for 30 seconds and be mindful not to burn. Season with salt and pepper.
Heat the oven to 200ºC.
If using tinned beans, drain and rinse very well. Add them to the pot along with tomatoes and their juices and stock, rosemary and thyme. Bring to a boil, then reduce heat so the soup bubbles steadily. Cook, stirring once or twice to break up the tomatoes, until the flavours are wonderfully combined, 15 to 20 minutes.
Discard the rosemary and thyme stems and add the kale. Taste and adjust seasoning. Lay bread slices on top of the soup so they cover the top and overlap as little as possible. Scatter red onion slices over the top, drizzle with the remaining three tablespoons of oil and sprinkle with Parmesan.
Put the pot in the oven and bake until the bread, onions and cheese are browned, which will be approx. 10 to 15 minutes.
Divide the soup and bread among four bowls and serve.