Heat the olive oil in a large pot over medium heat.
When the oil is hot, but not smoking, add the onions, carrots, and celery. Cook for 3–4 minutes, stirring frequently.
Add the garlic, tomato paste, salt, dried oregano, cumin, and black pepper. Cook for 1 minute, stirring often.
Add the pork shanks, chicken broth, and water. Stir well while gently scraping any bits off the bottom of the pot.
Raise the heat to high and bring the soup to a boil, about 5–6 minutes. Once boiling, reduce the heat to medium-low, cover, and simmer for 30 minutes. Stir occasionally and adjust the heat as needed to maintain a simmer.
Remove the pork shanks from the pot and set them on a cutting board to cool slightly.
Add the chickpeas to the pot. Raise the heat and bring the soup back to a simmer. Then reduce the heat to medium-low, cover, and continue simmering while you prepare the pork.
Once the pork is cool enough to handle, remove the meat from the bone. Discard the bone and any fatty pieces, then chop the meat into small pieces and return it to the soup.
Cover and cook for 15–20 minutes, stirring occasionally. Maintain a simmer and adjust the heat if necessary.
Add the potatoes, cover, and continue cooking for 30–35 minutes, or until the potatoes are tender and the chickpeas are soft and creamy in the center. Stir occasionally and keep at a simmer.
Taste and adjust the salt if needed. As a reference, we did not add extra salt to ours.
Serve hot, garnished with chopped parsley if desired. This soup goes well with white rice or a crusty piece of bread for dipping.