Heat the olive oil in a Dutch oven or large pot over medium-high heat.
Add the chopped yellow onion and sauté, stirring occasionally, until the onion begins turning slightly translucent, about 5-6 minutes.
Stir in the minced garlic and chicken. Brown the chicken for a few minutes.
Stir in the dried oregano, dried parsley, sea salt, black pepper, and red pepper flakes.
Pour in the drained sun-dried tomatoes, full-fat canned coconut milk, chicken broth, cannellini beans, and tomato paste and stir well. Cover the pot and bring the soup to a full boil. Once boiling, reduce the heat to medium-low and simmer for 15 minutes. If you have more time, simmer the soup for up to 1 hour over low heat.
Add the baby spinach to the pot and replace the cover. Cook for 3 to 5 minutes, or until the spinach has wilted.
Taste the soup for flavor and add sea salt, black pepper, and lemon zest to taste.
Garnish with fresh basil, serve, and enjoy!