Soak the beans for 8-12 hours (overnight). Fill a bowl with enough water to cover the beans completely. Also, add a pinch of salt.
Drain the beans and rinse them with cold water.
Place the beans in a large pot and put enough fresh water just to cover them.
Bring to a boil, and lower to medium heat
Simmer the beans for about 30 minutes.
While the beans cook, prepare the vegetables and sauce. Finely chop the onion and the bullhorn pepper. Slice the carrots 2cm round and chop the celery sprigs.
Add the vegetables, half of the olive oil, tomato paste, tomato puree, oregano, black pepper, paprika powder, and red chilli flakes(if applicable) in the bean pot, and let it simmer over lower/medium heat for 60-90 minutes.
Towards the end of the cooking, add the rest of the olive oil, and salt.
When the beans are soft and the sauce is thick, the soup is ready.