Place the olive oil and chopped onion in a large soup pot and turn the heat to medium. Cook the onion until it is soft and translucent. Next, add the carrot and celery. Stir to coat and cook for a minute or two. If using pancetta, add the diced pancetta now. Cook for 10 minutes, stirring occasionally as to make sure nothing is sticking to the bottom of the pan.
Next, add the chopped tomatoes with all of their juices and reduce the heat to just a simmer. Cook for 7-10 minutes. Add the beans and bay leaves and stir to combine. Pour in the chicken stock (you can also use vegetable or beef stock if you prefer) and bring the broth to a gentle boil. After the soup has cooked for about 10 minutes, scoop out 2/3 C of the beans and veggies and place in a small bowl.
With an immersion blender, blend the mixture until it has a smooth consistency. Then, pour it back in the soup. Taste and season with sea salt and black pepper. The soup should be liquid enough to cook the rice in. If not, add a little more stock. Then, add your arborio rice and cook until the rice is tender. Once the rice is cooked through, add the butter and Parmigiano Reggiano. Finish with a drizzle of good olive oil and some fresh parsley.