Heat coconut oil in a deep pot over medium-high heat.
Add diced onion and tomatoes. Season with salt and pepper, stir, then reduce heat to medium and cook for about 10 minutes until onions soften and tomatoes release their juices.
Add chickpeas and sweet potatoes, stirring to combine.
Add garlic, garam masala, curry powder, paprika, and cumin. Stir for about 30 seconds until fragrant.
Pour in coconut milk and stir well. Bring to a gentle boil, then reduce to medium-low.
Simmer uncovered for 20–30 minutes, until sweet potatoes are fork-tender.
Stir in spinach and squeeze fresh lime juice over the curry. Remove from heat and taste, adjusting seasoning if needed.
Let rest a few minutes before serving.