Add olive oil to a large pot over medium heat. Once oil is hot, add the bacon and cook until crispy, about 5 minutes.
Add the chorizo to the pot and cook until it’s well browned, about 5 minutes. Remove the meat from the pot and set aside.
Add diced onion to the empty pot and cook until softened. This should take about 5 minutes.
Add garlic, cooking for about 30 seconds more.
Stir in the crispy bacon and chorizo.
While stirring, add the cumin, chili powder, oregano, salt, and bay leaves. Cook for 1 minute, until the mixture becomes fragrant.
Add the tomatoes, broth, and pinto beans to the pot, bringing the mixture to a boil. Once boiling, reduce the heat and cover the pot with a lid. Simmer the beans for 25-30 minutes or until the beans are tender.
If needed, add hot water by the half cup until the desired consistency is reached and beans are tender.
Remove bay leaves.
Serve hot. We like it topped with chopped fresh cilantro.